It only took two evenings to get a Raspberry Pi chart plotter built out.
The first improvement that had to be made was getting charts installed in OpenCPN. Thankfully NOAA provides free versions of nautical charts for US Waters and most frequented coasts regionally. It was simply a matter a downloading the appropriate charts (Washington State, and Region 15, Puget Sound) and unzipping them to a folder. I then added that folder to OpenCPN using the built-in options screen, and after a few minutes of compiling, the charts displayed.
Then I needed to add GPS capability. First, I hacked together a few wires to an existing Venus GPS Module that I had from a previous Arduino project. This was a simple matter of soldering 3.3v power, ground, and TX/RX digital inputs between the items:
Then I installed the GPSD service from the web, run the service, create a socket for it, and verify that the hardware is receiving the signal. Currently I need to hand-type this sequence each time I reboot the microcomputer:
$ sudo service gpsd restart
$ sudo killall gpsd
$ sudo gpsd /dev/ttyAMA0 -F /var/run/gpsd.sock
Eventually this will be added to a script that will run on boot.
And then to test:
$ sudo cgps
$ sudo xgps
And behold, signals from outer space:
Now that all the pieces are in place, the final step is to add this GPS device to OpenCPN so that it can read the information:
In this picture you should be able to see a rendered nautical chart of Puget sound, Heading, GPS satellite status, GPS location, and Compass gauges on the left, and my “boat”, sitting off in Issaquah, since that’s where my GPS device is located.
It’s running at about 80% of the Raspberry Pi’s capability, at 1280×1024 with no overclocking.
And boom goes the dynamite.