MSB / S-Port Telemetrie-Konverter

Hallo zusammen,

heute war es soweit, der überarbeitete S-Port Konverter ist zum ersten Mal im Test gelaufen, und zwar beide Varianten (1) und (2). :)

Es war ein schönes Stück Arbeit, aber es hat Spaß gemacht und sich gelohnt. Die Firmware ist jetzt wesentlich effizienter, nachdem ich die Interrupt Service Routinen für die seriellen Schnittstellen so abgespeckt habe, dass sie nur noch jeweils ein Byte einlesen bzw. senden und Vollzug melden. Alles andere findet jetzt außerhalb der ISRs statt, so wie es sich gehört. Dadurch hat sich der Anteil an dupliziertem hardwareunabhängigem Code deutlich verringert, und außerdem ist der Speicherbedarf um fast ein Drittel gesunken.

Ich habe bisher nur die ATmega328 8MHz Firmware getestet, aber die Unterschiede zwischen den HW Standards sind so marginal, dass ich sehr zuversichtlich bin, dass auch die anderen Firmware Varianten laufen werden. Aber natürlich werde ich das alles noch testen, bevor ich die Firmware zur Verfügung stelle.

Ich hoffe, dass ich spätestens Ende nächster Woche den finalen Beta-Release des S-Port Konverters hier einstellen kann. Die Umwandlung in eine offizielle Version ist dann hoffentlich nur noch ein kleiner Schritt, aber auf Grund der doch recht umfangreichen Änderungen ist es angebracht, nochmal eine Beta-Version zu machen.

Watch this space...
 
Hallo,

heute habe ich eine Testversion von EdgeTX auf meine Taranis geflashed, in der die M-Link Telemetriedaten-Verarbeitung eingebaut ist. Das schaut alles ziemlich gut aus, wenn dieses Feature seinen Weg in die offizielle Version findet, dann zeichnet sich das Ende der Konverter Variante (2) ab. Man muss dann nur noch den COM Ausgang des M-Link Moduls mit dem entsprechenden Pin im Modulschacht verbinden, was problemlos im Inneren des Moduls gemacht werden kann.

Aber keine Sorge, ich werde die Variante (2) jetzt nicht fallen lassen wie eine heiße Kartoffel. Ersten ist noch nicht sicher, dass das Feature in die offizielle Version kommt, und zweitens werde ich die OpenTX Benutzer nicht im Regen stehen lassen.

PS: Die neue Version läuft auch mit 16MHz (wie erwartet) problemlos, der Test mit dem t841er steht noch aus.
 
Hallo Reinhardt,
das klingt ja sehr vielversprechend, wenn man das externe M-Link Modul wie ich mit weiteren EdgeTx Versionen höher 2.8.1 sinnvoll mit Telemetrie in der RM TX16S benutzen will. Ich hab den Konverter (8Mhz VersionSW die Du mir damals zukommen hast lassen) im HFMG3 implantiert, würde das bedeuten dass ich ihn wieder ausbauen muss ? (Ist Gottseidank bei mir steckbar gelöst, da könnte ich dann auch ne Brücke COM-> Modulschacht Pin einstecken) . Anyway wäre schön, wenn Du uns da weiterhin auf dem Laufenden hältst ! Für die alten QX7 wird der Konverter ja immer noch benötigt, da lasse ich OTX drauf, weil ETX keinen Mehrwert mehr (für mich) darstellt.
Danke und viele Grüße
Wolfram
 
Hallo Wolfram.

ob das jetzt in die Radiomaster kommt, ist nochmal eine ganz andere Frage, die hat ja ein eingebautes Multimodul.

Für die QX7 würde ich, wenn EdgeTX die M-Link Telemetriedaten-Verarbeitung dafür auch hat, auch auf EdgeTX gehen. Erstens hat es dann einen Mehrwert (den es ohne dieses Feature nicht hat, da stimme ich Dir zu). Und zweitens glaube ich, dass OpenTX demnächst den Weg alles Irdischen gehen wird. Aber keine Sorge, den Konverter gibt es ja, und auch der derzeitige Update wird natürlich für beide Varianten kommen.
 
Sorry , ich meinte das bezogen auf meine alte QX7 . Da brauche ich kein ETX und der Konverter funktioniert perfekt !! Für die RM TX16S definitiv schon mit ETX 2.8.1 + wegen Touch und besserer Menüführung (meine Ansicht nach)
Was Reinhardt mit dem Konverter macht als auch sein Testen bei neuen ETX > 2.8.1 ist mehr als topp. So sollte es rüberkommen, sorry das es so unverständlich geschrieben war.

VG
Wolfram
 
Hallo zusammen,

