OpenSeaMap-dev:HW-logger/Victor

Aus OpenSeaMap-dev
Wechseln zu: Navigation, Suche
dev: Water depth
depth-Website
Crowd Sourced Depth Data
Depth raw data
Depth meta data
Depth data processing
User login
Bordnetz
NMEA-Logger anschliessen
Hardware loggers
- Specifications
- NMEA-0183-2-Kanal-Logger
- NMEA-2000-Logger
- WLAN-NMEA-0183 mit TP-Link
- NMEA-0183-Logger mit Arduino
- WLAN-NMEA-2000-Logger mit Raspberry Pi
NMEA-0183-SW-Logger Jens
proprietäre Formate
Bus
Mess-Strategie
Mobiler Tiefenmesser
NMEA

NMEA-0183 Logger

Funktionen
  • Sammelt Daten von verschiedenen seriellen Quellen:
    GPS, AIS, Plotter, Echolot mit NMEA-0183 Schnittstelle können direkt über einen RS-232-USB-Wandler angeschlossen werden.
    Mehrere Geräte (bis zuu 4) können über einen USB-Hub angeschlossen werden.
    Echolot mit Seatalk-Schnittstelle können über einen Seatalk-NMEA-Konverter angeschlossen werden.
  • Loggt die Datensätze auf einen USB-Stick, Auslösen und Beenden auf Knopfdruck.
  • Navigationsdaten sind über eingebautes WLAN/WIFI überall auf dem Schiff auf jedem Tablet oder Smartphone verfügbar.
  • Navigationsdaten sind über LAN/Ethernet als TCP-IP-Stream auf jedem Rechner verfügbar.
  • UMTS-Verbindung mit dem Internet, mit einen zusätzlichen UMTS-USB-Stick.
    Damit haben alle Crewmitglieder mit ihrem Tablet oder Smartphone im Hafen direkten Zugriff auf das Internet.

Benötigte Hardware

Nr Device Price Remarks
1 TP-Link MR3020 30-35 € Das Gerät muss mit einem neuen Betriebssystem auf Basis von OpenWrt geflashed und konfiguriert werden.
1 4-Port USB-Hub 7 €
1 4GB USB-Speicher-Stick 3 € mit Partitionierung und Unix-ext4-File-System
x Seriell-USB-Konverter 10 € je einer pro angeschlosenes Gerät
Achtung: unterstützt werden nur der FTDI oder PL2303 Chip
x Seatalk-USB Konverter für jedes Gerät mit SeaTalk-1-Ausgang
x RS-232-Buchse 1 € je eine pro angeschlossenes Gerät

Datenquellen auf dem Schiff

  1. GPS-Empfänger mit NMEA0183-Datenstrom 4800 Baud
  2. AIS-Empfänger mit VDM Datenstrom mit 38400 Baud
  3. Raymarine-Seatalk-Konverter von Gadgetpool oder ein anderer Seatalk NMEA-Wandler

Diese Datenströme werden gemischt.

Ausgabe

  1. über einen TCP-IP-Datenstrom über WIFI oder Ethernet
  2. Als Textdatei auf dem USB-Stick

Der Datenstrom kann von apps auf Android oder Windows 8 aufgenommen und dargestellt werden.

Hinweis: Der MR3020 wird mit einer neuen Software geflashed. Damit verlieren Sie die Garantieansprüche gegen den Hersteller TP-Link. Während des Flashprozesss darf die Stromversorgung nicht unterbrochen werden.

Konfiguration der Hardware

Für Anfänger

  • Kaufe obige Bauteile und prüfe beim Kauf ob die Version TL-MR3020 Ver. 1.7 ist.
  • Schicke den TP-Link und den Speicherstick an Victor, lege 5 € für das Rückporto dazu.

Victor wird beides konfigurieren und in ungefähr 2 Wochen an Dich zurückschicken.

Anschrift:

vklogger at arcor.de

Für Fortgeschrittene

