Jeti Duplex mit EX Analyse des Protokolls am Sendemodul

c.radi

User
Hallo,

ich knüpfe an diesen http://www.rc-network.de/forum/show...Telemetrie-auf-Taranis-X9D-mit-Jeti-TGS-Modul Thread von Jan an.
Ich mache einen separaten Thread auf, um einen nicht total zu zerstören, da er explizit geschrieben hat, er berücksichtigt das EX Protokoll nicht.

Ich würde jedoch gerne meine Taranis mit einem Jets TG2 EX Modul betreiben, und die Telemetrie-Werte in der Taranis verarbeiten. Dafür müssen diese, s wie in Jans Thread, in das FrSky Protokoll gewandelt werden.

Ich habe nun die gleich Verkabelung umgesetzt, und mir einen Arduino genommen. Zuerst geht es darum, das Protokoll zu verstehen. Dafür habe ich das Programm von Jan soweit abgewandelt, das die empfangenen Daten durchgereicht werden.

Ich habe dann mal versucht anhand der Protokollbeschreibung von Jets einzelne Datenpakete nachzuvollziehen. Das ist mir aber nicht gelungen.

Hier der Link zur Protokollbeschreibung: http://www.jetimodel.com/de/show-file/26/

Ich habe hier mal ein Beispiel, wie ich das versucht habe:
Jeti Protokoll_1.jpg

Der lila markierte Bereich zeigt den das gesamte Datenpaket. Diese Angabe ist auch korrekt, da im dritten Byte die Länge steht. und die ist dann folgend 24 Byte, was auch stimmt.
Leider stimmt die Interpretation innerhalb des Paketes nicht.
Der gelb markierte Bereich ist der darauf folgende Textbereich, der durch ein FE beginnend und ein FF zum Abschluß markiert wird.

Wer kann denn hier eventuell bei der Analyse unterstützen.


Danke und Gruß
Christian
 

gruni

User
Hallo Christian,

Frage: macht es Sinn, den Debug-port auf 57600Baud zu setzen?
Der Debug-Port müsste doch mit 9600Baud im 901-Schema ausgelesen werden, oder nicht?

Ach so, noch was:
In der Protokollbeschreibung ist der Protokoll-Header #FE und das Ende #FF, im Sketch steht als Protokoll-Tail #FE... ist das OK?

Grüsse Gruni
 

c.radi

User
Hallo,

zum Debug-Port:
Der Pro Mini hat einen HW Serial, der auch zum Programmieren verwendet wird. An diesen habe ich, so wie Jan beschrieben hat, den Ausgang des JetiModuls angeschlossen.
Dann wurde im Sketch ein Software-Serial definiert, über den das gewandelte Protokoll an die Taranis ausgegeben wird.
Ich habe einen zusätzlichen Software-Serial definiert, der mit 57600 läuft, über den ich Debugausgaben machen kann. Das erspart mir das dauernde umstecken. Was ich allerdings so nicht bekomme sind die Rohdaten, die das JetiModul sendet.

Aufbau ist also wie folgt:

JetiModul ------> Adapter mit Jans Schaltung(Diaode) -----> ProMini HW Serial -----> ProMini SW Serial(Pin8/9) ----------> PC mit HTerm für Debug
ProMini SW Serial(Pin 10/11)-------> Taranis Seriell Port

Ich habe aber die Taranis noch nicht angeschlossen, da mir der passende Stecker dort noch fehlt.


Hier das Bild zu meiner Verkabelung: Der zweite FTDI Adapter ist selbst erstellt, das geht aber auch mit jedem fertigen. Er ist an Pin 8/9 angeschlossen, und benötigt eine Masse.
IMG_1168.jpg
Zum Protokoll:
ich habe das etwas anders verstanden, aber bin mir auch nicht sicher.
Wie man im Bild sieht beginnt ein Textteil mit #FE und endet mit#FF. Vor kommt jedoch ein Datenpaket, welches mit #7E beginnt. Diesen Aufbau habe ich versucht nachzuvollziehen, was mir aber nicht geglückt ist.

Da ich im Sketch noch nichts auswerte (die Teile sind deaktiviert) ist das derzeit noch egal. Es wird ja 1:1 an den Debug-Port gesendet.
Wo ich mir nicht sicher bin, ist, ob alle Daten auch in der Textform gesendet werden, oder ob das nicht ein Gemisch aus Datenpaketen und Text ist. Denn die ID-s der Sensoren sind nur in den Datenpaketen. Hat das jemand verstanden oder kann es versuchen zu analysieren? Ich habe gelesen, dass bei Jeti Anlagen zum Beispiel beim Wechsel eines Sensors 1:1 die Telemetrie neu konfiguriert werden muss, da Herstellernummer und Seriennummer des Sensors gespeichert werden.

Ich habe leider keine JetiBox, kann die also nicht zum testen verwenden.
Aus meiner Sicht könnte ein Versuchsaufbau mit einem Unisense-E der auch Daten liefert eine gute Grundlage sein. Da würde ja Spannung und ein zweiter Wert für den Anfang reichen, um das Protokoll besser zu verstehen. Ich werde das mal mit meiner DS 16 nachstellen.

Vielleicht kann das jemand anders parallel tun.


Gruß
Christian
 

gruni

User
Hallo Christian,

Erst mal danke für das Foto. Muss ich bei gelegenheit mal zusammenstecken, werde allerdings wohl einen Ardu-uno zum auslesen verwenden. Sollte ja gehen.

Zum Sensorwechsel: Wir haben/hatten zwei alte Jeti-Varios. Die wurden zu Testzwecken in verschiedenen Modellen wechselweise an unterschiedliche Empfänger (R5,R6,R8 und R9EX) betrieben. Ich kann mich nicht erinnern, jemals irgendwas neu konfiguriert zu haben.

Zum Protokoll: Ich habe gestern abend mal in der Jeti-Unterlage geschmöckert. Da in english (allerdings gutem) ist es trotzdem leicht verwirrend.


Auszug aus der Jeti-Unterlage
Network protocols
Currently there are four protocols existing. Protocol of the lowest layer is called “simple text” and is included in every communication packet. The rest of protocols are parts of a higher layer. During a procedure of packet construction, the message of higher-layer protocol is concatenated with a “simple text” protocol. Single data packet might contain up to one message of a higher-layer protocol.

Es wird also in jedem Datenpaket ein "simple Text" mit übertragen, damit die eigentlichen Infodaten in einem Textfeld platziert werden.

Ups, ich muss zum Gate.....

Grüsse aus Glasgow, Gruni
 

jan68

User
Hallo,

ich verstehe das EX-Protokoll folgendermaßen: es wird je Sensorwert ein "higher layer" Datenpaket erstellt, beginnend mit 0x7E und weiter folgend mit den Identifiern zu Sensortyp, Hersteller, Datenformat und den eigentlichen Sensorwerten. Danach wird aufgrund Rückwärtskompatibilität zu den "alten" Jetiboxen das bekannte Jeti(ohneEX) Textprotokoll "simple text" hinterher gesendet. Das wiederum beginnt mit 0xFE folgend mit 32 ASCII-Zeichen und endet mit 0xFF. Die "dumme alte" Jeti macht nichts anderes, als auf 0xFE zu warten um dann stupide alle folgenden Zeichen aufs Display zu malen. Dann wird das 0xFF abgewartet und nach (bei meiner Box) 4ms wird als Bestätigung ein Byte mit dem Code der Tastenbetätigung zurückgeschickt. Hier ganz gut beschrieben:

Jetibox_1.PNG
Jetibox_2.PNG

Wenn man das "higher Layer" über einen entsprechenden Sketch ausliest, dann kann man - so wie ich es verstehe - das "simple text"-Protokoll getrost ignorieren; es ist einfach nur Ballast. Man braucht dann wohl auch keinen Anschluss am Arduino-Tx-Port über Diode mehr; ein Anschluss des Arduino-Rx per Schutzwiderstand an die Jetibox sollte reichen.


@ Gruni, wenn Du Lust hast und wieder im Lande bist (da Christian keine Jetibox hat): Könntest Du mir mal einen Datenmitschnitt erzeugen mit einer parallel zum Arduino angeschlossenen Jetibox, bei dem Du manuell ins Mx-Menü des Unisens reintastest (möglichst mit jeweils kurzem Tastendruck) ? Also von Einschalten des Receivers bis zur Anzeige der gewünschten Daten den Unisens ... nahtlos in einer Textdatei. Ich würde schon nochmal gerne verstehen, woher der Fisch stinkt ;)

Gruß
Jan
 

jan68

User
Hallo Kalle,

stimmt, das wäre gar nicht so dumm... und finanzierbar ist es auch noch :)

Mein Problem ist momentan aber eher, dass ich nur ein nicht-EX-Jeti-Modul besitze, und daher auf die Datensammlerei von Anderen angewiesen bin :rolleyes:

Gruß
Jan
 

kalle123

User
Jan, ich kann dir da leider auch nicht weiter helfen. Bißchen Jeti hab ich ja auch, aber auch nur ein vor EX Modul in einer MPX Pro.

Aber die Investition in so einen Sniffer lohnt.

Frohes Schaffen - KH
 

c.radi

User
Hallo,

also ich habe mal eine JetiBox bestellt, und so einen Logik Analyzer.
Ich habe auch noch ein TU-2 Modul, welches ich eben auf TX updaten konnte.

Jan, wenn es Dir hilft schicke ich Dir das Modul zum Testen gerne zu.

Es würd mich freuen, wenn wir hier weiter kommen. Un dich könnte mir vorstellen, dass es noch andere Kollegen gibt, die das brauchen könnten.

Danke und Gruß
Christian
 

c.radi

User
@Kalle:
mit uns entwickeln, gebe ich Dir recht. Da wird wohl keiner auftauchen. Aber das Ergebnis kann vielleicht noch jemand brauchen.

@Jan:
Das TU 2 Modul sollte jetzt EX können, so verspricht es zumindest Jeti. Da ist oben ein Schreibfehler (TX). Das Modul kann ich Dir zum Test gerne senden.


Gruß
Christian
 

jan68

User
Hallo Christian,

danke für Dein Angebot :)

Leider bin auch ich in einer Woche für mehrere Wochen geschäftlich unterwegs, so dass ich dann nicht nicht zum Basteln komme. Da ich wahrscheinlich schon online sein kann, möchte ich trotzdem hin und wieder hier rein schauen. Falls Du mir also wie in post#5 beschrieben einen Datenmitschnitt mit EX-Komponenten+Jeti-Box erzeugen könntest, will ich gerne drauf schauen, um meinen sketch weiterzuentwicklen.

Gruß
Jan
 

kalle123

User
Das TU 2 Modul sollte jetzt EX können, so verspricht es zumindest Jeti. Da ist oben ein Schreibfehler (TX). Das Modul kann ich Dir zum Test gerne senden.

Hi Christian.

Ich hab hier noch das TU2 Modul in einer MPX Pro. Bildschirmfoto11.jpeg
Heisst das jetzt, man kann das Modul auf EX hoch flashen? Gib mir mal nen Link, bitte.

Gruß KH
 

c.radi

User
Hi,

also ich habe noch keine Jeti- Box. Ich habe mein Modul einfach angeschlossen, und das Update durchgeführt.
Ich habe dazu diese SW verwendet: http://www.jetimodel.com/de/show-file/770/

Testen konnte ich das aber ohne Jeti-Box noch nicht.

Sobald ich eine Jeti-Box habe (habe eine gebrauchte bestellt) werde ich mal einen Mitschnitt machen.

Gruß
Christian
 

c.radi

User
Hallo Kalle,

ok versprochen hat es Jets wohl nicht, aber ich lese deren Seite so. Die Updatedatei http://www.jetimodel.com/de/Downloads-1/Firmware-Update-Empfanger-Regler-Sensoren-Tx-Module/
ganz unten heisst : Duplex EX TX Update .....

Auch die suche im Netz ergibt noch nichts eindeutiges. Ich habe mal im Jeti Forum nachgefragt.

Ergänzung (Antwort aus dem Jeti-Forum):
http://www.jetiforum.de/index.php/12-graupner-jeti/2830-tu2-update-hielfe#62846

Mein Modul hat sich aber mit dem Update beschreiben lassen. Sobald meine JetiBox da ist kann ich es vermutlich sehen.


Gruß
Christian
 
Ansicht hell / dunkel umschalten
Oben Unten