Seite 1 von 4
E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 6. Mai 2022, 17:39
von gdv-it
Ich würde hier gern infos zum (Nanjing FarDriver) Controller-Interface sammeln, da im Haupt-Thread nur noch schwer etwas zu finden ist.
- Wo finde ich die aktuelle Software
- Sammeln der aktuellen Firmware-Versionen
- Reverse-Engineering des UART Protokolls
Ziel ist es, auf basis des UART Anschlusses einen Controller(ggf. Arduino) soweit zu programmieren, dass er auf die aktuellen Fahr-Daten zugreifen kann (Geschwindigkeit, Energieverbrauch etc.). Damit könnte ein Boardcomputer realisiert werden welcher evtl. ein anderes Tacho ansteuern kann (da unser tolles Tacho ja bei vielen Probleme macht und nix wirklich richtig kann).
Brainstorming - GO!
Ich würde mich freuen, wenn ihr nochmal die Pinbelegung sowie den Anschluss des USB-UART Converters hier posten könntet bzw. die Postings vom anderen Thread verlinken könnt.
Ich werde, sobald ich eine funktionierende Software gefunden habe, mich mal mit dem Controller verbinden und das Protokoll sniffen.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 6. Mai 2022, 21:19
von didithekid
Hallo.
die Controller-Firma Nanjing (mit den Fardriver-Controllern) ist Teil des SIAecosys-Konsortiums (Zusammenschluss zur Vermaktung von Komponenten zum: Electric Power Train von Zweirädern) und hier findet man die Anleitungen und Software (zusammen mit anderen Display- und Controller-Firmen des Konsortiums). Hier die Seite 2 mit Fardriver:
http://www.siaecosys.com/list/?classid=21&page=2
Inzwischen enthält auch die APP (MotorNET) für die Bluetooth-Version so viele englische Anteile, dass man damit arbeiten kann. Leider ist mein Chinesisch/Manarin-Verständnis noch etwas dürftig..
Manche der ODIN haben offenbar auch einen Controller von VOTOL drin (auf der ersten Seite der Service-Unterlagen)
Die Tachos und Displays des SIA-Konsortiums kommunizieren (neben Hall-Puls) auch oft mit LIN-RS485 zwischen Controller und Tacho/Display.
Viele Grüße
Didi
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 6. Mai 2022, 22:10
von gdv-it
Sehr gut, das könnte fast unserem Protokoll entsprechen, 12V Eindraht kommt auch hin.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Sa 7. Mai 2022, 21:38
von gdv-it
Grüße alle zusammen,
hier meine Ergebnise zum UART Protokoll des Controllers. Alles total simpel:
Baudrate: 19200 8n1
App sendet (HEX): aa 13 ec 07 01 f1 a2 5d
Controller Antwortet mit ca. 300 Paketen u.a.: aa 01 02 e4 00 00 00 00 00 00 00 00 00 00 01 91
nach diesen rund 300 Paketen hört der Controller auf zu senden wenn nicht ein neues request von der APP kommt.
0xaa = header
0x01 = type
0x91 = checksum, 8 modulo 256 aus den ersten 14 bytes, die 0x01 davor werden nicht beachtet
type 0x01 beinhaltet u.a. die Voltage, Current, Throttle
type 0x02 beinhaltet die RPM
also alle notwendigen Daten für ein eigenes Tacho/Boardcomputer.
Hier das ganze nochmal meine Notizen als PDF:
http://intern.gdv-it.de/odinproto/odinproto.pdf
Welche Werte was sind, kann man sehr schön heraus finden wenn man per Nullmodem-Kabel seriell 2 Rechner verbindet. Auf einem läuft die APP (motorc) und auf dem anderen ein Linux (echo -ne "\xaa\x01\x01\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x01\x02\x01\x95" > /dev/ttyUSB0)
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Sa 7. Mai 2022, 22:17
von jeff-jordan
Wenn man nun mittels "aa 13 ec 07 01 f1 a2 5d" die Aufforderung an den Controller schickt die Daten zu senden, dann ist er ja erstmal 300 Pakete lang beschäftigt diese an den Arduino oder was auch immer zu schicken. D.h. er spuckt 2,5 Sekunden lang (300 * 10 Bit * 16 Byte / 19200 Baud) Datenpakete aus, die hinsichtlich "aa 01" und "aa 02" analysiert werden wollen. Erst danach kann man dann wieder eine neue Abfrage starten.
Dauert das nicht zu lange um bspw. den Tacho aktuell zu halten? 2,5s sind beim Blick auf den Tacho eine lange Zeit.
Oder kommen die 01 & 02 Typ-Pakete öfters in den 300 Paketen vor?
Im Übrigen kann man sowas auch schön mit hterm unter Windoof mitschreiben... es braucht da nicht unbedingt Linux

.
Die Abfragesequenz von der MotorNet App (via Bluetooth LE) schaut übrigens leicht anders aus:
Also (hex): AA 13 EC 07 5F 5F 6E 91
Für einen ordentlichen Tacho brauchen wir noch weitere Informationen, wie Gang (1,2,3,R), Bremse, Feststellbremse.
Kommen die auch alle via Datenpaket vom Controller?
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Sa 7. Mai 2022, 23:49
von gdv-it
Ja, kommt alles von dort, müsste man noch raus fischen. Da diese grotten Windows App es schafft die werte schneller anzuzeigen als 2,5s gehe ich davon ais dass diese werte wesentlich öffters kommen. Performance mäßig sehe ich da keine Probleme.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 17. Jun 2022, 10:25
von tho-ges74
Hallo,
so langsam werde ich sehr verärgert, da ich immer noch auf meinen Controller warte (nmd24).
Ich bin der Meinung hier mal was von einem spanischen Ersatzteilhändler gelesen zu haben, finde dazu aber nichts mehr.
Hat jemand eine Idee, wo ich einen Controller herbekommen könnte?
Außer bei AliExpress und x-scooters.cz finde ich nämlich keine Seiten wo man an Ersatzteile kommen könnte.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 17. Jun 2022, 11:17
von jeff-jordan
Ist hier zwar ein wenig "off Topic", aber hier nochmal der
Link zum spanischen Ersatzteilhändler.
Der Fardriver (Nanjing) -Controller für unseren E-Odin (Z-Odin Version 2) ist dort auf der 3. Seite zu finden.... aber leider z.Zt. nicht lieferbar.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 17. Jun 2022, 11:42
von tho-ges74
Super. Danke.
Wusste auch nicht wo ich es am besten platzieren kann.
Re: E-Odin Controller Firmware, Interface u. Protokoll
Verfasst: Fr 17. Jun 2022, 14:58
von DavidSt
tho-ges74 hat geschrieben: ↑Fr 17. Jun 2022, 10:25
Hallo,
so langsam werde ich sehr verärgert, da ich immer noch auf meinen Controller warte (nmd24).
Ich bin der Meinung hier mal was von einem spanischen Ersatzteilhändler gelesen zu haben, finde dazu aber nichts mehr.
Hat jemand eine Idee, wo ich einen Controller herbekommen könnte?
Außer bei AliExpress und x-scooters.cz finde ich nämlich keine Seiten wo man an Ersatzteile kommen könnte.
Kann dir auch den direkten Händler aus China geben. Die Verkaufen aber über Alibaba.