hier ist also jetzt der versprochene Release des S-Port Konverters, wie üblich mit den HEX Files für beide Varianten (MSB/SPort und MLink/SPort) und alle drei HW Standards. Die aktualisierte Anleitung ist auch wieder mit dabei.
(angehängtes ZIP File wie üblich mit zusätzlichem .txt zwecks Hochladen)

Wie schon berichtet, waren die Änderungen doch recht umfangreich, aber der Code ist deutlich schlanker und der Speicherbedarf fast um ein Drittel kleiner geworden. Auch die Wartbarkeit hat sich deutlich verbessert, da der Anteil an dupliziertem hardwareunabhängigem Code wesentlich kleiner geworden ist.

Im Zuge dieser Überarbeitung ist natürlich auch ein neuer Release des alten Konverters entstanden, da die Code Files teilweise identisch sind. Wenn ich den S-Port Konverter als "offiziellen" Release hier einstelle, werde ich auch einen neuen Release im alten Konverter-Thread zur Verfügung stellen. (Beim alten Konverter hat sich aber funktional nichts geändert.)

Viel Spaß beim Testen. ;)
 

Anhänge

  • RCN_SPort_Konverter_Beta_2023-03-14.zip.txt
    374,4 KB · Aufrufe: 99
Hallo zusammen,
ebenfalls kurze Rückmeldung.
Hab die Version 2 also M-Link S.Port Konverter in 8Mhz auf meinen 8Mhz Arduino geflashed. Initialisierungsroutine bei Power on = korrekter Blinkcode. Der Arduino ist im HFMG3 Modul eingebaut und konnte vorher mit der alten D-Protokoll Konverter SW problemlos betrieben werden.

Nun was echt kurioses:

Das HFMG3 funktioniert nun mit der neuesten "beta" S.Port 8Mhz M-Link Konverter SW aus #309 absolut korrekt in meiner
# Taranis QX7
# Radiomaster TX12 in beiden OTX 2.3.14
sowie
# Radiomaster Zorro EdgeTx 2.8.1 (mit Adapter befestigt)
und die Sensoren werden nach dem Binden des RX und Sensorsuche sofort erkannt.

Aber in meiner Radiomaster TX16S mit EdgeTx 2.6 bis 2.8.1 lässt sich das gleiche externe HF Modul mal aktivieren, mal nicht und wenn es sich dann mal aktivieren lässt was gar nicht geht ist dann die Sensorsuche, da kommt einfach nix. Zudem beim Ausschalten des Senders mit laufendem Empfänger keinerlei Warnmeldung mehr ! Servos lassen sich vor dem Abschalten und nach dem Wiedereinschalten einwandfrei bewegen.
Ich hab Stunden rumgesucht und den Fehler nicht gefunden.
Der Initialisierungs- bzw. Blinkcode des Konverters und die Anschlüsse sind korrekt.
Entferne ich den Konverter geht das Modul in der TX16S einwandfrei.
Jetzt läuft halt auf einem anderen 16Mhz Arduino die Konverter Software mit altem D-Protokoll wieder und das im gleichen HF Modul ohne die o.a. Probleme.
Echt keine Ahnung, was da vor sich geht.
Eines ist jedoch klar, am HFMG3 und der Konverter Software kann es definitiv nicht liegen, denn in den anderen Sendern geht ja alles in der selben Konfiguration ohne Probleme. Echt spooky und mystery !!! Vielleicht das Zusammenspiel des 8MHz Arduino mit der TX16 ?
Wollte das nur mal so loswerden :-)
Noch einen schönen Sonntag !
Viele Grüße
Wolfram
 
Hallo Wolfram,

ich habe natürlich auch keine Erklärung parat, was da in der Radiomaster vorgeht. Es kann mit dem Timing von Polling und Sensorantworten zu tun haben oder etliche andere Gründe haben. Dass keine Warnmeldung kommt, ist allerdings klar, denn wenn er von vornherein keine Telemetriedaten hat, meckert er auch nicht, wenn man ihn ausschalten will, da die Telemetriedaten ja der Indikator sind, dass der Empfänger noch eingeschaltet ist.

Die Geschichte mit dem Verarbeiten von S-Port Sensordaten in EdgeTX wird ab Version 2.9 ohnehin Geschichte sein. Das ist wohl so eine Art Relikt, das eigentlich "gar nicht da sein" sollte und mit 2.9 entfernt wird. Andererseits besteht die Chance, dass die Verarbeitung der M-Link Telemetriedaten direkt in EdgeTX integriert wird, dann bräuchte man den Konverter ohnehin nicht mehr. Ich habe da in den letzten Wochen etliche Testversionen durchgenudelt.
 
