Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Alle paar Sekunden "No Disc"
#24
So hier sehen wir jetzt glaube ich auch die Antworten vom CD Wechsler, oder?
[Bild: grafik.png]

Soweit ich das verstehe, müsste 68 03 18 01 72 die Anfrage vom Radio an den CD Wechsler sein und 18 04 FF 02 00 E1 die Antwort vom CD Wechsler, oder?

Update:
Habe es zusammen mit einem etwas erfahreren Python-Programmierer hingekriegt. Auf jeden Fall halt ohne Ibus-Communicator sondern nur mit deinem Test Tool, welches wir etwas abgeändert haben.
Änderungen beginnen bei Zeile 371.

Hauptsächlich antworte ich nur wenn das Radio "68 03 18 01 72" schickt mit "18 04 FF 02 00 E1"
Bei der Anfrage "68 05 18 38 00 00 4D" mit "18 0A 68 39 00 02 00 01 00 01 01 40"
Bei der Anfrage "68 05 18 38 03 00 4E" mit "18 0A 68 39 02 09 00 01 00 01 01 49"

damit ist dann die Emulation fast  (Zeitweise fragt das Radio zwischendrin "68 05 18 38 00 00 4D" und ich antworte derzeit noch mit einem STOP code vom Wechsler und danach sofort mit PLAY, sprich 0.5s Ton weg.) stabil.

Hier noch mal schnell die Änderungen:

Code:
if __name__  == "__main__":
   connection = IBusFace()

   def read_input_data(src, packet_length, dst, data, xor):
        full_packet = bytearray([src, packet_length, dst]) + bytearray(data) + bytearray([xor])
        print(" ".join([hex(value) for value in full_packet]))
        if full_packet == bytearray([0x68, 0x05, 0x18, 0x38, 0x00, 0x00, 0x4D]):
            log("!!! Writing response to 68 05 18 38 00 00 4D")

            output_payload = "18 0A 68 39 00 02 00 01 00 01 01 40"
            connection.write_hex_message(output_payload)
            
        if full_packet == bytearray([0x68, 0x05, 0x18, 0x38, 0x03, 0x00, 0x4E]):
            log("!!! Writing response to 68 05 18 38 03 00 4E")

            output_payload = "18 0A 68 39 02 09 00 01 00 01 01 49"
            connection.write_hex_message(output_payload)
        
        if full_packet == bytearray([0x68, 0x05, 0x18, 0x38, 0x0A, 0x00, 0x47]):
            output_payload = "18 0A 68 39 07 09 00 01 00 01 02 4F"
            connection.write_hex_message(output_payload)
            
            output_payload = "18 0A 68 39 02 09 00 01 00 01 02 4A"
            connection.write_hex_message(output_payload)
            
        if full_packet == bytearray([0x68, 0x03, 0x18, 0x01, 0x72]):
            output_payload = "18 04 FF 02 00 E1"
            connection.write_hex_message(output_payload)

    # Set to whatever your dev path actually is
   device = "COM2"
   connection.set_port(device)
    
    # If you need soft CTS, set to True
   soft_cts = False
   connection.set_software_cts(soft_cts)
    
    # Initiate the connection and set a read callback
   connection.connect(msg_callback=read_input_data)
    
   connection.read_thread.join()
   connection.write_thread.join()
Zitieren


Nachrichten in diesem Thema
Alle paar Sekunden "No Disc" - von nevoness - 23.03.2019, 16:54
RE: Alle paar Sekunden "No Disc" - von nevoness - 23.03.2019, 19:30
RE: Alle paar Sekunden "No Disc" - von nevoness - 23.03.2019, 21:04
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 01:49
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 01:58
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 02:25
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 02:38
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 03:12
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 21:05
RE: Alle paar Sekunden "No Disc" - von nevoness - 24.03.2019, 22:52
RE: Alle paar Sekunden "No Disc" - von nevoness - 25.03.2019, 02:22
RE: Alle paar Sekunden "No Disc" - von nevoness - 25.03.2019, 21:16
RE: Alle paar Sekunden "No Disc" - von nevoness - 25.03.2019, 23:20
RE: Alle paar Sekunden "No Disc" - von nevoness - 26.03.2019, 23:08
RE: Alle paar Sekunden "No Disc" - von nevoness - 26.03.2019, 23:50

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste