Erbitte Hilfe bei der Protokollidentifizierung

Gast #7348150
Lesenswert?

Hallo,

ich beschäftige mich schon seit einigen Jahren mit Datenübertragung und Microcontrollern (mittlerweile nur noch als Hobby) und wurde von einem Bekannten gebeten die interne Kommunikation in einem Modellbahnfahrzeug analysieren und ggf. anpassen kann. Nun kenne ich allerhand Übertragungarten und Protokolle, habe mich auch in die Brancenüblichen (DCC, RAILCOM, SUSI eingelesen) bin dabei aber auf etwas seltsames gestoßen, das ich auch nach mehrtägigrem Googeln nicht identifizieren konnte.

  • Kommunikation zwischen einem ATtiny441 und einem ATxmega32A4U
  • 3-Leitungen GND/5V/Daten
  • keine asysncrone Übertragung
  • kein Manchester-Code
  • Startbit 40 µs
  • kurze Periode ca. 16,9 µs
  • lange Periode ca. 27,5 µs
  • gemischte Phasenwechsel lang lo - kurz hi - lang lo und umgekehrt
  • sehr unterschiedliche Bitanzahl pro Übertragung

Anbei ein Screenshot vom Analysator.

Was könnte das für ein Bus sein ? Oder etwas ganz proprietäres ? Ich kann mir nicht vorstellen da man hier was ganz eigenes "erfunden" hat ...

Bevor ich da Protokoll dekodieren kann müsste ich aber erstmal die Übertragung verstehen. Die Elektronik wegschmeißen und neubauen ist sicher einfacher und billiger ..

Ich sehe es eher sportlich und würde gern verstehen was da läuft :-)

Vielen Dank und viele Grüße Uwe

Angehängte Dateien:
Moderator (Firma: Titel) Persönliche Seite #7348177
Lesenswert?

Uwe schrieb:

keine asysncrone Übertragung

Die sieht mir völlig asynchron aus. Denn eine synchrone Übertragung brächte ja einen Takt, zu dem sie synchron ist.

Kommunikation zwischen einem ATtiny441 und einem ATxmega32A4U

Bidirektional? Das bekommt man raus, indem man einen Widerstand in die Leitung einschleift und an beiden Seiten des Widerstands je einen Oszi-Kanal anschließt.

Ich kann mir nicht vorstellen da man hier was ganz eigenes "erfunden" hat ...

Ich würde einfach mal diesen Ansatz wagen: die Pegel sind im Grunde egal, kurz ist 0 und lang ist 1. Und jetzt müsste man sowas wie ein Poti haben, womit man Werte nachvollziehbar ändern kann.

Gast #7349284
Lesenswert?

Hallo und vielen Dank!

Manchmal sieht man den Wald vor Bäumen nicht. Hatte auch schon in diese Richtung gedacht, aber irgendwie zwei Phasenwechsel pro Bit erwartet. Und beim Flankenzählen hatte ich mich zu später Stunde einerseits verzählt und zum Anderen bin ich über die tatsächlich abweichenden Längen (32 und 48 Bit) gestolpert ... :-)

Hier das erste Ergebnis decodiert:

1
11110010111100000000000000100101                    F2 F0 00 25
2
111100001111001000110010000000010000001011111100    F0 F2 32 01 02 FC
3
111100011111000000010010001000000000000100101010    F1 F0 12 20 01 2A
4
11110001111100000000000011101111                    F1 F0 00 EF
5
111100001111000100110010000000010000001001100000    F0 F1 32 01 02 60
6
111100101111000000010010001000000000000101101110    F2 F0 12 20 01 6E

Die ersten Bytes scheinen Quelle/Ziele sein und beim letzten hätte ich jetzt eine Prüfsumme/CRC erwartet ... Dem scheint aber nicht so oder ich sehe nur die Codierung noch nicht :-(

Viele Grüße Uwe

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren