Comparison AVnav and OpenPlotter

First of all, a few important notes that you should definitely pay attention to.

There is often a desire on boats to read measured values from bus systems and display them individually on a website and navigate. For this offer AVnav and OpenPlotter at. It is not easy for beginners to find out what both systems actually do and how they differ. In principle, this task can be solved with both systems. But you have to take a closer look at how the systems work in detail.

hardware base

In order for AVnav and OpenPlotter to run, you need a computer environment on which the systems can run. Both compact PCs and embedded systems like the Raspberry Pi can be used. Compact PCs with mobile processors offer a lot of computing power and memory in contrast to the Raspberry Pi, whose processor comes from the mobile phone sector and has less computing power but is more economical. In terms of cost, a Raspberry Pi 4B is much cheaper than a compact PC and costs around 60 euros. In terms of computing power, it is definitely sufficient and has enough reserves for later expansions. In addition, the Raspi has a GPIO expansion port to which a large number of sensors can be connected. It is therefore also the most frequently used hardware platform.

Fig. Dell Optiplex 7050 i3, i5, i7, 8…32GB RAM, 128GB…1TB SSD, 4x USB3.1, 2x HDMI, WiFi, 15…30W

Raspberry Pi

The Raspberry Pi is a microcomputer in credit card format. It is available in several variants, although we are only concentrating on the Raspberry Pi 4B here. Of the older models, only the Raspberry Pi 3B is still interesting. Older models should no longer be used.

Fig. Raspberry Pi 4B (Raspberry Fondation) 5…7W

CPU and memory

  • Raspberry Pi 4B, 4GB, Quad Core 1.3GHz
  • SD card up to 32GB (Linux with server application and additional programs)

interfaces

The Raspi 4B serves as a central processing unit and provides a variety of interfaces to the outside world:

  • SD card slot (for operating system and applications)
  • RJ45 Ethernet 1Gbit/s
  • 2 x USB 2.0
  • 2 x USB 3.0
  • WiFi 802.11 bgn 2.4GHz / 5GHz
  • Bluetooth 4.1
  • 2x HDMI
  • 1x audio output
  • 1x camera connection (via ribbon cable)
  • 1x display connection (via ribbon cable)
  • 40 pin GPIO header (for hardware extensions and sensors)

With 4 processors and 4 or 8 GB RAM, the Raspi is fast enough for server applications and has enough power reserves. In addition, depending on the load, the Raspi consumes between 5...7W of electrical power and is therefore very frugal. The processor can be passively cooled and is therefore silent. The Raspi is supplied with 5V via a USB-C cable with a corresponding power supply unit. Special DC/DC converters that convert the 12V into 5V are suitable for boat operation. You should make sure that the power pack can deliver enough current of approx. 3.5A, since a lot of current is required in short-term load peaks.

operating system and applications

Unlike normal PCs, the Raspi does not run on a hard drive on which the operating system is located. The operating system is housed in an SD card that is inserted into the SD card slot on the bottom of the Raspi. In this case, the SD card behaves like a hard disk and the operating system is started from there. An SD card size of 16 GB or 32 GB should be sufficient. So that the user does not have to go through any complex installation orgies, there are ready-made images on which the operating system and all applications are pre-installed. The aim is to get an image on the Internet and transfer it to the SD card using a utility program. If the image is stored on the SD card and the SD card is in the Raspi, the Raspi can be started by switching on the 5V. For the first installation, it is helpful if you connect the Raspi monitor, keyboard and mouse, because some individual settings have to be made, such as changing the password. There is no graphical user interface on the screen as you are used to from PC systems. There is only one terminal window with a black background in the look and feel of the old DOS days. At the start time you can see a lot of messages and follow how the operating system is started up until you end up at a login with which you can log in with the username pi and the default password raspberry can register.

bus systems

The bus systems in the boat can be connected in various ways:

  • USB for bus systems
  • USB for devices
    • GPS dongle for position data NMEA0183
    • DVBT stick for TV, radio, AIS
    • dAISy, Boat traffic via AIS NMEA0183
    • Memory stick as map storage and for backups
    • USB dongle as copy protection for O-Charts maps
    • USB WiFi stick for a second wireless LAN
  • ethernet
    • TCP/UDP port NMEA0183, SeaSmart (NMEA2000)
  • WiFi
    • TCP/UDP port NMEA0183, SeaSmart (NMEA2000)
  • GPIO connector
    • Marine Control Server MCS (1x NMEA2000, 6x NMEA0183)

