Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Alle paar Sekunden "No Disc"
#21
(24.03.2019, 12:12)harryberlin schrieb: Irgendwas stimmt da überhaupt nicht.
Das Radio fragt nach dem MID, aber kriegt keine Antwort.
Und Kommunikation zwischen Radio und Wechsler findet eigentlich gar nicht statt.
Ist das überhaupt ein IBus-Wechsler?

Sollte, ja. Ist dieser hier.
[Bild: s-l1600.jpg]


Das hier ist mein Radio, BMW Business.
[Bild: BusinessKas_IRISG.jpg]
Zitieren
#22
hmm, schwierig was da anders läuft, und warum es ein mid erwartet.
jedenfalls war im log nix von radio <> cd wechsler dabei. hattest du mal eine cd laufen lassen und mit mode durchgeschalten?
in jedem fall habe ich die logik vom IRIS nicht implementiert.
IBusCommunicator:
Image  <>  Kodi Addon

[Bild: usersignaturpic-14941mspx.jpg]
Zitieren
#23
Ja, ich hatte dabei eine CD am laufen. Mit mode durchgeschalten habe ich nicht.
Ich kann nochmals den PC oder auch den RPi dranhängen wenn du willst.
Zitieren
#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
#25
Jetzt ist nur die Frage:
Wie integriere ich das in Ibuscommunicator, damit ich die ganzen anderen Funktionen benutzen kann?

Ok... Neue Erkentniss:

Benutze ich das Skript am PC, läuft alles.
Am PI gibts unterbrechungen!

Benutze ich dein Addon in Kodi am PC, läuft alles!
Benutze ich dein Addon oder auch Image am Pi, gibts Unterbrechungen!

Jetzt bin ich offiziell überfragt.
Zitieren
#26
kann ich mir heut abend vllt mal ansehen.
IBusCommunicator:
Image  <>  Kodi Addon

[Bild: usersignaturpic-14941mspx.jpg]
Zitieren
#27
meinst du dass es immer nur im auto probleme gibt, und es grundsätzlich funktioniert?
IBusCommunicator:
Image  <>  Kodi Addon

[Bild: usersignaturpic-14941mspx.jpg]
Zitieren
#28
Nein, das Problem ist:

Lasse ich das Programm am PC Laufen (alles im Auto) geht die CD Wechsler Emulation mit deinem addon problemlos. Lasse ich das addon aber am Pi laufen, gibt es alle paar Sekunden Unterbrechungen.

Sowohl mit deinem addon als auch mit meinem Script
Zitieren
#29
was hast du für ein ibus interface?
IBusCommunicator:
Image  <>  Kodi Addon

[Bild: usersignaturpic-14941mspx.jpg]
Zitieren
#30
Ressler Stick, der neueste
Zitieren


Gehe zu:


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