USB-GPS-Dongel: Mit welchem Programm auslesen?

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
desputin
Beiträge: 645
Registriert: 24.04.2015 17:16:34

USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von desputin » 16.05.2019 08:25:38

Hallo Ihr,
ich habe ein USB-Gerät für den GPS-Emfpang gekauft, es heißt so: Ublox7.
Nun möchte ich die GPS-Daten an einem mobilen Debian-System mit diesem USB-Gerät auslesen.
Ich habe schon gesehen, daß man mit

Code: Alles auswählen

sudo cat /dev/gps0
sudo cat /dev/ttyACM0
irgendwelche Rohdaten auslesen kann.
Meine Frage: Gibt es dafür komfortable Scripte/Konsolenprogramme? Was ich machen will, ist, die jeweiligen GPS-Daten in einer Text-Datei zu schreiben in Echtzeit - und am liebsten auf eine Video-Datei, die vom System aufgezeichnet wird, also quasi ins Bild "eingebrannt"....

Aber dafür brauche ich aus dem Wust an Rohdaten, die das Teil ausspuckt erstmal die eigentlichen aktuellen Koordinaten...
Wie würdet Ihr das machen, habt Ihr da Erfahrungen?
Viele Grüße desputin
https://www.neoliberalyse.de - Über die Ökonomisierung aller Lebensbereiche. |
https://www.heise.de/tp/features/Der-Ka ... 33254.html - Diskussion um hormonelle Verhütung

MSfree
Beiträge: 4555
Registriert: 25.09.2007 19:59:30

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von MSfree » 16.05.2019 08:52:45

desputin hat geschrieben: ↑ zum Beitrag ↑
16.05.2019 08:25:38
Was ich machen will, ist, die jeweiligen GPS-Daten in einer Text-Datei zu schreiben in Echtzeit - und am liebsten auf eine Video-Datei, die vom System aufgezeichnet wird, also quasi ins Bild "eingebrannt"....
Wirklich? In einer Videro-Datei? Oder in ein Bild?

Mal sehen:

Länge, Breite und Höhe ergeben brauchbar formatiert 40 Bytes an Daten.
Ein JPEG mit sagen wir mal 640x480 und "eingebranntem Text benötigt ca. 25kByte, also schon die 300-fache Datenmenge. Mit einem Video geht das nochmal Faktor 10 hoch.

Meinst du wirklich, daß es sinnvoll ist, 40 Bytes auf 25-250kByte aufzublähen?

Das ist übrigens auch der Grund, warum Screenshots und Handyphotos mit Textmeldungen hier im Forum so unbeliebt sind.
Ich habe schon gesehen, daß man mit

Code: Alles auswählen

sudo cat /dev/gps0
sudo cat /dev/ttyACM0
irgendwelche Rohdaten auslesen kann.
Und, schon probiert?

Ich weiß nicht, was da rauskommt. Wenn du Glück hast, ist das simpler ASCII-Text.

Benutzeravatar
Lord_Carlos
Beiträge: 4530
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von Lord_Carlos » 16.05.2019 08:59:12

gpsd + gpspipe in eine Datei schreiben. Dann wenn du nicht mobil bist kannst du es in eine Videodatei brennen. Koennte mir sonnst vorstellen das Video encoden gut CPU / Strom verbraucht.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
kalle123
Beiträge: 775
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von kalle123 » 16.05.2019 13:02:30

Der 'Wust von Rohdaten' beinhaltet die im GPS Modul vorkonfigurierten NMEA sentences.

Wie hier zu sehen.

Code: Alles auswählen

