X9E und Multiplex M-Link Modul HFMG1 HFMG2 HFMG3

Status
Nicht offen für weitere Antworten.

kalle123

Jugend forscht ....
Hallo Roland.

Nix für Ungut, aber wenn ich morgens im Radio höre, unsere politische Elite hat wieder mal eine Nachtsitzung absolviert, befürchte ich immer das Schlimmste. :D

So, "BLINK" geht und die Stiftleiste ist drin in der X9E. Mit dem MPX Modul in der X9E solltest du jetzt auch klar kommen. Das breadboard mit dem teensy, 2 Widerständen und dem Transistor ist bereit und doppelt überprüft.

Hast du schon die X9E auf das MPX Modul umgeschaltet und versucht mit nem MPX Empfänger zu binden?

Wenn du nen Oszi hast, kannst du dir ja mal die Telemetrie Daten am MPX Modul anschauen, die da ausgeworfen werden.
Ansonsten lohnt sich IMMER so ein Logic Analyser zu 8€ aus China, gerade bei der Materie, mit der wir uns hier beschäftigen.

Zu Tobis zip Paket. Tobi hat die Basis gelegt aber VERGISS DAS ZIP PAKET. Ist ziemlich unglücklich gepackt. Hatte da schon mit Jonathan "rumgeeiert".

Schau dir an, wie die Struktur bei mir aussieht. Bild in #198.

Dann frohes Schaffen.

Gruß KH (der im Beruf 6 bis max. 8 Stunden konzentriert arbeiten konnte. Alles danach war ......:rolleyes:)
 

Anhänge

Mohol

Erfahrener Benutzer
Hallo Kalle,
Du hattest schon recht! es war spät und ich wurde unaufmerksam. Der Tipp Schluss zu machen hat vielleicht meine Anlage gerettet! :)

Ich hatte gestern Nacht die Elektronik weggelegt und nochmals alle Threds zu diesem Thema durchgelesen. Heute früh habe ich erstmals das Modul in der X9E getestet. Funktioniert tadellos.
Im Sender in OpenTX habe ich dank Helles Hinweis, den Serial Port aktiviert.
"OpenTx V2.1
Sender Grundeinstellungen
weiter zur Seite wo die Schalter definiert werden
dort ganz runter bei Bluetooth
Serielle Schnittstelle aktiveren: S-Port"
Mittlerweise dürfte auch das Koaxersatzkabel für die Antenne angekommen sein. (Der Tipp die Antenne seitlich aus dem Modul auszuführen gefällt mir fast besser als ein längeres Kabel). Ob ich das Modul nun anbohre oder das neue Kabel verwende, muß ich mir noch überlegen.
Nachdem von beiden Kabeln keine Dämpfungswerte bekannt sind, kann man nichts über deren Qualitäten aussagen.

Zusammengefasst: Stiftleiste als Buchse für den Seriellen Port in der X9E ist eingebaut. Die Schaltung aus Widerständen und Transistor ist am Steckbrett gesteckt, Arduino IDE ist eingestellt und getestet. Der Sketch lässt sich ohne Fehler kompilieren. heute Früh habe ich das Programm auf den Teensy hochgeladen. LED leuchtete. Zu diesem Zeitpunkt ist meine Familie aufgestanden und ich musste abbrechen. weiter geht's am Abend.

Am Teensy funktioniert BLINK in mehreren Variationen. Heute Abend werde ich noch ein paar kleine Spaß Programme an den notwendigen Pins am Teensy testen.
Nach nochmaliger Sichtkontrolle der Schaltung werde ich dann wohl endlich den JST Stecker auf P12 in der X9E und den JR Stecker in dem COM Port am Modul stecken und beten das nichts abraucht!

LG
Roland
 

kalle123

Jugend forscht ....
Hi Roland.

Hab heute aus China ein GY-86 gekriegt (shield mit MS5611, Gyro/Acc und Mag). Den provisorisch an nen UNO angeschlossen und erst mal ne Stunde mit der Multiwii GUI rum gemacht, bis ich einen alten thread von Fabio gefunden hab, wie man die serielle Schnittstelle unter Linux "hin biegt". Die oXs Jungs (mstrens und Carbo) setzen das shield ein, um den Gyro/Acc Sensor auf das Vario "aufzuschalten" um die Empfindlichkeit zu erhöhen. Wollte mir das mal aus der Nähe ansehen.

Wenn man nix anderes zu tun hat. ;)

Zu dir. Was ich jetzt noch nicht verstanden hab, hast du jetzt schon nen MPX Empfänger an das MPX Modul der X9E gebunden?

Und das mit dem _MLinkFrSkyConverter_Teens sketch ist jetzt auch klar?!

Das Projekt ist ja schon recht weit:

Vario, Drehzahl, Strommessung und Spannung (ich hoffe nur, Dieter packt irgendwie noch die Einzelzellenüberwachung mit rein) funktionieren.

Bei dem "kruden" MPX GPS seh ich keinen Ansatz für eine Umsetzung.

Drück dir die Daumen, wird schon klappen. Gruß KH
 
Zuletzt bearbeitet:

Mohol

Erfahrener Benutzer
Bei mir ist alles vorbereitet um den Konverter anzuschließen.
Zuerst werde ich heute aber noch einen Unisense E sensor an einen Frsky Empfänger hängen um mich in die Telemetrieinstellungen der X9e einzuarbeiten und vertraut zu machen.

Ich glaube Dieter hatte Probleme die Daten über die serielle Schnittstelle in die X9e zu bekommen.
Ich denke mal das es bei mir ähnlich sein wird. Um dann auf Fehlersuche gehen zu können, möchte ich OpenTx auch richtig verstehen.
Heute oder morgen abend sollte Ich soweit sein.

Mpx GPS kann man vergessen. Mpx überträgt keine Koordinaten. Daher sehe ich keine ordentliche Verwendung in der Taranis.


Ich dachte eher an eine OpenX Sensor GPS Lösung, die über Mlink die Daten runter funkt.
Als "Gegenstück" wäre dann ein GPS Modul im Sender interessant, um auch Entfernungen zum Sender ermitteln zu können. Der Teensy würde sich dafür anbieten.
 

kalle123

Jugend forscht ....
Ich glaube Dieter hatte Probleme die Daten über die serielle Schnittstelle in die X9e zu bekommen.
Ich denke mal das es bei mir ähnlich sein wird. Um dann auf Fehlersuche gehen zu können, möchte ich OpenTx auch richtig verstehen. .
Das würde sich ja dann anbieten, dass du zusammen mit Dieter testen könntest. Aber bitte postet hier. Vielleicht liest ja noch ein X9E Kandidat hier mit. Ev. würde es sich anbieten, die Entwickler auf openrcforums mal anzusprechen. Könnte vielleicht dabei etwas helfen ....

Mpx GPS kann man vergessen. Mpx überträgt keine Koordinaten. Daher sehe ich keine ordentliche Verwendung in der Taranis.
Ich dachte eher an eine OpenX Sensor GPS Lösung, die über Mlink die Daten runter funkt.
Als "Gegenstück" wäre dann ein GPS Modul im Sender interessant, um auch Entfernungen zum Sender ermitteln zu können. Der Teensy würde sich dafür anbieten.
Jetzt hab ich deinen Ansatz verstanden. Das oXs GPS unter FrSky geht einwandfrei. Aber nochmal dazu. Die GPS Daten werden doch geloggt und damit steht der Ausgangspunkt des Piloten doch fest. Wenn der Flieger abhaut, so hast du doch den Ausgangspunkt und die letzte Meldung im Log. Daraus ergibt sich dann doch Richtung und Entfernung zur letzten Position. Das ließe sich doch dann "im Fall des Falles" über ein Lua skript machen, oder? Nur mal so angedacht ....

Gruß KH
 

Mohol

Erfahrener Benutzer
Ja, der Ausgangspunkt bzw. der Standort des Senders steht fest. Aber wenn ich nun ein paar Schritte zur nächsten Sitzbank gehe? ;-)
Spaß beiseite, der Ansatz ist mehr Interesse als praktischer Nutzen.
Die Horus soll auch GPS haben und auch dort ist mir nicht ganz klar wozu ich das brauche. Genauso wie der Beschleunigung Sensor in der Horus. Damit kann man scheinbar die Kräfte auswerten, falls sie mal runter fällt. :)

Jedenfalls langweilt sich der Teensy als reiner Übersetzer und könnte zusätzliche Aufgaben erledigen.

Bevor ich darüber weiter nachdenke, muss der Konverter bei mir mal funktioniert.
 
Hallo zusammen,

zu den MPX-GPS-Daten fallen mir zwei Bemerkungen ein:
S.Merz (SM-Modellbau) und UBIT (Entwickler der Soufleuse) haben beide über die MPX-Daten gestöhnt. Sie können nicht in "einem Hieb" übertragen werden, sondern kommen in mehreren Frams, weil die Zahlen zu viele Stellen haben.
Ob euch das jetzt weiterhilft, weiss ich nicht, aber wie immer, die Hoffnung nippelt zuletzt ab.

mfg
Paul
 

Gruni

Erfahrener Benutzer
Hallo,

es wäre sowieso der Hammer, wenn S.Merz und/oder UBIT einen eigenen universellen Telemetriekonverter raushauen würden. Herr Merz hat ja sowieso schon alle relevanten Protokolle zumindest auf der jeweils firmenspeziefischen Telemetrie (Frsky, Futaba, Hott, Mlink, Jeti, JR, hab ich was vergessen?) auf und umgesetzt. OK, damit ist der Bastelgedanke ein wenig hinfällig.
Nur mal so als Einwurf...

Grüsse aus Glasgow, Gruni
 
Zuletzt bearbeitet:

kalle123

Jugend forscht ....
Hallo Paul.

Glaub nicht, das die Stellen für die Koordinatenangabe ein Problem ist/wäre.
Immerhin spuckt der MPX Datenstrom mit 115200 baud.

Nur, es ist in der MPX firmware einfach nicht vorgesehen, Longitude und Latitude aus zu geben.

Ich setzt hier mal als Beispiel einen Auszug aus oXs hier rein.
Das ist das, was die MPX firmware liefern kann, mehr ist da nicht drin.

Code:
//list of all telemetry units supported by Multiplex protocol
#define MU_ALT     0x08  // 1m       (-500 2000)
#define MU_VSPD    0x03  // 0,1 m/s (-500 500) 
#define MU_CURR    0x02  // 0,1 A   (-1000 1000)
#define MU_VOLT    0x01  // 0,1 V   (-600 600)
#define MU_TEMP    0x06  // 0,1 C   (-250 7000)
#define MU_RPM     0x05  // 100t/m?? ou 10t/min
#define MU_MAH     0x0B  // 1mAh    (-16000 16000)
#define MU_ASPD    0x04  // 0,1km/h (0-6000)
#define MU_LEVEL   0x09  // 1%      (0-100)
#define MU_DIR     0x07  // 0,1 degrés  (0 3600)
#define MU_LIQUID  0x0C  // 1ml      (0-16000)
#define MU_DIST    0x0D  // 0,1 km   (0-16000)
// End of list of all telemetry units supported by Multiplex protocol  


#define MULTIPLEX_UNITS MU_LEVEL , MU_ALT , MU_VSPD , MU_LEVEL , MU_ALT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT ,\
                        MU_VOLT , MU_CURR , MU_MAH , MU_DIR , MU_ASPD , MU_ALT , MU_RPM , MU_DIST , MU_DIR ,  MU_LEVEL ,\
                        MU_ALT , MU_ASPD , MU_VSPD , MU_LEVEL , MU_LEVEL , MU_VSPD , MU_LEVEL , MU_LEVEL , MU_LEVEL , MU_VSPD , \
                        MU_ALT , MU_ALT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , MU_VOLT , \
                        MU_ALT
  

//  This is the list of codes for each available measurements
#define ALTIMETER       1        
#define VERTICAL_SPEED  2        
#define SENSITIVITY     3        
#define ALT_OVER_10_SEC 4        // DEFAULTFIELD can NOT be used ; this is the difference of altitude over the last 10 sec (kind of averaging vertical speed)

#define VOLT_1           5        
#define VOLT_2           6        
#define VOLT_3           7        
#define VOLT_4           8        
#define VOLT_5           9        
#define VOLT_6           10       
#define CURRENTMA       11        
#define MILLIAH         12        
#define GPS_COURSE       13       
#define GPS_SPEED        14       
#define GPS_ALTITUDE     15       
#define RPM             16        
#define GPS_DISTANCE       17     
#define GPS_BEARING        18     
#define SENSITIVITY_2      19     
#define ALT_OVER_10_SEC_2  20      
#define AIR_SPEED          21      
#define PRANDTL_COMPENSATION 22     
#define PPM_VSPEED         23       
#define PPM                24       
#define PRANDTL_DTE        25       
#define TEST_1              26      
#define TEST_2             27       
#define TEST_3             28       
#define VERTICAL_SPEED_A  29
#define REL_ALTIMETER     30
#define REL_ALTIMETER_2   31
#define CELL_1            32
#define CELL_2            33
#define CELL_3            34
#define CELL_4            35
#define CELL_5            36
#define CELL_6            37
#define CELL_MIN          38
#define CELL_TOT          39
#define ALTIMETER_MAX     40
Ne gute Übersicht findet sich auch hier http://www.mikrocontroller.net/articles/Der_Multiplex_Sensor_Bus_(MSB)

Ich hab mich in letzter Zeit ziemlich mit dem MPX Protokoll auseinander gesetzt und auch noch ein bisschen in die NMEA Protokolle bei U-Blox eingelesen. Ist alles kein Hexenwerk. NUR, es ist nicht in der MPX firmware drin.

Gruß KH
 

kalle123

Jugend forscht ....
OK, damit ist der Bastelgedanke ein wenig hinfällig.
Nur mal so als Einwurf...
Wat soll dat den heissen? Erst ist es die serielle Schnittstelle an deiner Taranis, jetzt haste dich wieder mal beruflich abgesetzt. Und nun ist der Bastelgedanke "hinfällig" .... Ich vertick jetzt den ganzen MPX Schei... hier, setze komplett auf Frsky und oXs und das war es denn :eek:

LG KH
 

Gruni

Erfahrener Benutzer
Hallo Kalle,

nee, ich bleib schon dabei, keine Sorge. Das will ich ja wissen. Ich hab mir die ganze Messtechnik ja nicht für Nöppes zugelegt. Aber so ein kleiner Einwurf tut doch mal ganz gut, oder?
Wäre aber der Hammer, wenns die Schnittstelle ist, was ich ja "hoffe". Aber wo kann ich dann noch ankoppeln? Löten möchte in der Taranis nicht.
Wenns dann geht, kommt das eigentliche Projekt mit Jeti und Hott dran, wobei Jeti der näherliegende Schritt wäre.

Ach so: es sollte eigentlich heißen: Damit wäre für viele der Bastelgedanke ein wenig hinfällig..." Ich hoffe, daß ich damit die Kurve gerade nochmal genommen habe, wenn auch ganz aussen mit quitschender Tastatur. ;->

So, das Guinness rein und Haialein.

Beste Grüsse, Gruni
 

Mohol

Erfahrener Benutzer
Hallo,
Frage zur Schaltung des Konverters:
Tobi hatte ursprünglich die Spannung von der Taranis abgenommen. OK, sein Projekt lief mit 5V. Aber er ging mit seinen 5V in "Vin" am Arduino.
In eurer Skizze nehmt ihr die 3,3V vom MPX Modul und geht direkt auf 3,3V. "VIn" bleibt frei.
Warum? Ist VIn für 5V ausgelegt?
Habt Ihr versucht die Spannung von der Taranis mit einem Spannungswandler abzunehmen?
 

Mohol

Erfahrener Benutzer
Der Konverter FUNKTIONIERT auf der X9E!!!!

HURRRA - ein 3faches Hoch auf alle die das ermöglicht haben!!! VIELEN DANK!

solltet ihr mal in Wien sein, geht das Bier auf mich!!!

Ich werde in den nächsten Tagen einen Bericht und Anleitung mit Bildern für die X9E schreiben.

Müsst ihr auch zuerst den Sender einschalten und dann erst den Converter anstecken?
 

kalle123

Jugend forscht ....
Hallo,
Frage zur Schaltung des Konverters:
Tobi hatte ursprünglich die Spannung von der Taranis abgenommen. OK, sein Projekt lief mit 5V. Aber er ging mit seinen 5V in "Vin" am Arduino.
In eurer Skizze nehmt ihr die 3,3V vom MPX Modul und geht direkt auf 3,3V. "VIn" bleibt frei.
Warum? Ist VIn für 5V ausgelegt?
Habt Ihr versucht die Spannung von der Taranis mit einem Spannungswandler abzunehmen?
Welche Skizze? Wie soll ich denn jetzt raten? Das, Roland, ist nicht sehr hilfreich!

Siehe dazu auch meinen post #74


Der Konverter FUNKTIONIERT auf der X9E!!!!

Müsst ihr auch zuerst den Sender einschalten und dann erst den Converter anstecken?
Zum ersten Teil. Schön. WAS funktioniert denn nun? Ein bisschen funktioniert hatte es schon in post #31 mit arduino statt teensy und Tobis sketch bei mir.

Versuch doch bitte mal, etwas konkreter zu posten. Ich kann ja deine Euphorie verstehen. ;)

Zum zweiten Teil. Nein. Siehe meinen post #52.

Gruß KH
 

Mohol

Erfahrener Benutzer
Hallo Kalle,
meine anfängliche Euphorie ist leider etwas verflogen.
Schön ist nur noch, dass Daten vom MPX Modul in der X9E ankommen. Der Sender erkennt automatisch welche Sensoren verfügbar sind. Ich habe bis jetzt RSSI, V Empfänger, Höhe und Vario getestet.

Bei RSSI hängt der Wert auf 100 fest. keine Änderung, auch wenn ich den Empfänger 2 Zimmer weiter trage.
Vario hupft zwischen 0 und 1,4 m/s zwei mal pro Sekunde hin und her.
Höhe ist ok. Die steht bei Null, gelegentlich 1m
Hebe oder senke ich das Vario, ändert sich der Vario Wert tendenziell richtig. Das "Rauschen" um den Nullpunkt ist jedoch viel zu viel.

Grundsätzlich bekomme ich Daten vom MLINK Modul HFMG1 über den Teensy3.2 in die Taranis.
In der Taranis habe ich in den Grundeinstellungen "serieller Port: Telemetrie" ausgewählt und im Telemetriefenster habe ich bei Teletrytyp: "S-port D" oder "S-Port cable" aktiviert. (funktionieren Beide)
Ansonsten gibt es nicht viel einzustellen.
Lediglich für meine Empfänger gäbe es zwei Firmware Versionen die ich variieren könnte.

Darum ein paar Fragen:
Welche Firmware Version verwendest du im MPX Modul ?
Welche Firmware am Empfänger?
Hast du deinen Sketch erweitert oder verwendest du den von Dieter? (bezogen auf Post#52, hast du diese Wartezeit nachträglich eingebaut?)

Konntest du den Debug Modus im Arduino IDE aktivieren? Ich würde mir am SerialMonitor gerne die Werte ansehen, die ein und ausgehen.
"#define DEBUG" aktivieren und seriell Monitor auf 9600 stellen reicht nicht.

LG
Roland

das erste Problem konnte ich selbst beantworten.

Ein Vario darf nur EINEN Wert übertragen. Meine Varios senden auch min/max Werte. Dadurch wurden die VarioWerte abwechselnd mit den Min/Max Werten auf einer ID gesendet und erzeugten diese Schwankungen. Je größer der Extremwert, desto größer die Schwankung.

Ich habe die MinMAX Werte im Sensor deaktiviert. Jetzt funktioniert das Vario tadellos.

lediglich RSSI steht noch auf 100dB. Vielleicht überlagert sich auch hier der echte RSSI mit einem anderen Wert?

Fazit: auf der X9E mit MLINK funktionieren Vario und HÖHE tadellos.
 
Zuletzt bearbeitet:

kalle123

Jugend forscht ....
Darum ein paar Fragen:
Welche Firmware Version verwendest du im MPX Modul ?
Welche Firmware am Empfänger?
Hast du deinen Sketch erweitert oder verwendest du den von Dieter? (bezogen auf Post#52, hast du diese Wartezeit nachträglich eingebaut?)

Konntest du den Debug Modus im Arduino IDE aktivieren? Ich würde mir am SerialMonitor gerne die Werte ansehen, die ein und ausgehen.
"#define DEBUG" aktivieren und seriell Monitor auf 9600 stellen reicht nicht.
Hi Roland.

Versionen: HFMG3 mit 41 und HFM4 in meiner Royal Pro mit 44.

RX 7 mit aktueller firmware.

Das sketch von Dieter. Keine Änderung.

Debug Modus - NEIN. Ich hab den MPX Datenstrom geloggt und mir dann angesehen.

Zu RSSI -> post #156

Dann wollen wir mal hoffen, dass Dieter nicht "hin geschmissen" hat und noch mal Zeit findet und sich hier meldet.;)

cu KH
 
Zuletzt bearbeitet:

Mohol

Erfahrener Benutzer
Guten Morgen KH,

vielen Dank für deine Infos.

ich bekomme RSSI nicht unter 100% . Lediglich beim Start des Konverters schwankt das Signal kurz. Er scheint als würde auch bei RSSI ein Maximalwert angezeigt werden.
Schalte ich die Anlage ein, steigt der bunte RSSI Balken des oberen Displays meiner X9E von 60% über 70%, 80% auf 100% und bleibt dort.
Ich habe den Empfänger auch in die Mikrowelle gelegt. Keine Änderung. Entweder voll oder gar nichts. Also solange ein Signal kommt, zeigt er 100% an, wird das Signal unterbrochen, verschwindet RSSI.

Hast du bei deiner X9D in den Telemetrieeinstellungen die Option "Telemetrietype"?
Ich kann dort "S-port, FrskyD oder FrskyD cable" auswählen. Für den Konverter muß "FrskyD" oder "FrskyD cable" eingestellt werden. Jedoch muss ich diese Einstellung bei jedem Neustart neu setzten.
Sobald am Konverter die LED blinkt und Daten am seriellen Port der X9E ankommen, muss ich den Telemetrietype einmal ändern um den seriellen Port quasi zu aktivieren. Erst dadurch werden Daten empfangen.
Ist das bei der X9D auch so? Entweder ist das Absicht oder es ist ein Bug in OpenTX bei der X9E.

lg
roland
 

kalle123

Jugend forscht ....
Roland, ich hab gar nicht groß mit den Telemetrieeinstellungen "rum gemacht". Einfach nur SENSOR gesucht, was ist da? Feddig.

Siehe meine ganzen geposteten Bilder hier. Jetzt irgendwelche "tollen" LUA scripts zu schreiben, um da nen Telemetriescreen zu haben. Kann ich nicht und brauch ich momentan auch nicht.

Telemetry Protocol bietet hier an "FrSky S.Port" und "FrSky D". That it.

Sobald am Konverter die LED blinkt und Daten am seriellen Port der X9E ankommen, muss ich den Telemetrietype einmal ändern um den seriellen Port quasi zu aktivieren. Erst dadurch werden Daten empfangen.

Ich muss da nix machen. Im screen, wo ich die Sensoren suche, sind die Daten von Anfang an da.

Gruß KH
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten