For thousands of years, people have been using the sea as a source of food and a way to transport goods. One of the most important things they did was to keep track of where they were. If they got lost at sea, they never knew where they'd land. Fortunately, they started to make charts and tools to help navigate. The sextant is one of the tools that was made, but this article is not about the use of the sextant.
In modern times, we use GPS to navigate at sea. The fist GPS devices for marine use gave only latitude and longitude. To find your position, you had to write latitude/longitude on a sea map. Development has come a long way since then with GPS chart plotters. They work like the GPS navigation system in your car. You have a lot of different vendors with a lot of different models to choose from. The better the model, the higher the price. One of the biggest companies, Garmin, sells chart plotters in the price range of $199 USD to over $10,000 USD. The first one has a 4-inch screen, and the last one has a 24-inch full HD screen.
Screenshot from Garmin.com
Screenshot from Garmin.com
Some systems let you define what are considered to be shallow and dangerous waters. When you plan your trip, you can make two points in the map and tell it to calculate the route. It'll make the trip safe, so you don't get stranded on dry land.
I didn't feel like spending that kind of money on something that I might as well build and make myself. Looking around in my different piles, I found most of the parts I needed. I found the three most important things: a Raspberry Pi, a GPS module, and an LCD screen running on 19v DC. Besides that, I needed some power circuits.
- Raspberry Pi. I'm using the Rpi 2 model B.
- A monitor, keyboard and mouse.
- Openplotter installed on a 8GB Micro SD card.
- Maps from Openseamap.
- A DC-DC step-up converter.
- A DC-DC 12v to 5v regulator.
- A GPS module and a serial to USB converter.
In a pile of monitors, I found one that runs on 19v DC. To power this monitor, I'm using a DC-DC step-up converter, that I found on eBay. I need to step up the voltage because the power on my boat is 12v DC. The step-up converter looks like this:
It was a good thing I bought two of those because one of them didn't work.
To power the Raspberry Pi, I'm using a homemade regulator based on the LM338K IC. The IC package is TO-3. The LM338K is a 5-Amp adjustable regulator, and the below schematic is based on the datasheet (PDF).
This is the schematic for the Raspberry Pis power regulator:
Here's the parts list:
My GPS module is connected to the Raspberry Pi with an RS-232 to USB converter. I found that on eBay as well:
Download Openplotter and install it, like you install Raspbian or Noobs.
To automate the startup process, I made a few changes to the default software settings. I made a script that starts the navigation automatically. First, make sure you log in automatically at boot-up.
Start the Raspberry Pi and log in with user "pi" and password "raspberry". Then start the GUI with the command startx. Then click on:
Menu → Preferences → Raspberry Pi Configuration
In the System folder, select the boot option "To Desktop", and check the auto login box "Login as user 'pi'".
When power is applied, the Raspberry Pi boots, automatically log in as user 'pi', and start the GUI. To auto start the navigation tool, open up a terminal, and navigate to the hidden folder .config/autostart.
I'm an active user of the TAB-key. So I write
and hit the TAB-key. The raspberry completes with config/. Then I press the a-key, and hit TAB again. So with only pressing the keyboard 9 times, I've written the command:
Open nano in that folder with the command:
Write these few lines:
[Desktop Entry] Type = Application Exec = opencpn
Press CTRL+X and answer yes to the questions. Now that we've made a script in the autostart folder of our 'pi' user, the next thing to do is to make the script executable. While in the .config/autostart/ folder, write the command:
sudo chmod +x opencpn.desktop
The actual navigation application is called OpenCPN. You can use a lot of different map sources.
Now, all I have to do is to make some nice enclosures to have the circuitry in.
The total cost for my navigation system:
- 17" monitor, keyboard and mouse — from my pile of recycled stuff.
- Raspberry Pi — $35 USD.
- GPS module — $30 USD.
- DC-DC Step-up converter — $6.
- DC-DC Regulator — homemade.
- RS-232 to USB — $2.
- OpenCPN and maps — Open source.
So for under $100 USD, I've made myself an equally good navigation system in my boat.
One improvement that I will make is to get another monitor that does not eat Ampere for breakfast. I will also consider adding different measuring tools, like a motor temperature sensor and an oil pressure gauge.
Pictures and video
To ensure everything is running on 12v, I've connected two 12v 100Ah in parallel. Onboard my boat, I've got a generator on the engine. When the engine is running, the batteries are charged.
Give this project a try for yourself! Get the BOM.