Benötigt werden die Datei factory.bin
und das Verzeichnis gpsdToolsAR77xx. Bitte bei "vklogger at arcor.de" anfragen, beides wird dann zugeschickt.

Die Anleitung geht davon aus , dass ein Heimnetzwerk mit DSL-Zugang existiert und das lokale Subnetz des heimischen Routers 192.168.1.xxx hat. Der umgeflashte Router hat später die feste IP 192.168.1.1 und muss so im Heimnetz erreichbar sein. Man kann diese IP auch auf ein anderes Subnetz umstellen. Für die Installation sind ein Linuxrechner und grundsätzliche Linuxkentnisse unbedingt notwendig. Es gibt zwei kritische Stellen:

1. der Flashvorgang darf nicht unterbrochen werden,
2. Die umgeflashte Box muss im Heimnetz 192.168.1.xxx erreichbar sein.
3. Es muss ein USB-Speicherstick mit 4 Linuxpartionen vorbereitet sein.

Folgende Schritte sind notwendig:

USB-Stick vorbereiten:

1. nun muss der USB-Speicher-Stick vorbereitet werden, kopieren dazu auf einen Linuxrechner das Verzeichnis gpsdToolsAR77xx
2. Auf dem Linux-Rechner wird der Speicherstick neu partitioniert und formatiert
3. Lege vier Partitionen an:
Partition Grösse für formatieren mit
part1 1 GB Kopie des Betriebssystems ext4
part2 100 MB Auslagerungspeicher des Betriebssystems linuxSwap
part3 log-Daten ext4
part4 ext4
4. Formatiere diese so: part1 mit ext4, part2 mit linuxSwap, part3 mit ext4, part4 mit ext4
5. Kopiere nun die Daten aus dem Verzeichnis gpsdToolsAR77xx auf den USB-Stick in part3.
6. Du kannst nun den Stick aus dem Unix-Rechner auswerfen.

Nun zu der Box:

1. Die neue Firmware factory.bin auf dem PC bereitstellen.
2. Den PC und den Router mit dem mitgelieferten kurzen Netzwerkkabel verbinden
und den Router mit der Stromversorgung verbinden.
3. Gib im Browser diese Zeile ein:
 http://192.169.1.254
es meldet sich die orginale Weboberfläche des Routers.
4. Ein Firmware-Update mit der Weboberfläche anstoßen, dabei als neue Firmware das factory.bin aus 1 angeben.
5. Der Router braucht etwa 2 min um das Flash-File zu übertragen, zu flashen und neu zu booten.
6. Die Basis-IP-Adresse der neuen Software ist nun geändert. Gib im Browser diese Zeile ein:
http://192.168.1.1
es meldet sich die Weboberfäche LUCI von OpenWrt.
erstmal "go to password configuration" und login klicken, dann Passwort ändern
7. Wenn Du die Weboberfäche LUCI siehts, ist die Box grundsätzlich eingerichtet.
8. Mit ssh(putty) auf der Box anmelden, dabei wird das passwort getestetgetestet
9. In dieser Anleitung wird angenommen, dass der heimische Router im lokalen Netz die Adresse 192.168.1.251 hat. Die Netzwerkdaten so ändern, dass die Box den heimischen Router findet und selber den heimischen Router als Gateway und DNs-Server benutzt. Ausserdem den DHCP in der neuen Box abschalten, damit die Adressvergabe vom heimischen Router erfolgt. Das ist kritisch, sonst kann man die Box nicht mehr erreichen. Hier könnte manfalls notwendig auch eine andere statische Adresse für den Router eintragen.
In LUCI --> Network-->Interfaces-->LAN-->Edit :
IP4 gateway auf 192.168.1.251, Use custom DNS servers : 192.168.1.251, Disable DHCP
kontrollieren, dann und Save&Apply, noch mal kontrollieren.
10. Box ins Heimnetz hängen und neu booten
11. http://192.168.1.1 im Browser eingeben, haben wir LUCI ??, der kritischste Teil ist geschafft
12. mit ssh (putty) mit der Box verbinden und als root anmelden, das ist ein gutes Kontrollfenster, dmesg absenden, man erhält die bisherigen Kernel-Messages

weiter mit der Weboberfläche, man kann aber auch alles von der root-Console machen.

13. Internetverbindung testen: Network-->Diagnostics-->Ping, wenn erfolgreich dann weiter
14. Softwarepakete nachinstallieren:System-->Software, jetzt sollten 81% frei sein, der Platz wird später sehr knapp, deshalb nur das nötigte installieren : Update lists anklicken.
15. unter availabe packages verschiedene Pakete installieren, wir installieren zuerst Support für den USB-Stick
15.1 unter k : kmod-usb-storage auswählen und install , 72% free
15.2 USB-Stick mit den 4 Linuxpartitionen einstecken und dmesg in der Konsole: ... sda: sda1 sda2 sda3 sda4
15.3 unter k: kmod-fs-ext4 auswählen und install, 54 % free
15.4 auf der Konsole nach /mnt wechseln: cd /mnt
15.5 die Verzeichnisse sd1 und sd3 anlegen: mkdir sd1, mkdir sd3, mit ls prüfen
15.6 die Verzeichnisse auf dem Stick mounten: mount -t ext4 /dev/sda1 /mnt/sd1 und mout -t ext4 /dev/sda3 /mnt/sd3, dann mit dmesg kontrollieren
15.7 nach /mnt/sd3 wechseln : cd /sd3,jetzt sollten die Verzeichnisse auf dem Stick sichtbar sein
16. Wir installieren das Paket gpsd über LUCI: unter Reiter g: gpsd install, noch 30%
17. Wir installieren den oder die Treiber für die USB-RS232-Konverter
17.1 install: k-mod-usb-serial 30%
17.2 install: k-mod-usb-serial-ftdi 27%
18. Wir wechseln auf der Konsole nach /mnt und hängen den Stick aus: umount /mnt/sd3
19. Über einen USB-Hub den Stick und einen FTDI-Converter anstecken, dmesg, irgendwo steht jetzt " usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0", das man auch im Status-->System-log nachlesen
20.1. Wir testen den gpsd: LUCI-->System -->Startup : gpsd Start, im System log nachsehen, user.notice.gpsd Starting, die IPv6-Meldung kann man ignorieren.
20.2 auf der Konsole pgrep gpsd, wenn der gpsd läuft erhält man eine Prozessnummer
21. gps-Client Paket installieren, jetzt wirds eng im Flashspeicher: System-Software, wir haben noch 10%
22. Auf der Konsole gpspipe testen:
 gpspipe -h 
, wenn kein Fehler auftritt
 gpspipe -r 
, der gpsd meldet sich mit einer Information über die erkannten Devices. Wenn über die RS232 Schnittstelle Daten anliegen, werden sie dargestellt. Der gpsd sucht sich die richtige Baudrate aus.

Jetzt funktioniert die Basisinstallation.


Erweiterungen:

1. gpsd kann mehrere Konverter gleichzeitig abfragen
2. die WPS-Taste so konfigurieren, dass automatisch ein NMEA-Log auf /mnt/sd3/nmealog geschrieben wird
dev/sda3 wieder nach /mnt/sd3 mounten: mount -t ext4 /dev/sda3 mnt/sd3
von Stick werden nun Scripte und Konfigurationsdateien für gpsd und LUCI nachinstalliert:
Zunächst für den gpsd und den Start von gpspipe durch Druck auf die WPS-Taste am Router
3. cd installer und dann ls
3.1 im nächsten Schritt wird "option globally" gesetzt. Die erlaubt es den gpsd auch von einen anderen Rechner z.B. Tablet abzufrage. Weiter wird gpsd so eingerichtet dass mehrere Konverter möglich sind:
 ash replace_gpsd_scripts 
3.2 WPS-Taste konfigurieren :
ash create_50_wps 
, wenn nun der WPS-Button gedrückt wird, loggt gpspipe die letzten NMEA-Daten, im System-log kontrollieren und in /mnt/sd3/nmea_data nach der Logdatei suchen und mit
tail -f gpsd_nmeaxx.log
den logprozess anzeigen lassen
3.3 ein zweiter Druck auf die WPS-Taste beendet den Log-Vorgang, Kontrolle im syslog.
4. Konfiguration der gpsd-GUI in LUCI, dabei werden Verzeichnisse erzeugt und ein neuer Reiter bei Network angelegt.
4.1 ash install_model_luci_gpsd_gui
4.2 ash install_controller_luci_gpsd_gui

Jetzt sind etwa 10% des Flash-Speichers 10% noch frei. Will man Support für ein 3G-Modem installiren, so ist es sinnvoll, die nicht benötigten Programme aus dem gps-client Paket zu löschen. Sie sind in /usr/bin. Man kann cgps, gpsctrl, gpsdecode, gpsmon und lcdgps problemlos löschen.


5. Einrichtung eines 3-G Modems
Siehe dazu http://wiki.openwrt.org/doc/recipes/3gdongle
Es muss installiert werden:
kmod-usb-serial-option,
kmod-usb-serial-wwan,
luci-proto-3g

Jetzt kann man in luci-Network-interfaces ein neues Interface einrichten.

Name: 3g
Protocoll: UMTS, dann submit

Jetzt kann man Modem-Device, Servic Servicetype, APN, Username und Password setzen,. Man beachte dabei die ttyUSB-Schnittstelle /dev/ttyUSBx, wenn der Stick eingesteckt ist sucht er sich normalerweise eine Schnittstelle nach den USB-Seriell-Konvertern aus, z.B ttyUSB2 und ttyUSB3. Das kann man im System-log bzw Kernel-log nachlesen. Eingetragen wird die erste der beiden Schnittstellen. Erhält man eine Fehlermeldung wie "link is not 8-Bit clean" so ist etwas bei der Authentifizierung schief gegangen. Versuchen dann die andere ttyUSBx-Schnittstelle.

Parameter für e-plus:

Modem device: aus der Auswahlliste ttyUSBx
Service Type : UMTS/GPRS
APN: internet.eplus.de
username: eplus
password: eplus

Diese Konfiguration wurde mit einem Huawei E160 (älterer ALDI-Stick) getestet.

Bei neueren Sticks sind möglicherweise noch weitere Dinge zu installieren.Informationen dazu auf der oben genannten Adresse im OpenWrt-wiki.




Probleme

  • 2013-04-14 Die Konfiguration ist für Anwender viel zu umständlich.
  • 2013-04-20 TP-Link MR3020 mit der Hardwareversion V.1.7 von Conrad: nach umflashen funktioniert die Box nicht mehr. Mit der vorigen Version 1.6 wurden mehrere Exemplare erfolgreich getestet. Alte Boxen mit V1.6 sind aber nicht mehr verfügbar.
  • 2013_04_22 das Problem mit der Ver: 1.7 ist gelöst, die Beschreibung bezieht sich auf die Version 1.7

Sinnvolles Zubehör

UMTS-Stick getestet HUAWEI E160, älterer ALDI-Stick
Alternativ zum Mobiltelefon kann ein für die Verbindung ins Internet ein UMTS-Stick mit SIM-Karte eingesetzt werden. Beispielsweise Huawei simlockfrei ca. 40 €
Die SIM-Karte kauft man im Segelrevier vor Ort für das jeweilige Netz des Landes (spart Rooming-Gebühr).
UMTS-Antenne
UMTS / HSDPA Antenne mit 2m Kabel und 5 dB Gewinn ca. 15 € oder mit 10 dB Gewinn ca. 25 €

Tips

Info über Drahtlosnetzwerke an Bord