The simplest way of connecting to bus systems would be via USB, which can be implemented with a cheap USB-RS485/422 converter for NMEA0183. There are various versions of these converters on the Internet. One should be careful to buy converters that are supported by Linux, eg equipped with chips from FTDI, HC340 or PL2303. There are so-called combination converters that support both RS422 and RS485. But there are also converters that only support RS485. With a combination adapter you have the best choice and can later decide how you want to use the converter and encounter fewer connection problems due to incorrect signal matching. Below are some examples of such converters.

Fig. USB-RS422/RS485 converter

Fig. USB-RS422/RS485 converter

Fig. USB-RS485 converter

Fig. USB-RS422/RS485 converter

NMEA2000 can also be connected to the Raspi via USB. Either about that Actisense Gateway NGT1 or via the open source/open hardware M5Stack Atom CAN BUS Kit. The project NMEA2000 gateway with M5Stack Atom describes how similar functionalities can be implemented as with the Actisense Gateway NGT1 by installing a gateway firmware.

Fig. Actisense NGT-1

Fig. M5Stack Atom CAN BUS Kit

If systems already exist that can transmit bus data via Ethernet, they can be connected via TCP or UDP sockets via LAN cable or via WiFi. These would be, for example, the following open source WiFi sensors for NMEA0183:

Similar open source projects also exist for NMEA2000:

Sensors on the GPIO port

Typical marine sensors are connected via the buses described above. If you want to integrate special sensors, you can connect the sensors via pins on the GPIO connector (40-pin pin strip). The GPIO port has many plug-in contacts to which some other bus systems that are typically not used in the boat area are brought out.

Fig. GPIO port

These buses are intended for electronic circuits to connect ICs and sensors to microcontrollers. They cannot be used to bridge lengths that are too great (max. 1..2 m). If shielded cables are used, longer lengths can also be bridged. In contrast to the boat bus systems, the electronic bus systems are not fault-tolerant and usually only work with low signal levels and are correspondingly sensitive to interference. Below is a list of the bus systems with possible sensors.

  • I2C (bus length 1…2 m)
    • BME280 (temperature, humidity, air pressure)
    • BMP280 (temperature, air pressure)
    • HTU21 ((temperature, humidity)
    • MPU9250 (gyrometer, accelerometer, magnetometer)
    • MPU9255 (Gyrometer, Accelerometer, Magnetometer)
    • Additional displays (text and dot matrix displays)
  • SPI (bus length 0.5 m)
    • MCP2515 CAN bus controller for NMEA2000
  • 1Wire (bus length up to 10 m)
    • DS18B20 (temperature)
  • Serial (bus length up to 10 m)
    • StromPi UPS status

At this point, however, it must be mentioned that the GPIO port is quite sensitive and if you connect the port incorrectly, the Raspi can also die. If you want to connect any sensors to the GPIO port, you should find out exactly how to do it beforehand. This is a helpful website for this Electronics Compendium and the Documentation of OpenPlotter.

Fig. Wiring example for the 1Wire bus with 3 temperature sensors (OpenPlotter)

The Marine Control Server (MCS) offers advantages if you want to work with sensors on the GPIO bus, since many parts of the bus systems such as I2C, 1Wire and digital inputs and outputs are already supported on the motherboard with the necessary protective circuits and sensors can be connected with little effort. In addition, all bus systems such as 1xNMEA2000 and 6x NMEA0183 are already routed to connection terminals.

Fig. Marine Control Server with Raspberry Pi 4

software

When it comes to software, you have to differentiate between the operating system and the applications. Linux is used as the operating system for AVnav and for OpenPlotter, both for the PC and for the Raspberry Pi. However, the Linux versions differ for the PC and Raspi and are adapted to the respective processor hardware. 64-bit x86 processors are supported for the PC and 64-bit ARM processors for the Raspi. Linux without a graphical interface is used for AVnav as the operating system, because server applications mainly run on the Raspi and the actual operation takes place via a web browser. Monitor keyboard and mouse are only required for the initial installation. OpenPlotter, on the other hand, is operated via the Linux graphical user interface, although it also contains some server applications that can be operated with a web browser. Therefore, a monitor, keyboard and mouse are always necessary with OpenPlotter. This is also the clearest difference between the two systems, since they follow different operating concepts. AVnav can be operated purely touch-based, whereas this is not possible with OpenPlotter for most applications. AVnav will be preferred if you work mainly from anywhere and weatherproof on your tablet or mobile phone. OpenPlotter, on the other hand, shows its advantages at the card table, where there is enough space for the necessary accessories and menu-based graphic operation can be carried out comfortably.

AVnav

Fig. AVnav user frontend

In principle, AVnav is a server application with additional programs that was primarily developed for navigation and is operated exclusively via a web browser. The server application can run on a PC or a Raspi under Linux. The smallest expansion stage consists of a Raspi with SD card and a GPS USB dongle, for example. The Raspi runs headless without a monitor, mouse and keyboard. The actual user front end of AVnav is the web browser. For a more detailed, more specific configuration of the server application, you can log into the Raspi remotely from a PC via the network and carry out the configuration via text files using a text editor. The configuration is therefore not as easy as with OpenPlotter, where it is done graphically, although AVnav allows a wide range of parameterization options via the web-based user front end. In day-to-day operation, you are no longer dependent on the configuration of text files and you can operate everything via the web browser. The operating concept is uniform across all areas and creates a practical look and feel.

Fig. AVnav Server components

AVnav consists of the following components:

  • AccessPoint (LinuxOS)
  • AVnav Core with operating and navigation functions
    • Chart plotter with tracking and storage of routes covered
    • Creation and departure of waypoints
    • Tracking critical AIS targets
    • Display of navigation information
    • Freely configurable display of measured values from bus systems (dashboard)
    • Integration of external websites
  • Database with maps
    • Commercial nautical charts O-Charts
    • Free nautical charts Open Sea Map etc.
  • data storage for configuration and measurement data
  • SignalK-Server for processing and web-based display of measurement data
    • NMEA multiplexer to connect the bus systems
    • NMEA0183, USB Serial, TCP, UDP
    • NMEA2000, CAN bus over GPIO/SPI with MCP2515
    • Dashboard for displaying measured values from bus systems
    • Connection of sensors via GPIO bus
    • Reporting system for critical sensor data
  • Web server to display the operating pages

AVnav is also available as Android app in the play store. The AVnav app combines some of the server components in one app and has a somewhat limited range of functions compared to the Raspi variant. For example, the SignalK server is missing and only a simple NMEA0183 multiplexer is integrated. With regard to the map material, no commercial nautical charts such as O charts can be used. In many areas, however, the operation is identical and is suitable as a small version of AVnav on a cell phone or tablet for navigation. Information from bus systems can be connected to the app via WiFi with TCP or UDP. Inexpensive navigation plotters can also use the app with the help of a Android car radios being constructed.

AVnav comes with an extensive manual and some video tutorials:

OpenPlotter

Fig. OpenPlotter desktop with configurator open

OpenPlotter is a collection of various desktop and server applications running on Linux. In principle, the desktop applications are operated via the Linux graphical interface using a mouse and keyboard and require a monitor as a display. The operating concept of the various desktop applications is not uniform and there are breaks in the operating concept. Thanks to the desktop interface, beginners can quickly find their way around and operate the system very conveniently. The configuration is mostly done graphically and you only have to switch to the text console for a few special settings.

The features of OpenPlotter are:

  • AccessPoint (LinuxOS)
  • chartplotter (OpenCPN) with waypoints and Autopilot (PyPilot)
  • Graphical configuration tools (python)
  • SignalK-Server for processing and web-based display of measurement data
    • NMEA multiplexer to connect the bus systems
    • NMEA0183, USB Serial, TCP, UDP
    • NMEA2000, CAN bus over GPIO/SPI with MCP2515
    • Web-based dashboard for displaying measured values from bus systems
    • Connection of sensors via GPIO bus
    • Reporting system for critical sensor data
  • Weather reports and weather maps (xyGrib)
  • Internet of Things implementation (MQTT)
  • SDR for AIS and radio reception with DVBT sticks
  • Special hardware support (Montessiere HAT, StromPi Etc)

Comparison AVnav OpenPlotter

AVnav OpenPlotter
Supported hardware PC, Raspberry Pi 3B/4B, tablet, mobile phone PC, Raspberry Pi 3B/4B
operating systems Linux, Android Linux
Max. SD card size
32GB FAT16/FAT32 only 32GB FAT16/FAT32 only
WiFi support 802.11 bgn 2.4GHz/5GHz 802.11 bgn 2.4GHz/5GHz
WiFi access point Yes Yes
Bluetooth V4.3 BLE V4.3 BLE
service touch, web-based alternative keyboard and mouse Keyboard Mouse
display web browser Monitor, partly web browser
Supported Ports USB, Serial RS232/RS422/RS485, CAN, Ethernet USB, Serial RS232/RS422/RS485, CAN, Ethernet
data exchange TCP, UDP TCP, UDP
Supported naval buses NMEA0183, NMEA2000 NMEA0183, NMEA2000
Supported electronics buses I2C, 1Wire, SPI, Digital IO (Raspi, MCS only) I2C, 1Wire, SPI, Digital IO (Raspi, MCS)
NMEA0183 multiplexers SignalK SignalK
chartplotter AVnav OpenCPN, FreeBoard (via SignalK-Pulgin, web-based)
Commercial Maps O-Charts (not with Android App) O charts, NV charts
Free Maps Open Sea Map etc. Open Sea Map etc.
Supported card formats Grid Maps: GEMF, mbtiles, S63 (O charts) Raster maps, vector maps: KAB, BSB, CM93, mbtiles, S63 (O charts)
data handling SignalK, AVnav Multiplexer (Android App) SignalK
Data storage
Log file NMEA0183, InfluxDB via SignalK plugin Log file NMEA0183, InfluxDB via SignalK plugin
data visualization AVnav Dashboard, SignalK Dashboard, integration of external websites, Grafana with InfluxDB SignalK Dashboard, Grafana with InfluxDB, various plugins
weather maps no yes, xyGrib
Graphical configuration tools yes, web based yes, python applications
Text-based configuration yes, linux console yes, linux console
GPS yes, USB stick yes, USB stick, Montessier HAT
AIS yes, via USB yes, USB stick, Montessier HAT
SDR yes, via USB_DVBT-Stick (Android app only) yes, via USB_DVBT stick
Autopilot no yes, PyPilot
Internet of Things no yes, MQTT
Finished SD card images Yes no (only for old versions)
Minimum SD card size 8GB 8GB
image / software
download page download page
project page
AVnav OpenPlotter
online demo
Demo server AVnav, Demo server SignalK only Demo server SignalK
online help Web pages GitBook, Wiki OpenCPN
support german sailing forum OpenPlotter forum

Conclusion

Both AVnav and OpenPlotter systems can be used to implement chart plotter functions. The focus at AVnav lies in a web-based, touch-enabled operation of the software. Therefore, AVnav is ideal for tablets and mobile phones as display devices. The headless server application is slim and looks very heterogeneous. The operating concept is uniform and the application looks tidy and focuses on the essential functions. OpenPlotter plays to its strengths at the card table. It is operated with a mouse, keyboard and monitor and is easier for beginners because you work in a familiar environment like you are used to from a PC. Due to the operating concept of OpenPlotter, it is more difficult to set up a chart plotter for the helm station, since the components have to be watertight and the operating concept is not tailored to this. But there are also projects where OpenPlotter as chartplotter is used. It's easier for AVnav by using waterproof tablets or mobile phones, which are also more suitable for daylight applications than normal PC hardware. AVnav feels more like a chartplotter, while OpenPlotter feels more like a desktop environment.

The Raspberry Pi can be used as a substructure for both systems and both systems use SignalK to integrate bus systems and to process measurement data. Therefore, almost all hardware extensions can be managed and used by both systems. OpenPlotter only has an advantage when it comes to special hardware such as the Montessier Hat. Beginners can live quite well with both systems. But you should first be clear about how you want to use the system. In principle, it is possible to switch from one system to the other by simply exchanging the SD card if you should find that the other system is better suited for your own application. The existing hardware can then be used almost entirely for the other system.

As a storage medium, SD cards are not so well suited for continuous use. With a SSD hard drive on USB3.0 you get maximum performance of the Raspberry Pi and higher data security. With an SSD, the Raspi is significantly faster than with an SD card.

If you want to use the Raspi in warm environments such as the Mediterranean, where the air temperatures can reach 40°C, you should ensure that the Raspi has an adequate cooling concept. Otherwise it can happen that the processor reduces the clock frequency and becomes noticeably slower. You can either Aluminum body use or you use glued heat sinks on the processor. Active cooling with a fan is also possible. There are additional boards for the Raspi that contain a fan.

Fig. FLIRC aluminum housing

Fig. Arctic HAT