$GNGLL,5111.28939,N,00627.70516,E,105129.00,A,D*77
$GNRMC,105130.00,A,5111.28934,N,00627.70533,E,0.047,,160519,,,D*65
$GNVTG,,T,,M,0.047,N,0.087,K,D*34
$GNGGA,105130.00,5111.28934,N,00627.70533,E,2,10,1.05,58.8,M,46.5,M,,0000*71
$GNGSA,A,3,02,06,12,24,25,32,29,,,,,,1.94,1.05,1.63*1C
$GNGSA,A,3,81,88,79,,,,,,,,,,1.94,1.05,1.63*17
$GPGSV,3,1,10,02,36,084,41,06,21,043,34,12,54,077,35,14,36,279,26*7D
$GPGSV,3,2,10,24,20,147,35,25,81,308,23,29,49,202,33,32,33,256,25*7C
$GPGSV,3,3,10,36,27,149,38,49,31,182,*7B
$GLGSV,3,1,11,70,11,268,,71,19,318,22,72,07,004,19,73,03,301,*63
$GLGSV,3,2,11,78,08,116,22,79,57,100,34,80,60,319,,81,62,074,39*6E
$GLGSV,3,3,11,82,44,171,12,83,00,191,,88,22,030,17*5C
$GNGLL,5111.28934,N,00627.70533,E,105130.00,A,D*75
$GNRMC,105131.00,A,5111.28932,N,00627.70547,E,0.019,,160519,,,D*6A
$GNVTG,,T,,M,0.019,N,0.036,K,D*35
$GNGGA,105131.00,5111.28932,N,00627.70547,E,2,10,1.05,58.8,M,46.5,M,,0000*75
$GNGSA,A,3,02,06,12,24,25,32,29,,,,,,1.94,1.05,1.63*1C
$GNGSA,A,3,81,88,79,,,,,,,,,,1.94,1.05,1.63*17
$GPGSV,3,1,10,02,36,084,42,06,21,043,35,12,54,077,35,14,36,279,26*7F
$GPGSV,3,2,10,24,20,147,35,25,81,308,24,29,49,202,33,32,33,256,25*7B
$GPGSV,3,3,10,36,27,149,38,49,31,182,*7B
$GLGSV,3,1,11,70,11,268,,71,19,318,21,72,07,004,19,73,03,301,*60
$GLGSV,3,2,11,78,08,116,22,79,57,100,35,80,60,319,,81,62,074,39*6F
$GLGSV,3,3,11,82,44,171,14,83,00,191,,88,22,030,18*55
$GNGLL,5111.28932,N,00627.70547,E,105131.00,A,D*71
Die Koordinaten tauchen in div. sentences auf und ich würde empfehlen

- das entsprechende U-Blox Manual mit sehr ausführlicher Dokumentation zu Rate zu ziehen.
https://www.google.com/url?sa=t&rct=j&q ... 80ZXnSYAcG
- mit der U-Center Software (Win Software, ev. über eine VM) das Modul so umzukonfigurieren, dass nur die für dich relevanten NMEA sentences ausgegeben werden.

Damit wird es sehr schnell sehr übersichtlich :wink:
ASUS PRIME X370-A + AMD Ryzen 5-2600, Nvidia GEFORCE GT1030
16GB DDR4-2666, DEBIAN-Buster Xfce

MSfree
Beiträge: 4555
Registriert: 25.09.2007 19:59:30

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von MSfree » 16.05.2019 14:18:08

kalle123 hat geschrieben: ↑ zum Beitrag ↑
16.05.2019 13:02:30
- mit der U-Center Software (Win Software, ev. über eine VM) das Modul so umzukonfigurieren, dass nur die für dich relevanten NMEA sentences ausgegeben werden.
Du kannst den "Wust" auch simpel mit grep oder awk filtern. So, wie ich das sehe, sollte eine Filterung nach $GNGLL reichen, um Länge, Breite und Höhe zu bekommen.

Benutzeravatar
kalle123
Beiträge: 775
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von kalle123 » 16.05.2019 16:53:12

Weiß ja nicht, auf was der Fragesteller raus will, aber erst mal den 'Wust' zu reduzieren, kann ja auch nicht so schlecht sein.

Ne Frage ist auch, wie sieht es mit der Baudrate und der Frequenz aus?

Die GPS Module, die ich im Modellbau hier hab, kommen alle mit 'default' 9600 baud und 1 Hz.
ASUS PRIME X370-A + AMD Ryzen 5-2600, Nvidia GEFORCE GT1030
16GB DDR4-2666, DEBIAN-Buster Xfce

Benutzeravatar
desputin
Beiträge: 645
Registriert: 24.04.2015 17:16:34

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von desputin » 18.05.2019 14:05:39

Also zum Hintergrund: Ich möchte mit dem Geräte eine Dashcam ins Auto einbauen, mit der man anlaßbezogen aufzeichnen kann - und dafür würde ich gerne die Koordinaten mit aufzeichnen. Es reicht aber auch, wenn in einer Text-Datei nur die Koordinaten und die Zeit aufgezeichnet werden, damit man immer nachvollziehen kann, an welchem genauen Ort ein Video aufgezeichnet wurde.

Nach $GNGLL zu filtern erscheint mir daher auch hinreichend... Das mit VirtualMachine und Windows-Treibern möchte ich auf keinen Fall machen.
https://www.neoliberalyse.de - Über die Ökonomisierung aller Lebensbereiche. |
https://www.heise.de/tp/features/Der-Ka ... 33254.html - Diskussion um hormonelle Verhütung

Benutzeravatar
willy4711
Beiträge: 1956
Registriert: 08.09.2018 16:51:16

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von willy4711 » 18.05.2019 14:41:34

Wenn du die Action-Cam noch nicht hast, warum besorgst du dir dann nicht einfach eine Cam mit eingebauten GPS ?
Falls du so etwas irgendwann zur eventuellen Beweissicherung heranziehen willst, wird das Mixen von Movie und GPS
aus zwei Geräten ziemlich sicher nicht anerkannt, da es leicht manipuliert werden kann.
Cams mit GPS https://geizhals.de/?cat=dvcamac&xf=503 ... roductlist

Benutzeravatar
kalle123
Beiträge: 775
Registriert: 28.03.2015 12:27:47
Wohnort: Mönchengladbach

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von kalle123 » 18.05.2019 15:20:52

desputin hat geschrieben: ↑ zum Beitrag ↑
18.05.2019 14:05:39
Das mit VirtualMachine und Windows-Treibern möchte ich auf keinen Fall machen.
Anmerkung: U-Center von U-Blox ist eine Software zur Visualisierung und Konfiguration der GPS Module und ggfs. zum Speichern der Konfiguration im Eeprom des Moduls, kein Treiber. :wink:
ASUS PRIME X370-A + AMD Ryzen 5-2600, Nvidia GEFORCE GT1030
16GB DDR4-2666, DEBIAN-Buster Xfce

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22029
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von KBDCALLS » 18.05.2019 16:51:34

Ich würde doch erst mal das naheliegenste tun. Wieso versuchst du es erst mal nicht Debiangpsbabel undDebian python3-gps oder Debianquickroute-gps.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
Phineas
Beiträge: 264
Registriert: 20.06.2012 20:26:19

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von Phineas » 19.05.2019 15:31:30

$GNRMC gibt u.a. Uhrzeit, Breitengrad, Längengrad, und die Geschwindigkeit in Knoten (Groundspeed) her, diese Datenzeile würde ich mit awk auswerten.

Quelle: http://www.nmea.de/nmea0183datensaetze.html



Wenn ich eine solche Zecke am Arsch habe, versuche ich ihr eine Möglichkeit zum Überholen zu verschaffen. Ist gut für meine Gesundheit.

Benutzeravatar
Phineas
Beiträge: 264
Registriert: 20.06.2012 20:26:19

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von Phineas » 20.05.2019 18:49:08

Ich habe mal ein kleines Ausleseprogramm in awk geschrieben:

Code: Alles auswählen

#!/usr/bin/awk -f

# Aufruf: [sudo] <SKRIPTNAME> <GERÄT> (/dev/gps0 oder /dev/ttyACM0)

BEGIN {

  # Feldtrenner des Inputs
  FS=","

  # Offset in Stunden zum lokalisieren von Datum und Uhrzeit (Lokalzeit = UTC + dateoffset)
  dateoffset = 2

}


{

  if ( $1 == "$GNRMC" )
  {

    # Lokalzeit (dd.mm.yyyy HH:MM:SS)
    date = strftime ( "%d.%m.%Y %H:%M:%S" , dateoffset * 3600 + mktime ( "20" substr ( $10 , 5 ) " " substr ( $10 , 3 , 2 ) " " substr ( $10 , 1 , 2 ) " " substr ( $2 , 1 , 2 ) " " substr ( $2 , 3 , 2 ) " " substr ( $2 , 5 , 2 ) ) )

    # Breitengrad (qdd°mm.mmmmm′)
    latitude = $5  substr ( $4 , 1 , 2 ) "°"  substr ( $4 , 3 ) "′"

    # Längengrad (qddd°mm.mmmmm′)
    longitude = $7  substr ( $6 , 1 , 3 ) "°"  substr ( $6 , 4 ) "′"

    # Geschwindigkeit in km/h auf 2 Kommastellen gerundet
    speed = sprintf ( "%.2f" , $8 * 1.852 ) " km/h"

    # Ausgabe
    print ( date , latitude , longitude , speed )

  }

}
Getestet habe ich es aber nur mit dem Beispieloutput von kalle123.

Benutzeravatar
desputin
Beiträge: 645
Registriert: 24.04.2015 17:16:34

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von desputin » 20.05.2019 18:49:56

@Phineas:
Super vielen Dank! Das werde ich mal diese Woche testen...
https://www.neoliberalyse.de - Über die Ökonomisierung aller Lebensbereiche. |
https://www.heise.de/tp/features/Der-Ka ... 33254.html - Diskussion um hormonelle Verhütung

Benutzeravatar
Lord_Carlos
Beiträge: 4530
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: USB-GPS-Dongel: Mit welchem Programm auslesen?

Beitrag von Lord_Carlos » 24.05.2019 10:36:01

Eine Dashcam willst du nicht benutzten? Dann musst du das ganze nicht selber bauen, sonndern drueckst einfach einen Knopf bei deiner Dashcam vorne und es wird in beide Richtungen aufgenommen. Wird wahrscheinlich auch weniger Strom verbrauchen.

Aber ich will dir jetzt nicht ein bastel Projekt "wegsprechen" :D

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Antworten