DIY Frsky GPS mit Arduino

Status
Nicht offen für weitere Antworten.

MarenB

Runter kommen sie immer!
#41
Ein Hoch auf die Gleitzeit...hab heute morgen noch schnell was testen können :)

- den Emulator kann ich mit 10 Hz laufen lassen, das stresst den Arduino vielleicht, führt aber nicht zur Arbeitsverweigerung
- ein GPGGA-Satz aus dem Emulator wird nicht erkannt, wenn ich ihn nicht mit LF und/oder CR abschließe
- gleiches gilt für einen GPGGA-Satz aus dem echten GPS
- sende ich diesen echten GPGGA-Satz mit einem CR und/oder LF am Ende, dann wird er erkannt, und zwar egal, ob einmalig gesendet, oder mit 1, 2, 5 oder 10Hz.

Was ich nocht nicht verstehe: laut HTerm sendet das GPS den GPGGA-Satz aber mit CR und LF!

Möglicherweise stimmt das Timing nicht? Oder stören die anderen drei Sätze, die vom GPS noch mitgesendet werden?! Die werde ich heute Abend mal abschalten, sollte das hlefen, bleibt zu hoffen, das dem FY31AP GPGGA reicht.
 

MarenB

Runter kommen sie immer!
#42
Tadaaa....es folgt die Auflösung des Problems:

- es sind nicht die anderen Sätze, die noch gesendet werden
- es ist nicht die Frequenz von 10Hz
- es sind nicht die Steuerzeichen, hier war ich nur in eine ASCII-Falle getappt
- die Daten vom GPS sind vollkommen in Ordnung und werden inhaltlich vom Arduino einwandfrei verstanden!
--> das Problem ist elektrischer Natur :mad:

Dieser blöde FY 31-AP hat eine so fette Eingangsfilterung, dass die Flanken des Signals massiv verschliffen werden. Das sieht schon fast nach Sägezahn aus. Alle meine UART-USB-Adapter kommen damit klar, nur der ATmega selber wohl nicht.
Ich kann Daten mit dem PC aufzeichnen und dann über den Adapter senden, das versteht er. Kommen die gleichen Daten direkt vom GPS, versteht es sie nicht....
Kaum zieht man den AP ab und versorgt das GPS extern mit Spannung stimmen auch die Flanken wieder. Aaargh!!! Das hat mich jetzt 1,5 Tage gekostet und ich war die ganze Zeit auf dem Holzweg :eek:

Ich hoffe, ich finde irgendwo noch einen passenden Op-Amp...
 

Rangarid

Erfahrener Benutzer
#43
Habe mal eine alternative Implementierung für das GPS Parsen eingebaut. Es handelt sich um die GPS Lib von kha für AQ:
https://github.com/AeroQuad/AeroQuad/tree/master/Libraries/AQ_Gps

Die Lib kann NMEA, Mediatek und UBX. Desweiteren ist keine GPS Konfiguration mehr notwendig, da sowohl Protokoll als auch Baudrate automatisch erkannt werden können. Damit muss man nurnoch einstellen, ob Frsky_X oder FRSKY_D.

Code wird heute Abend getestet. Danach lad ich ihn hoch.
 

Rangarid

Erfahrener Benutzer
#44
So, Code ist im Github.

Habe Frsky_D und Frsky_X getestet und beide sollten funktionieren.

Unterstützt wird nun Ublox, NMEA und das Mediatek Binary Format. Sowohl Baudrate als auch Protokoll werden automatisch erkannt. Man muss also kein GPS mehr konfigurieren.

Tinygps ist komplett rausgeflogen.
 

MarenB

Runter kommen sie immer!
#45
Tadaaa....es folgt die Auflösung des Problems:

- es sind nicht die anderen Sätze, die noch gesendet werden
- es ist nicht die Frequenz von 10Hz
- es sind nicht die Steuerzeichen, hier war ich nur in eine ASCII-Falle getappt
- die Daten vom GPS sind vollkommen in Ordnung und werden inhaltlich vom Arduino einwandfrei verstanden!
--> das Problem ist elektrischer Natur :mad:

