FrSky DR4-II RSSI an Quanton PWM Input mit ATTiny

cnwund

Erfahrener Benutzer
#21
Also nochmals zusammengefasst. Der PWM Stream ist das Signal eines einzelnen Kanales / Servos. Ein PPM Stream setzt sich aus vielen einzelnen ( meist 8 ) PWM Singalen zusammen und wird quasi anhand der "Ups" und "Downs" der einzelnen PWM Signale ausgewertet.

Du musst doch in der Taranis gar kein eigenen Input mehr erstellen, kannst du den Mischer gleich dafür nutzen oder? Die Inputs werden doch zur Vorvermischung genutzt und anschließend im Mixer weiter verarbeitet. Wenn aber bei den Inputs sowieso alles auf Standard bleibt, dann kannst du es so lassen.

Warum muss man einen neuen Kanal dafür nehmen?

Wenn man die PPM Ausgabe am D4R nutzt, muss man doch den zweiten Kanal aus den zweiten Input der naze legen. Das machst du aber nicht, sondern bei dir liefert der Sender direkt, wie auch immer, das RSSI Signal als PWM im PPM Stream ab? Und dann sagst du einfach nur, welchen PPM Slot er für das RSSI Signal nimmt, oder? Das geht mit FrSky? Kannte das bisher nur vom EzUHF. Ist das irgendwo durch FrSky vermerkt?

Danke für eure Antworten, am Anfang ist dieses Thema ziemlich verwirrend! ;-)
 

Rangarid

Erfahrener Benutzer
#22
EzUHF macht das genauso - da kannst du das RSSI Signal einfach auf einen Kanal legen. Es verhält sich dann wie ein Servo PWM/PPM Signal (zwischen 1000µs und 2000µs)
Ah jetzt versteh ich auch, warum kein Filter und kein OSD mit dem RSSI vom EzUHF klarkommt. Normal wird ja immer versucht PWM oder analoge Spannung zu lesen. Das macht natürlich Sinn.
 

Rangarid

Erfahrener Benutzer
#23
Wenn man die PPM Ausgabe am D4R nutzt, muss man doch den zweiten Kanal aus den zweiten Input der naze legen. Das machst du aber nicht, sondern bei dir liefert der Sender direkt, wie auch immer, das RSSI Signal als PWM im PPM Stream ab? Und dann sagst du einfach nur, welchen PPM Slot er für das RSSI Signal nimmt, oder? Das geht mit FrSky? Kannte das bisher nur vom EzUHF. Ist das irgendwo durch FrSky vermerkt?
Die Art wie RSSI ausgegeben wird ist einfach bei jedem System anders. Manche geben einfach 0-3.3v aus, Frsky gibt bei 100% 110khz raus, bei 0% entsprechend weniger und EzUHF gibt 1ms-2ms als Servosignal für 0-100% aus.

Wenn man jetzt RSSI in der Funke hat kann man 0-100% RSSI auf 1-2ms umrechnen und das ganze als Kanal 8 wieder hochschicken. Somit ist Kanal 8 im PPM dein RSSI Signal als Servosignal umgewandelt.

Ist n Feature der Taranis / OpenTX: Du kannst quasi aus beliebigen Werten beliebige Aktionen machen. Dementsprechend z.B. RSSI in einen Servowert umrechnen und auf Kanal 8 mappen.
 
Zuletzt bearbeitet:

lysie

Erfahrener Benutzer
#24
Also wenn man die PPM Ausgabe des D4R nutzt - dann hat man normalerweise 8 Kanäle auf Pin 1 (als PPM) und den RSSI Wert auf Pin 2 ( als pwm). Da der PWM Wert aber mit 110khz zu schnell ist um ihn als normales Signal auszuwerten muss man ihn meistens erst in ein Analog Signal umwandeln ( RC Filter).

Was ich jetzt gemacht habe:
https://dl.dropboxusercontent.com/u/18484673/IMG-20150329-WA0017.jpg
https://dl.dropboxusercontent.com/u/18484673/IMG_20150330_100439.jpg
https://dl.dropboxusercontent.com/u/18484673/IMG_20150330_100505.jpg
https://dl.dropboxusercontent.com/u/18484673/IMG_20150330_101649.jpg

In den Opentx kannst du so gut wie jedes Signal als Input verwenden. Also auch sämtliche Telemetriedaten. Darunter fällt auch der RSSI Wert. Diesen Sende ich dann wieder über den Channel6 als normales Servo Signal nach oben. Von der Naze kann dies dann wieder ganz normal ausgewertet werden.
https://github.com/cleanflight/cleanflight/blob/master/docs/Rssi.md
RSSI via PPM channel
In meinem Fall habe ich jetzt hier set rssi_channel = 6

Und ja ich kannte das bisher auch nur von EzUHF... Bin aber jetzt durch Zufall drauf gekommen dass es mit OpenTx auch geht.
 
Zuletzt bearbeitet:

cnwund

Erfahrener Benutzer
#25
Hallo lysie,

besten Dank für deine ausführliche Antwort. Bitte steinige mich nicht, wenn ich nochmals diesbezüglich eine Frage habe.
Erstmals finde ich es absolut schwachsinnig, dass es hierbei keinen Standard gibt, welcher bsp. immer das RSSI als z.B PPM Stream ausgibt. So hätte jeder Hersteller die Möglichkeit seine Produkte entsprechend zu designen und es könnte verhindert werden, dass jeder sein eigenes Süppchen kocht.

Wie auch immer, soweit habe ich alles verstanden bis auf eine Sache.

Du schreibst, dass der PPM Mode, 8 Kanäle ausgibt und auf dem Pin 2 lediglich der PWM Wert des RSSI. Das steht ja auch in der Anleitung. Hast du aber auch ein Kabel von Pin2 zur Naze verlegt? Warum kannst du einfach in der Funke Kanal 6 ansteuern, hier sprichst du doch wieder den PPM Stream des Empfängers und nicht dem Pin2 des Empfängers ... ?

Ich verstehe das noch nicht, Entschuldigung für diese ganzen Fragen ...
 

DerCamperHB

Erfahrener Benutzer
#26
Um Euch ganz zu verwirren, PPM und PWM wurden hier Falsch erklärt
PPM ist Puls Pause Modulation, kombination aus Signal und Pausenzeit
PWM ist ein Puls Weiten Modulation, hier entscheidet die Signallänge, in einer festen Zeitspanne

Im Prinzip das Gleiche, da immer die Signallänge entscheidet.

PPM ist aber nicht das Summensignal, sondern das einzelne Servosignal, ein CPPM ist ein Summensignsl, ein Kombiniertes Puls Pausen Modulations Signal, es wird nur gerne mit PPM abgekürzt.

Das Servosignal wird gerne mit PWM bezeichnet da hier eben ein Signal in der Länge verändert wird, richtig ist das aber PPM

PWM wird zum Ändern einer Efektivspannung genutzt, z.B. zum Dimmen von Lampen, oder als Spannungsausgang für RSSI anzeige, da die volle 5/3.3V aber nur Teilzeit anliegt, der Rest 0V können einige Osd nichty mit anfangen, mit dem "Filter" wird nur die Spannung geglätet, das die über den ganzen Zeitraum einigermassen gleichmässig ist.
Das gleiche passiert bei Ubecs und Gleichspannungsnetzteilen, die Welligkeit bezeichnet dabei wie gut die Spannung gehalten wird


Fazit.
PPM und PWM ist technisch das selbe, wird aber für 2 unterschiedliche Anwendungen genutzt, und hat da unterschiedliche Bezeichnungen
 

lysie

Erfahrener Benutzer
#27
Nein, Pin2 des Empfängers habe ich momentan nirgendwo angeschlossen. Lediglich die CPPM ( :)) Leitung ist verbunden.

Im Prinzip gehe ich hier auch den doppelten weg.
Funke sendet - Empfänger empfängt und gibt dabei Rssi und CPPM aus. Empfänger sendet telemetrie (inklusive Rssi) zurück an Sender.
Sender sendet empfangenen Rssi wieder zum Empfänger (diesmal aber als Servosignal auf Kanal 6)
 

cnwund

Erfahrener Benutzer
#28
Hey lysie,
Danke für deine Ausführungen... So ganz habe ich es nicht verstanden, da der Empfänger doch kein rssi in dem ppm stream ausgiebt. Hast du ggf. irgendwo eine Quelle wo ich das nachlesen kann, möchte euch nicht weiter langweilen :) danke
 

Rangarid

Erfahrener Benutzer
#29
Ok pass auf

1. RSSI wird über Telemetrie an die Funke geschickt, das macht sie immer, damit man an der Funke merkt wenn der Empfang weggeht.
2. Intern in der Funke wird über die OpenTX Firmware das RSSI Signal in ein Servosignal umgerechnet. Dabei wird 0-100% auf 1000-2000ms (was dem Servosignal entspricht) umgerechnet.
3. Dieser neue umgerechnete Wert wird über den Mixer auf Kanal 6 gelegt, der wieder zum Empfänger durch das CPPM Signal geht, wie alle anderen Servokanäle eben auch.
4. Im Summensignal des Empfängers ist der durch Funke eingefügte Kanal 6 enthalten, dieser kann dann in der FC ausgelesen werden.

An sich könntest du auch alle Servokanäle einzeln anschließen, dann wäre Servo 6 das RSSI Signal als Servowert. Dadurch dass CPPM aber alle Kanäle enthält, brauchst du da nichts extra aqnscjließen, sondern musst der FC nur sagen, dass RSSI auf Kanal 6 übertragen wird.

Wenn du noch sagst was daran du nicht versteht können wir dir vielleicht leichter helfen ;)
 
Zuletzt bearbeitet:

lysie

Erfahrener Benutzer
#30
Ja normalerweise belegt man ja seine Kanäle mit Schaltern. Wenn du es aber so einstellst wie auf meinen Bildern zu sehen ist, kannst du das Rssi Signal anstatt einer Schalterstellung übertragen. Eine Quelle dazu hab ich leider nicht da ich dazu auch nichts gefunden habe. Es funktioniert aber :)
 

cnwund

Erfahrener Benutzer
#31
Ok pass auf

1. RSSI wird über Telemetrie an die Funke geschickt, das macht sie immer, damit man an der Funke merkt wenn der Empfang weggeht.
2. Intern in der Funke wird über die OpenTX Firmware das RSSI Signal in ein Servosignal umgerechnet. Dabei wird 0-100% auf 1000-2000ms (was dem Servosignal entspricht) umgerechnet.
3. Dieser neue umgerechnete Wert wird über den Mixer auf Kanal 6 gelegt, der wieder zum Empfänger durch das CPPM Signal geht, wie alle anderen Servokanäle eben auch.
4. Im Summensignal des Empfängers ist der durch Funke eingefügte Kanal 6 enthalten, dieser kann dann in der FC ausgelesen werden.

An sich könntest du auch alle Servokanäle einzeln anschließen, dann wäre Servo 6 das RSSI Signal als Servowert. Dadurch dass CPPM aber alle Kanäle enthält, brauchst du da nichts extra aqnscjließen, sondern musst der FC nur sagen, dass RSSI auf Kanal 6 übertragen wird.

Wenn du noch sagst was daran du nicht versteht können wir dir vielleicht leichter helfen ;)
Habe die Taranis gerade nicht zur Hand, gibt es denn bereits eine "Source" die sich RSSI nennt und das geschicke Signal umrechnet? ISt soetwas bereits als Inputsource definiert? Dann würde es Sinn machen, aber ich bin davon ausgegangen, dass soetwas noch nicht existiert und war verwundert woher das RSSI Signal kommt, wenn es egientlich nur von Channel 2 ausgegeben werden kann?
 

Rangarid

Erfahrener Benutzer
#32
RSSI ist intern immer da, egal ob der D4R im PPM Modus ist oder nicht. Über die Telemetrie wird RSSI immer übertragen, am Pin liegt es nur an, wenn du im PPM Modus bist.

Man kann sich RSSI selbst als Input definieren, siehe Screenshots von letzter Seite.
 

cnwund

