OpenSeaMap-dev:HW-logger/Victor
Inhaltsverzeichnis
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
- GPS-Empfänger mit NMEA0183-Datenstrom 4800 Baud
- AIS-Empfänger mit VDM Datenstrom mit 38400 Baud
- Raymarine-Seatalk-Konverter von Gadgetpool oder ein anderer Seatalk NMEA-Wandler
Diese Datenströme werden gemischt.
Ausgabe
- über einen TCP-IP-Datenstrom über WIFI oder Ethernet
- 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 auftrittgpspipe -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 mittail -f gpsd_nmeaxx.log
den logprozess anzeigen lassen - 3.3 ein zweiter Druck auf die WPS-Taste beendet den Log-Vorgang, Kontrolle im syslog.
- 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:
- 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 Schniitstellen. Erhält man eine Fehlermeldung wie "link is not 8-Bit clean" so ist etwas bei der Authentifizierung schief gegange Versuchen die dann die andere ttyUSBx.
Parameter für e-plus: Modem device: aus der Auswahlliste ttyUSBx Service Type : UMTS/GPRS
APN: internet.eplus.de
username: eplus password: eplus
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.
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 €