ExpressLRS

Wolfgang Fleischer

Vereinsmitglied
Das HOTT SUMD ist ein digitales Ausgangssignal und kann am RX über GND/VCC/TX abgenommen werden, hierbei sind die Kanäle 5 und 8 gemappt.
Die Telemetriedaten der HOTT Sensoren gelangen über GND/VCC/RX in den RX.
 

mha1

User
@FlyingNuri @Franz49

CRSF ist ein Kommunikationsprotokoll, das u.a. auch den paketorientieren Transport von Telemetriedaten beschreibt. Aktuell (muss nicht so bleiben) ist es so, dass die CRSF Schnittstelle an den Empfängern mit einem normalen full-duplex (RX und TX) UART dargestellt wird. Damit geht jetzt ohne weiteren Aufwand nur Punkt zu Punkt, d.h. nur ein Gerät anschließbar. Was für das Unisens kein Problem wäre. Wenn man allerdings mehrer Geräte, z.B. ein Unisens und einen GPS Logger anschließen möchte, dann geht das nicht. Das SM Problem ist wahrscheinlich sehr banal. Wie gesagt, braucht es für CRSF eine serielle Schnittstelle mit GND, VCC, RX und TX. Die Unisens Schnittstelle und die anderer Telemetriewelten (HoTT, FrSky, Jeti usw.) sind allesamt halb-duplex Eindraht Schnittstellen (GND, VCC, RX und TX auf dem Signalkabel). SM müsste - Achtung, Spekulation - vielleicht für CRSF auch die HW ändern, um eine echte RX/TX Schnittstelle darzustellen.
 

mha1

User
Aktuell braucht es für die HoTT Telemetrie 3.4rc1 und ein Adapterkabel mit Diode drin. Warum? Weil der HoTT Bus tatsächlich ein Bus ist, der über eine Eindraht half duplex serielle Verbindung den Anschluß mehrerer HoTT(-kompatibler) Geräte erlaubt. Damit der Bus geordnet betrieben wird, braucht es einen Busmaster. Der ist bei allem was ich so kenne, auf jeden Fall bei FrSky, Jeti, Multiplex und HoTT, immer der Empfänger. Der Busmaster orchestriert den Bus und sorgt dafür, dass angeschlossene Geräte nicht wild durcheinander quatschen, sondern nur sprechen, wenn sie aufgefordert werden. So einen Busmaster habe ich in ELRS implantiert. Die Diode ist natürlich etwas doof, aber irgendwie muss man ohne massig Softwareaufwand (z.B. SoftSerial) von RX und TX full duplex zu Eindraht half duplex kommen. Dazu aber gleich etwas mehr.

Das Adapterkabel (siehe das von @glipski gepostete pdf) braucht immer RX und TX von der seriellen Schnittstelle des ELRS Empfängers und reicht GND und VCC und die Signale über die Eindrahtleitung an die Geräte weiter. Wo die serielle Schnittstelle zu finden ist, wie sie aussieht und und ob sie schon aktiv ist oder erst enabled werden muss, hängt vom Empfänger ab. Lange nicht vollständig, nur die für uns gängigen Empfänger:
- BetaFPV SuperP 14ch. RX an Servosteckplat 13, TX an Steckplat 14 - muss im WebUI oder LUA enabled werden
- Radiomaster ER6x, ER8x. RX und TX (und GND, VCC) sind an der kleinen JST Buchse - ist schon aktiv
- Radiomaster ER4, ER5. RX und TX auch auf zwei Servosteckplätze, welche weiss ich gerade nicht auswendig - muss im WebUI oder LUA enabled werden

Zur Diode: natürlich hätte ich das Gebastel mit Diode, auch wenn es wirklich sehr einfach ist, weg. Deshalb habe ich lange nach einer Lösung gesucht, die mit nahzu Null zusätzlicher CPU Last und definitiv Null Interruptlast auskommt. Wir sind ja auf einem Empfänger der wichtigeres zu tun hat. Ich habe eine Lösung für ESP32 basierte ELRS Empfänger (z.B. Liste von oben ohne ER4 und ER5), gefunden mit der ich zufrieden bin und teste diese seit einiger Zeit selbst. ER6 und SuperP mit Unisens, Unilog 2, GPS/Vario, GPS, Voltage Modul funktionieren sauber, d.h. es gibt keinen Grund anzunehmen, dass das nicht auch in anderen ESP32 Empfänger und anderen HoTT sprechenden Sensoren funktioniert. Die ER6 und ER8 brauchen natürlich noch ein Adapterkabel um von dem kleinen bei Radiomaster mitgeliefertem JST pigtail auf eine Servobuchse zu kommen, aber ohne Diode. Einfach VCC/GND und RX zu VCC/GND/Signal 1:1 durchverbinden. Am SuperP braucht man gar nichts, da steckt man einfach einen HoTT Sensor oder mehrere über ein Y-Kabel am Servosteckplatz 14 an (serielle Schnittstelle enablen nicht vergessen).

Wer das testen möchte - Feedback willkommen - der kann sich die 3.4rc1 basierte Firmware wie gewohnt mit dem ExpressLRS Configurator selbst bauen. Reiter GIT COMMIT auswählen und git commit hash ab51197bd34fce317e1de67cd2e92ca443536627 mit copy/paste eingeben. Den Rest an Daten wie sonst auch eintippen. Fliegen wie immer erst nach sehr ausgiebigem Testen und Vertrauensaufbau.

Im Video ein SuperP 14ch mit direkt angeschlossenem Graupner GPS/Vario (dito Unisens usw.). GPS Position und die anderen GPS Daten kommen natürlich auch, aber nicht bei mir auf dem Schreibtisch. Vspd lebt.

 

madmao

User
Danke für die ausführliche Antwort. Dann harre ich der Dinge. Ist schon ein ungefähres Releasedatum der 3.4.x bekannt? Da die Flugsaison losgeht, wird es wohl schwieriger, Tester zu finden, oder ist 3.3.2 als Sender kompatibel zu 3.4.x im Empfänger ? Falls ja, würde ich einen Empfänger umflashen zum testen.....
 

madmao

User
Und da die SM-Geräte Default mit HoTT kommen spart man sich auch das Interface am Anfang.....
 

Gerpix

User
.....
Zur Diode: natürlich hätte ich das Gebastel mit Diode, auch wenn es wirklich sehr einfach ist, weg.

Da hätte ich noch eine Verständnisfrage, weil mich die Diodenpolung etwas überrascht:

Der Hott-Telemetriebus arbeitet also mit invertierter Signallogik, also Bus auf "High" bedeutet "0", Bus auf "Low" bedeutet "1" bzw. "Bit"? Andersrum könnte ja der ELRS Empfänger über "TX" und die Diode keine Information an die Hott-Module senden ???

Wenn die Ports als PWM konfiguriert sind, müssen sie ja mit normaler Logik arbeiten (Bus auf "High" bedeutet "1"), damit es die Servos verstehen?

Oder hab' ich da einen Knopf im Hirn?

(sorry, ist natürlich ein "Randthema" .... )
 

mha1

User
HoTT ist idle high. RX hat einen weak pullup, TX kann über die Diode den Pegel auf 0 runterziehen. Wenn Du HoTT anwählst wird der PWM eingestellt und die GPIOs auf einen der internen UARTs gelegt.
 
Ich hab mit HoTT eher nix am Hut, könnte aber anstatt des Empfängers hier auch ein Unisens anschließen?

Half Duplex mit Diode oder bei mir mit Widerstand nutze ich schon länger, um bspw. mit ELRS einen Relay-Betrieb zu realisieren. Also bspw. einen 2G4 RX mit einem 868 MHz TX-Modul zu verbinden.
 

mha1

User
Ich hab mit HoTT eher nix am Hut, könnte aber anstatt des Empfängers hier auch ein Unisens anschließen?

Ich kenne Ardupilot nicht, aber sicher nicht statt des Empfängers. Ardupilot ist als FC selbst eine Telemetriesensor an den Du höchstwahrscheinlich keine HoTT Sensoren anschließen kannst. Das Bild zeigt wie Du Telemtrie von Ardupilot über den Empfänger zum Boden schicken kannst. Was gehen müsste wäre ein V-Kabel am Telemtrieport des Empfängers und dann FC und Unisens parallel anschließen. Achtung: HoTT kann nicht zwei gleichartige Geräte gleichzeitig Wenn sich die FC z.B. als GAM meldet, darf das Unisen nicht als GAM, sondern vielleicht als EAM konfiguriert sein.
 

glipski