Hallo Reinhardt,
danke, ja ist klar und Telemetriedaten wurden wohl nicht durchgereicht oder vielmehr vom Sender nicht angenommen und verarbeitet, obwohl der Konverter korrekt geblinkt und damit wohl die Sensor Signale korrekt erhalten hat. Daher ist die fehlende Warnmeldung beim Ausschalten auch klar.
Anyway, dann muss ich halt solange 2.8.1 mit dem "alten D-Protokoll Konverter" drauf lassen und kann nur hoffen, dass die Integration in EdgeTX erfolgt. Sonst bleibe ich halt bei dem altbewährten Konverter :-) und dem jetzigen Softwarestand, reicht für mich eh vollkommen aus.
Ist ja schön dass es trotzdem funktioniert, denn auf das interne Multimodul möchte ich für M-Link nicht ausweichen. Gründe gibt es genug.......
Danke nochmal für all deine Mühe und keep us posted :-)
viele Grüße
Wolfram
 

kalle123

User
Hallo, dann will ich mich auch nochmal melden.

Hab die ATTiny841 Konverter auf die aktuelle Variante 2 (MLink_SPort) 'umgebaut'.

Obsolete Leiterbahn angebohrt und 'pin2' >> FrSky gelegt und mit Epoxy fixiert.

3.jpg

Und weil der Lötkolben schon mal warm war ....

1.jpg

Das wäre eine Möglichkeit ohne SMD. Auch ziemlich kompakt.

Dann hab ich jetzt durch Zufall raus bekommen, warum ich mit meinem USBasp immer die Problemchen beim flashen hatte. USB musste nach jedem Befehl (bei ATTiny841) abgestöpselt und wieder angestöpselt werden.

Es fehlte der Jumper JP3 für SCK. Nun muckt der USBasp nicht mehr. ;)

Bildschirmfoto_2023-03-26_19-49-28.png

Reinhardt, ich werde mit EdgeTX 2.8 nicht warm, bin wieder zurück auf 2.7.1. Der ganze Menüaufbau am Senderdisplay an meiner X10 sagt mir einfach nicht zu. Möchte aus dem Grund auch nicht auf 2.9 spekulieren. Hoffe, du schaffst es noch, die 'final' raus zu bringen.

Grüße - KH
 
Reinhardt, ich werde mit EdgeTX 2.8 nicht warm, bin wieder zurück auf 2.7.1. Der ganze Menüaufbau am Senderdisplay an meiner X10 sagt mir einfach nicht zu. Möchte aus dem Grund auch nicht auf 2.9 spekulieren. Hoffe, du schaffst es noch, die 'final' raus zu bringen.

Grüße - KH
Tja, so unterschieden sind die Geschmäcker. Ich finde die zusammengefassten Menüs wesentlich besser als die lineare Struktur, wo alles auf einer Ebene ist.

A propos "final", ich wüsste momentan nicht, was ich ändern sollte, sprich die Version, die Ihr habt, ist sozusagen die "final". Außer es kommen Rückmeldungen, dass irgendwas klemmt. Ansonsten werde ich die jetzige Version irgendwann einfach 2.0 nennen, das ist dann die Basis, falls doch noch Änderungen kommen sollten.
 
Hallo Kalle,
nur mal mal ne Frage, warum brauchst Du auf der SOP14 Platine in #314 für die Konverter Variante 2 die zwei Wiederstände und die zwei anderen Bauteile.
Spannungsregulierung ? Wenn man die SOP14 Platine mit dem ATtiny841 ins HFMG3 implementiert und da die Spannung abgreift sind es ja nur die 3,3V Versorgungsspannung für den Konverter oder hab ich da was übersehen ?
Grüße
Wolfram
 

kalle123

User
Hallo Wolfram.

Eigentlich braucht es da nur den 100 nF Kondensator zwischen Vcc und GND und einen Widerstand, wo RST (reset) auf Vcc auf 'high' gehalten wird. Da hab ich einen 10 k drin. Zusätzlich hab ich dann noch die LED mit nem passenden Vorwiderstand reingepackt, ich hab es gerne, wenn ich sehe, dass das Flashen ok war und Reinhardts Code läuft.

Grüße - KH ;)

PS. Schau dir doch einfach mal die Beschaltung hier an.
Das war auch Reinhardts Einstiegsplatine mit dem ATTiny 841, wenn ich recht erinnere. Nur gibt es die Dinger nicht mehr. Einfach von re nach li schauen. Kondensator, ATTiny, RESET high und LED. Danach weiter re kommt nur noch die USB Schnittstelle mit 'Zubehör'.
 
Ansicht hell / dunkel umschalten
Oben Unten