uBlox Neo 6M konfigurieren

OP #7956291
Lesenswert?

Hallo,

mein Neo 6M spuckt bspw. den GPRMC nicht mehr aus.

Ich bin auf die Konfigurationsmöglichkeit des Moduls aufmerksam geworden, möchte aber nicht uCenter installieren. Gibt es die Möglichkeit, das Ding auf der Kommandozeile zu konfigurieren?

Ich würde gerne die Baudrate ändern und die ausgespuckten NMEA-Sätze auch.

#7956337
Lesenswert?

Sofern Du eine Datenverbindung (gewöhnlich seriell) zum Modul hast, kannst Du es ganz normal über diese Datenverbindung mit der korrekten Baudrate umkonfigurieren. Details stehen im Datenblatt. Das geht natürlich auch per Kommandozeile, sofern man die erzeugte Konfigurationsdatei per copy zum Modul schickt. Ich mache so etwas täglich im Auto, um die halbe Wettersonde unter der Frontscheibe als Gps-Empfänger mit der passenden Baudrate und den richtigen Einstellungen zu konfigurieren.

MfG. Andreas

OP #7956431
Lesenswert?

Aktuell hängt es an einem ArduinoNano (SoftSerial), oder soll es direkt an eine serielle Leitung geklemmt werden? Ich hätte einen USB-TTL-Adapter hier. Oder taugt nur ein FTDI-Adapter? Tschuldigung schon mal für die blöde Frage :D

Als Datenblatt habe ich das hier gefunden: https://content.u-blox.com/sites/default/files/products/documents/NEO-6_DataSheet_%28GPS.G6-HW-09005%29.pdf Da möchte ich eigentlich auf Seite 22 die Standardeinstellungen von Seriell Port 1 Output wiederherstellen.

Die einzige Konfigurationsmöglichkeit sehe ich auf Seite 11, die ist aber sehr spärlich...

Hier (https://github.com/orgs/espruino/discussions/1021) habe ich mal was von so einem Befehl gelesen: $PUBX,40,RMC,0,0,0,047 Geht das eher in die richtige Richtung?

Sonst bin ich noch über Kommandos wie "UBX-CFG-..." gestoßen. Aber immer ohne Erklärung, WIE man nun die gewünschte Konfiguration definiert.

#7956432
Lesenswert?

Eine schon vorhandene Verbindung ist ok. Das Teil kann laut Datenblatt sogar Usb; seriell genügt ein billiger Usb-Serial-Wandler mit 3,3-V-Pegel. Ansonsten siehe Tabelle 6 mit den Konfigurations-Pins. Allein darüber lässt sich bereits eine sinnvolle Voreinstellung für die seriellen Daten vornehmen. Sofern das Beschalten keine Mühe macht, sollte das die einfachste Methode sein. Ältere Chips konnten das nicht, die mussten mit Daten umgestellt werden.

MfG. Andreas

: Bearbeitet durch User
OP #7956447
Lesenswert?

Ja, dort habe ich von diesen UBX-CFG-Kommandos gelesen, stochere aber weiterhin im Dunkeln...

Nehmen wir mal an, ich möchte so eine PUBX,00-Message wie auf Seite 68 an das Modul senden. Wie geht das konkret? Im Arduino-seriellenMonitor bei der Inputzeile? Mit tio aufs entsprechende /dev/tty? echo "$PUBX,00*33" | tio -b 9600 /dev/ttyUSB0

Ich stehe da echt wie der Ochs vorm Berg.

: Bearbeitet durch User
#7956455
Lesenswert?

Am besten kannst du einmal Ucenter installieren, und dort die benotigte config einstellen. Ucenter gibt auch die exacte hex commandos von jeden config. When ihre NEO M6 module flash memory hat, kansst du einfach die gewunschte config abspeicheren. When nicht, muss bei jeden boot neu die config eingestellt werden. Bei meinen GPS-Speed logger wird bei jeden boot die config neu eingestellt (Ublox hat eine serielle schnittstelle nach ESP32). Forteil : functioniert immer, auch bei GPS module ohne flash. Mein project mit source : https://github.com/RP6conrad/ESP-GPS-Logger/blob/master/Ublox.h

OP #7956997
Lesenswert?

Ich möchte es vorerst noch ohne uCenter probieren.

Hier (https://content.u-blox.com/sites/default/files/products/documents/u-blox6_ReceiverDescrProtSpec_%28GPS.G6-SW-10018%29_Public.pdf?utm_source=en%2Fimages%2Fdownloads%2FProduct_Docs%2Fu-blox6_ReceiverDescriptionProtocolSpec_%28GPS.G6-SW-10018%29.pdf) steht auf Seite 82 etwas von

1
$PUBX,40

Damit soll man wohl die einzelnen NMEA-Sätze (de-)aktivieren können.

Soweit so gut - nur: wie bilde ich die Checksumme!?

#7957001
Lesenswert?

Norbert schrieb:

Ich möchte es vorerst noch ohne uCenter probieren.

Warum sträubst du dich gegen ein passendes Werkzeug, mit dem du nicht alles von Hand zusammenbasteln musst?

Soweit so gut - nur: wie bilde ich die Checksumme!?

Ausrechnen, suchst du "Checksum NMEA0183". z.B. https://de.wikipedia.org/wiki/NMEA_0183#Datens%C3%A4tze Die Prüfsumme ist eine XOR-Verknüpfung aller Zeichen zwischen '$' und '*'. Möglicherweise ist die aber auch gar nicht erforderlich. Was sagt das Datenblatt?

: Bearbeitet durch User
OP #7957018
Lesenswert?

Rainer W. schrieb:

Warum sträubst du dich gegen ein passendes Werkzeug, mit dem du nicht alles von Hand zusammenbasteln musst?

Ich habe gerade keine Lust, mich mit ner Win-Software herumzuplagen. Arbeitsrechner/VM/dualboot sind gerade nicht verfügbar.

suchst du "Checksum NMEA0183". z.B. https://de.wikipedia.org/wiki/NMEA_0183#Datens%C3%A4tze Die Prüfsumme ist eine XOR-Verknüpfung aller Zeichen zwischen '$' und '*'. Möglicherweise ist die aber auch gar nicht erforderlich. Was sagt das Datenblatt?

Danke, "NMEA0183" war ein großartiges Stichwort und hat mich zu diesem Checksummenrechner geführt: https://alekunderwater.github.io/nmea0183_checksum_calculator.html

Im Datenblatt ist nur ein Beispiel gegeben, wie man GLL auf DDC anschaltet und sonst ausschaltet (mit Checksumme 5D).

#7957021
Lesenswert?

Der faule Mensch nimmt ein Programm:

1
NMEA-Checksum.
2
Enter NMEA-Command:
3
$PUBX,40
4
$PUBX,40*37
5
$PUBX,40*37$0D$0A
6
Enter NMEA-Command:

und kopiert sich das Kommando mit Prüfsumme dort raus. Für gelegentliche Anwendungen reicht das aus.

MfG. Andreas

: Bearbeitet durch User

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren