MNBB – Trial run

A quick recap:

MNBB is abbreviated for Mariners NMEA Black Box. It does not replace the existing navigation instruments or multifunctional display on a sailboat. The purpose is to log your boat’s instrument data and show you useful information about your trips. It may also show you useful trip information while underway. I just started developing the application software and now have it up and running on a Raspberry Pi. If you would like an introduction to this project, take a look at my prior post.

I have not made a lot of progress on the project over the last week but I have made some important decisions on the architecture to keep the entire project simple and easy for other web developers to contribute to. The entire platform is written in JavaScript, which was once a language designed for web browsers and is now an excellent language for building what we programmers like to call full-stack software. The idea is to use a single language for the entire application which should cut down on the amount of code needed to make it work and also make much of the code more purposeful. One of the important decisions I made is how to build it so others can contribute to the project. Right now it is still just scaffolding but eventually I will produce the first displays to show things like maximum and minimum values for a given trip, broken into days, hours, etc. It would be nice to know the maximum wind speed, minimum wind speed, maximum boat speed and even compare apparent and true wind speed over a given trip. This is the next step for the project.

Another part of the MNBB project I am working on is taking the realtime NMEA data and displaying it just like you would see on an instrument panel. With the use of web sockets I should be able to provide a universal display similar to what you would see on a chartplotter or in your instrument panel. The most exciting part of this project is the fact that the entire setup would cost less than $100 to duplicate for another vessel. This excludes the NMEA wifi client but they cost only $200 and can then allow you to use it for other charting apps for Android and iPhone.

The Raspberry Pi, Router and NMEA wifi client
The Raspberry Pi, Router and NMEA wifi client

The above photo shows one of the navigation station lockers containing the network electronics. It may look like a big spaghetti mess of wires but this setup is a good configuration. The power supply is a terminal block with every component fused with one-amp fuses. Each component has it’s own dedicated switch, which is simply labeled and run inline of the wire. I could build a switch panel but I don’t foresee using them much but in case I want to turn them on and off, I added them for convenience. The Raspberry Pi is powered using a Blue Sea USB hub, which simply uses a standard micro-usb cable. The total power consumption for all of these components is less than one amp. Everything can be switched off at the breaker panel or individually if needed. There is an extra ethernet (POE) cable which connects to the wifi booster antennae on the stern of the boat. Eventually I hope to be able to connect to the wifi network while I’m on shore or also pickup wifi from shore using the same router.

On Saturday I am heading to Port Townsend for Fiddle Tunes  and will be anchored at Fort Worden State Park for the week. While heading there and sailing around the bay I should be able to collect some useful NMEA data for the purpose of building some of the first applications. The key is to use the unit while underway but then power it off while at anchor. Most of the useful information is when the boat is actually moving so logging here at the marina isn’t nearly as useful aside from gathering weather data.

Summer is here and I’m still sailing at least one evening during the week just to stay practiced at preparing the boat to sail and then putting her away, plus keeping her uncluttered for an unscheduled trip. There are more trips planned in the future, including the PNW Westsail Rendezvous .

Leave a Reply

Your email address will not be published. Required fields are marked *