Dieser blöde FY 31-AP hat eine so fette Eingangsfilterung, dass die Flanken des Signals massiv verschliffen werden. Das sieht schon fast nach Sägezahn aus. Alle meine UART-USB-Adapter kommen damit klar, nur der ATmega selber wohl nicht.
Ich kann Daten mit dem PC aufzeichnen und dann über den Adapter senden, das versteht er. Kommen die gleichen Daten direkt vom GPS, versteht es sie nicht....
Kaum zieht man den AP ab und versorgt das GPS extern mit Spannung stimmen auch die Flanken wieder. Aaargh!!! Das hat mich jetzt 1,5 Tage gekostet und ich war die ganze Zeit auf dem Holzweg :eek:

Ich hoffe, ich finde irgendwo noch einen passenden Op-Amp...
So, falls noch mal wer anderes auf dieses Problemchen stoßen sollte, ich habe es inzwischen lösen können:
http://fpv-community.de/showthread....k-Spezialisten&p=796688&viewfull=1#post796688
 

berlinmille

.: fpv addicted :.
#46
Brauche ich für die X-Empfänger zusätzlich noch die S.Port Library oder läuft das schon vollständig mit dem Code von GitHub?
 

berlinmille

.: fpv addicted :.
#48
OK, thx, hatte ich nun auch gesehen. Irgendwie kommt an meiner Taranis immer noch nichts an.

An meinem Pro Mini V2 hab ich vom X8R S.Port kommend das Signal auf D9, dazu V+ und GND dran.
Das GPS hängt am RX, V+ und GND und bekommt auch einen Fix.

Was muss ich in der config.h genau ändern? Habe aktuell nur das "#define FRSKY_D" in "#define FRSKY_X" geändert und dann den Sketch reingeladen.
 

Rangarid

Erfahrener Benutzer
#49
Was macht denn die LED am Arduino? Die müsste am Anfang beim Suchen des Protokolls recht schnell blinken, dann aufhören zu blinken wenn es das Protokoll gefunden hat und dann langsam blinken für ein paar Sats und dauerhaft leuchten bei vielen Sats.
 

berlinmille

.: fpv addicted :.
#50
Die LED blinkt dauerhaft und unverändert ca. alle 0,5 Sekunden. Das ganze ist wie folgt angeschlossen. Vielleicht hab ich da noch etwas falsch gemacht?!

IMG_20150517_215515.jpg
 

berlinmille

.: fpv addicted :.
#52
Hab leider nur das eine GPS zum testen. An meinem FY31 funzt es zumindest problemlos.

Braun und weiß hab ich nur zum Aufspielen der Sketche mit dran, geht dann zum FTDI-Adapter. Beim Testen ist das aber nicht verbunden.
 

berlinmille

.: fpv addicted :.
#54
Habe das GPS bislang nur alleine dran, da ich das Problem von Maren erstmal umgehen wollte.
Anscheinend ist wohl mein Arduino-Board hinüber, da es schnell heiß wird und nur noch 0V ausgibt. Habe gerade nochmal ein weiteres gelötet und ich bin mir sicher, dass das der Fehler war und das es morgen funktionieren wird :)
 

Rangarid

Erfahrener Benutzer
#55
Habe die Bibliothek für das X-Serie Protokoll falsch verwendet, hab jetzt mal ein Update hochgeladen. Bitte die neue Version verwenden mit X-Serie. Für D-Serie gibt es soweit nichts neues, außer dass man jetzt die Senderate für die GPS Daten konfigurieren kann. Default steht auf 3hz.
 

MarenB

Runter kommen sie immer!
#56
Hat vielleicht schon jemand versucht, den Code auf einem MinimOSD laufen zu lassen?

Ich würde den gerne mit der MinEasyOSD-Firmware kreuzen, da ich das als "Schnellwechsel-OSD" einsetze.
 

MarenB

Runter kommen sie immer!
#58
Hi Rangarid,

mein DIY-GPS gibt Daten auf der ID 0x400 (default: Temp1) aus. Ich kann mir das dem Quellcode nach nicht erklären und wundere mich, welche Information da drinstecken könnte...hast du eine Erklärung?
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten