OpenPlotter
https://sailoog.gitbooks.io/openplotter-documentation/en/
Contents
Aim
- fit a cheap and open source ECDIS on board of a sailing vessel
- yacht has SeaTalkng network (/w Raymarine iTC-5 Converter)
- VHV radio (Navman VHF 7100)
- autopilot (Raymarine Evolution EV-200 Sail)
- sumlog (VDO)
- depth sounder (???)
- wind & close hauled/VMG instrument (Raymarine Wind ST50 Plus)
- gps (Garmin GPS 126)
- AIS Class-B transceiver (SRT)
- battery monitor (Victron BMV-700)
Parts (boat specific)
- Seatalkng extensions:
- Spur-Kabel mit 1 offenen Ende 3m Art.-Nr: A06044 EUR 40,-
- 5-Wege-Verbinder Art.-Nr: A06064 EUR 35,- (alternativ T-Stück Art.-Nr.: A06028 EUR 25,-)
- Backbone-Kabel 0,40m - A06033 EUR 30,-
Mini-PC
- Raspberry Pi 3 Model B EUR 35,-
- 16GB MicroSD Card EUR 10,-
- SPI USV EUR 25,-
- Case
- PiCAN 2 EUR 45,-
- WLAN (RTL8192CU/CUS chipset) EUR 10,-
Setup Pi:
- upgrade to openPlotter 0.17.0 beta
- Preferences > Raspberry Configuration > Interfaces > SSH:enable (Remote-access via WinSCP and Putty)
- sudo apt-get install tightvncserver (make RDP working)
- sudo apt-get install can-utils
- sudo apt-get install mc
Setup Android:
- RDC from playStore (working)
- aRDP free from playStore (suits my needs best)
Setup piCAN2:
- see also
- https://dayba.wordpress.com/category/canbus/pican2/
- http://forum.openmarine.net/showthread.php?tid=92&page=2
- https://www.dropbox.com/sh/88dxdzrbea7jlhv/AAD_Q8XRdB3bRrRbPQRrbST-a?dl=0 (all changes to file-system, NOT uptodate)
- add to /boot/config.txt
dtparam=spi=on dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25 dtoverlay=spi-bcm2835-overlay
- add to /etc/network/interfaces (overwritten by /home/pi/.config/openplotter/wifi_server.py!)
#physical can interfaces allow-hotplug can0 iface can0 can static bitrate 250000 down /sbin/ip link set $IFACE down up /sbin/ifconfig $IFACE txqueuelen 10000
- install canboat
mkdir ~/canboat cd ~/canboat sudo apt-get install xsltproc git clone git://github.com/canboat/canboat cd canboat sudo make sudo make install
sudo apt-get install libconfig-general-perl
- copy and edit /home/pi/canboat/canboat/config/n2kd to /etc/default/n2kd (is this really needed?)
- add to /home/pi/.config/openplotter/OP-signalk/openplotter-settings.json (OP ver 0.10.0)
- add to /home/pi/.openplotter/openplotter-settings.json (OP ver 0.17.0)
{ "id": "n2k-can0", "pipeElements": [ { "type": "providers/execute", "options": { "command": "candump can0 | candump2analyzer " } }, { "type": "providers/liner", "options": { "rawlogging": true, "logdir": "logs", "discriminator": "2" } }, { "type": "providers/n2kAnalyzer" }, { "type": "providers/n2k-signalk" } ] }
configure kplex and signalk
- 'Signal K Server Plugin Configuration' > activate 'Convert Signal K to NMEA0183'
- select sentences you are interested in
- NMEA0183 (this is kplex) > Advanced >
- add input channel tcp:localhost:10110
- remove filter at opencpn out channel
[tcp] name=signalk_in direction=in address=localhost port=10110 [tcp] name=opencpn direction=out mode=server port=10109
experimental
- https://github.com/chacal/signalk-socketcan-device
- add to add to /home/pi/.openplotter/openplotter-settings.json
{"pipeElements": [ {"type": "providers/execute", "options": {"command": "candump can0 | candump2analyzer | analyzer -json -si -nv"}}, {"type": "providers/liner"}, {"type": "providers/from_json"}, {"type": "signalk-socketcan-device", "options": {"n2kAddress": 110, "canDevice": "can0"}}, {"type": "providers/n2k-signalk"} ],"id": "n2k-can0" }