VarioGPS-Sensor

14 Nov 2017 09:57 #7 von VOBO
Ich habs mal an einem vorhandenen RCT-Vario ergänzt und den neuen Code geflasht.

Leider erkennt der Sender das Vario dann nicht mehr.
Alter Code wieder eingespielt und es läuft.

Irgendwas muss da noch faul sein.

Gruß Volker

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

15 Nov 2017 10:17 #8 von nightflyer88
Ok, also habe gerade nochmals getestet, und bei mir geht alles. BMP280 wird erkannt, GPS läuft auch.

Wenn du ein RCT-Vario verwendest, hast du eine falsche Hardware. Das EX Signal wird dort an einem anderen PIN ausgegeben.
Die Hardware muss identisch zum RCT-GPS sein: www.rc-thoughts.com/jeti-gps-sensor/

Wenn du per Jetibox auf den Sensor zugreifen kannst, solltest du mit "Reset defaults" die Standartwerte setzten. Evtl. musst du im Sensormenü die Telemetriesensoren neu laden.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

15 Nov 2017 14:27 #9 von VOBO
Ok.
Was muss ich denn im Code ändern damit es mit der RCT-HW geht?
Oder geht das grundsätzlich nur durch umlöten?
Muss auch ein GPS angeschlossen sein?
Ich habe ja keines.

Gruß Volker

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

15 Nov 2017 15:30 - 15 Nov 2017 15:36 #10 von onki
Hallo Volker,

so wie ich das sehe besteht zwischen dem Vario und dem GPS von Tero ein gewaltiger Unterschied. Das GPS nutzt den Hardware UART wogegen das Vario über Softserial läuft zur Übertragung der TM-Daten an den Empfänger.
Du musst deine Hardware so ändern das der Telemetrieanschluss über RX/TX (mit Widerstand) am Arduino läuft, dann sollte es auch mit dem zusätzlich an A4/A5 (I2C) angeschlossenen Drucksensor klappen.

Wie schon gesagt finde ich die Projekte von Tero super aber für jeden Sensor ein extra Port geht bei mir gar nicht. Daher bin ich bei OxS gelandet.
Dort ist es so gelöst dass die Telemetriedaten immer über Softserial über einen definierbaren I/O geht und das GPS in einem Mischbetrieb aus UART und Softserial läuft (Pin6 bzw., Rx).
Das mag daran liegen das das GPS nur am Anfang initialisiert wird (Baudrate) und der Arduino dann nur noch Daten empfängt.

Gruß
Onki

Gruß aus dem Nordschwarzwald
Rainer aka Onki
www.onki.de
gepostet unter Verwendung von 100% recycelter Elektronen.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

15 Nov 2017 17:18 #11 von VOBO
So, neue Erkenntnisse.
Hab jetzt den Anschluß für den Empfänger umgelötet.
War mir nicht klar, das du da einen anderen Weg gegangen bist.
Ich hatte zunächst das alte Vario von Tero mit deinem verbesserten Code (von Tero) aktualisiert und das hat funktioniert.

Ich dachte du hättest auch auf dieser HW dein verbessertes Vario und schließlich auch das GPSVario aufgebaut.

Jetzt geht schon mal was. Vario und Spannungsmessungen werden erkannt und funktionieren prinzipiell auch.
Aber irgendwas stimmt mit den analogFaktoren oder der Erfassung bzw. Weiterleitung (im Jetiprotokoll) noch nicht.

Wenn ich so rechne wie angegeben ist die Spannung im Sender viel zu klein.
Für die Spannung Voltage1 habe ich mich mal rangetastet:
R1 = 11970
R2 = 6790
Vref =3306
ergibt nach deiner Rechnung einen Faktor von 0,1121.

Tatsächlich stimmt die Spannung im Display aber nur mit einem Quotienten von 1,112. Da ist irgendwo noch ein Faktor 10 verbuddelt.
jetiEx.SetSensorValue( ID_V1, analogRead(PIN_V1) / 1,112);

Bitte noch mal nachschauen wo es da klemmt.

Nach meiner Rechnung müsste ich pro Step am Wandler 8,92mV im Display erhalten
wären bei 1024 Steps dann 9,134 Volt, dies entspricht meiner Auslegung.

Gruß Volker

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

15 Nov 2017 17:47 - 15 Nov 2017 17:51 #12 von FuniCapi
Was hast du den beim Parameter precision bei der JETISENSOR_CONST sensors[] PROGMEM array Definition angegeben?
Bei precision 0 kann man den Wert bei jetiEx.SetSensorValue direkt übergeben.
Bei precision 1 bzw. 2 muss bei jetiEx.SetSensorValue der Wert mal 10 bzw 100 gerechnet werden.
Der Grund ist weil die Werte als Ganzzahlen übertragen werden und erst im Sender wieder entsprechend der precision durch 10 bzw. 100 geteilt werden.

Eigentlich könnte das auch gleich in der Library gemacht werden, dass die Werte automatisch entsprechend der precision multipliziert werden.

Gruss Lukas

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.129 Sekunden

Impressum