Erfahrener Benutzer
#34
Ich habe eben euren Vorschlag getestet und tatsächlich, die Telemetrie ist aktiv und ich kann mir auch den Wert davon ausgeben lassen.
Um dies jedoch ganz zu verstehen habe ich noch ein paar Fragen dazu. Ich habe alles so eingestellt und erter Hinweis, dass etwas anders sein muss, war die Ansage der Taranis, dass Telemetrie ankommt. Ein Blick in den Telemetriebildschirm bestätigte mir auch die aktuelle RSSI Signalstärke. Ich habe tatsächlich auch den Channel 6 dafür hernehmen können.

Wenn man sich ganz wenn man ein Modell ausgewählt hat und Exit drückt ist man ja quasi auf dem Hauptbildschirm, der die ganzen Schalterstellungen etc pp anzeigt. Wenn man hierbei Page drückt, gelangt man in das Menü, bei dem man die Servowege aller CHannels sieht. Bei Channel 6 hatte ich auch einen Wert, der sich auch verändert hat, jedoch von dem tatsächlichen RSSI Wert abwich. Wie ist das zu erklären? Das verstehe ich nicht?

Weiterhin möchte ich auch noch wissen, warum Ihr bei Scale 100 ausgewählt habt und im Mixer entsprechend 200 und -100 eingestellt habt. Kann mir das noch jemand erläutern ;-) Ich will es nicht einfach so hinnehmen, sondern verstehen!

Danke & Grüße,
Chris
 

lysie

Erfahrener Benutzer
#35
Der Scale Wert verhält sich etwas komisch aber Scale=100 bedeutet einfach das du den dbm Wert 1 zu 1 weiter leitest. Bei mir hat es mit Scale=100 geklappt. Also 80dbm zeigte 1800 als Servostellung. Also hätte man jetzt von 1-100 dbm einen Servowert von 1501 bis 2000.

Die Werte im Mixer musst du jetzt so anpassen je nachdem wie deine Flugsteuerung den RSSI Wert deutet. Bei Cleanflight/Baseflight ist es so dass hier 1000µs = 0% entspricht und 2000µs = 100%. Wie du das jetzt einstellst ist Geschmackssache. Ich wollte eben das der % Wert dem dbm Wert enstpricht.

Anhand meines Beispiels:

Alter Wert: 1-100 dbm => 1501 - 2000 µs
Mixer Offset -100 1-100 dbm => 1001 -1500 µs
Mixer Gewichtung *200 1-100 dbm => 1001 -2000µs

Edit: Ja die Werte im Channel Monitor stimmen bei mir auch nicht ganz überein - Wichtig ist aber nur dass der % Wert, der von der Naze gelesen wird, übereinstimmt. Ich muss das bei mir auch noch ein wenig feintunen.

Taranis zeigt 90 dbm
Naze zeigt 92%
Taranis Channel monitor zeigt +79,9

Testen kannst du das ganze übrigens wunderbar mit dem Rangetest der Taranis
 
Zuletzt bearbeitet:

DerCamperHB

Erfahrener Benutzer
#37
nein, aber die Taranis rechnet mit +100 und -100, wobei 1500 Mitte/Nullpunkt ist
Durch das Offset -100 wird der Nullpunkt auf 1000 gesetzt, da jetzt der doppelte Weg abgearbeitet werden muss, muss das Gewicht auf 200 gesetzt werden, so wird der Eingangswert verdoppelt
 

cnwund

Erfahrener Benutzer
#38
Hallo zusammen,
Kurzes Update der aktuellen Situation - mein naze32 kam heute und ich sehe auch einen Ausschlag in der naze32 gui. Erstaunlicherweise ist es auch einigermaßen genau nur bleibt der RSSI Wert auf dem ursprünglichen sobald der Sender ausgeschaltenw wird. Es kann also nie 0 erreichen bzw. habe ich dies leider nicht geschafft. Ihr?
 

Rangarid

Erfahrener Benutzer
#39
Du musst dann ein Failsafe für den Kanal im Empfänger einstellen. Wenn der Sender abgeschaltet wird geht der RX ins Failsafe, da kannst du dann dem Kanal der das RSSI übergibt quasi den Nullwert geben.
 
FPV1

Banggood

Oben Unten