User
...Wer das testen möchte - Feedback willkommen - der kann sich die 3.4rc1 basierte Firmware wie gewohnt mit dem ExpressLRS Configurator selbst bauen. Reiter GIT COMMIT auswählen und git commit hash ab51197bd34fce317e1de67cd2e92ca443536627 mit copy/paste eingeben. Den Rest an Daten wie sonst auch eintippen. Fliegen wie immer erst nach sehr ausgiebigem Testen und Vertrauensaufbau.

Im Video ein SuperP 14ch mit direkt angeschlossenem Graupner GPS/Vario (dito Unisens usw.). GPS Position und die anderen GPS Daten kommen natürlich auch, aber nicht bei mir auf dem Schreibtisch. Vspd lebt.


Ich habe heute bei dem besch... Wetter etwas mit ELRS 3.4.0 RC1 und dem neuen dieodenlosem HoTT gespielt, RM TX16S / X14 BetaFPV nano TX und RM ER8G / BetaFPV SuperG.

Als Sensoren hatte ich, auch in Kombination, verwendet
Unisense-E
GPSLogger3
Microvario
V-Speak Vario Pro
rc-electronics EAGLE
YGE 65LVT

War zwar nur auf dem Tisch' aber soweit hat alles problemlos funktioniert. Wenn es das Wetter wieder zulässt, werde ich mal mit einem Opferflieger (den Ausdruck habe ich von mha1 :D) auf den Platz gehen. Ansonsten warte ich "nur noch" auf die offizielle 3.4.0 mit diodenlosem HoTT.

Hier meine Lieblingskonfiguration (die Diode ist auf einer Seite nicht mehr angeschlossen = diodenloses HoTT)

IMG_7744.jpeg
screenshot-2024-04-17-55111.jpeg
 
Zuletzt bearbeitet:

mha1

User
Super, vielen Dank für Dein Feedback, das auch hilft, wenn es um "geht das noch in 3.4 rein oder nicht".

Aktuell sieht es so aus, dass das wahrscheinlich in 3.4rc2 drin sein wird. Allerdings mit einem kleinen Wermutstropfen für Dich und andere (ich inklusive), die mit Testen der 3.3.1 Testversion mitgeholfen haben. Nach Review habe ich den PIN, der als half duplex Leitung verwendet wird auf TX geändert.

Sorry, einmal noch das Kabel ändern, dann sind wir glaube ich durch.

Die aktuelle Version kann mit dem ExpressLRS Configurator zum Testen gebaut und geflasht werden:
- Reiter GIT COMMIT auswählen
- 8e134ef2795b79531afeccfe971e41de8668c972 mit copy/paste ins Feld Git commit hash einfügen
- Rest der Daten wie gewohnt eingeben

Mit der aktuellen Version auf Basis 3.4rc1 können HoTT Sensoren direkt nach Freischalten von Serial und Setzen Protocol auf HoTT Telemetry am SuperP Steckplatz 14 (TX) eingesteckt werden. An den ER6x/E8x das mitgelieferte JST Kabel so verdrahten:

1713366091977.png
 

mha1

User
Leider habe ich beim Testen des rc1 noch einen LBT Bug gefunden, der mit Telemtrie Ratio 1:2 zum Tragen kommt. Ist für den rc2 behoben. rc1 nicht mit Telemtrie Ratio 1:2 fliegen, ansonsten wie üblich vorher ausgiebig damit spielen, besser auf rc2 warten.
 

glipski

User
Nichts großartiges:
Du hast ja in Deiner Doku darauf hingewiesen, dass das 4-polige Kabel des ER6/8 genau andersherum belegt ist als das des ER8G/V. Das trifft ja leider auch für die Farbe der Adern.
weiß - GND
gelb - VCC
rot - RX
schwarz - TX
Wenn jemand die Beschriftung des Ports des ER8G/V nicht liest, kann er leicht die Polarität verdrehen. Vielleicht zeigts Du das noch in Deiner Anleitung.
 

mha1

User
Wirklich? Dann muss ich das nochmal lesen. Die ER6/8 sind m.W. nach gleich. Nur der SuperP hat den JST connector (den man für HoTT Telemetrie nicht braucht) andersrum belegt.

Deshalb ist der Hinweis wichtig. Nie auf die Farben verlassen, sondern die Beschriftungen am JST connector beachten.
 
Ansicht hell / dunkel umschalten
Oben Unten