I have completed an upgrade of the NMEA 0183 data system on Halo. We can now plot a route on the OpenCPN chartplotter in the cabin (Microsoft Surface Laptop running Windows 11) which sends the course via Wifi to the multiplexer which outputs it via RS232 up to the NASA GPS Repeater on the bulkhead in the cockpit.
Equipment used:




- Global navigation satellite system (GNSS) Receiver: I bought the TOPGNSS Model GN2000R on AliExpress. It’s an external satellite receiver using the U-Blox UBX-M8030-KT chipset to receive GPS (USA), GLONASS (Russia), Galileo (Europe) and BeiDou (China). It outputs RS232 data at 4800 bps with NMEA 0183 protocol which I wired into one of the inputs of the multiplexer.
- NMEA2WIFI Multiplexer and Wifi Access Point designed and manufactured by Luis at Vela-Navega in Portugal. I later upgraded the to the four-input bi-directional multiplexer – NMEA4WIFI. A great product at a fraction of the cost of anything else on the market.
- NASA Clipper GPS Repeater from NASA Marine Instruments. This wonderful instrument shows bearing to steer to, COG tracking, distance to waypoint and cross-track error in an easy to read, all-weather display on the bulkhead. Bearings are in magnetic consistent with the compass display.
See our updated NMEA Data Wiring diagram.
Reversed Magnetic Variation Problem
It all worked fine except for one slight problem!
The GPS Repeater displays magnetic bearing-to-steer to which is great BUT after quite a bit of head scratching I realised it was showing the reverse magnetic variation. For example:
- I activated a course on OpenCPN to a waypoint named “Test” at a bearing of 0° True.The WMM plugin on OpenCPN automatically calculates magnetic variation based on your position on the globe. Here in NZ it’s a massive 22 degrees East so the magnetic bearing is 338°.
- I visually verified with a hand bearing compass that the Magnetic Bearing to the waypoint is indeed 338°.
- Using a NMEA 0183 to USB adaptor and the Putty.exe free logging software I was able to verify that the NMEA RMC sentence on the output of the multiplexer correctly shows the Magnetic Variation as 022.3,E.
- 360 degrees minus 22 degrees is 338 however the GPS Repeater is showing the bearing as 22° rather than 338°.
- So the GPS Repeater thinks the mag variation is West rather than East. Mmm.
I also tested the output to my Raymarine ST2000+ AutoTiller and it also showed the bearing as 22° rather than 338° so we can’t blame the GPS Repeater.
Discovered Bug in OpenCPN
After more head scratching and reading about NMEA sentence structures, I learned:
- The NASA Marine manual states that the GPS Repeater requires NMEA version 2.0 (or later version).
- NMEA version 2 and onwards states that the RMC sentence must include an extra field Nbr 12 “FAA mode indicator” however the ECRMC sentence generated by OpenCPN when navigating to a waypoint does NOT include this field.
It seems that if the GPS Repeater and the Raymarine autotiller don’t see the last field they just assume West variation!


An Interim Solution
By playing around with Dirk’s wonderful NMEAConverter OpenCPN plugin I was able to synthesise a new RMC sentence from the incoming RMC from the GPS adding an extra comma and “A” after the Magnetic Variation E or W field.

By filtering OpenCPN to output the “synthetic” XXRMC instead of the ECRMC, the GPS Repeater magically showed the correct magnetic bearing of 338 degrees rather than 22 degrees when steering to a course of 0 degrees true.
OpenCPN is open source free software and I submitted a request to the developers forum to see if they could add the extra field in the ECRMC sentence to make it NMEA Version 2.3 compliant.
After some discussion they agreed to fix the bug and confirmed that the next version (5.00) will include the following fixes:
- Avoid “NAN” in SOG/COG to AP.
- Understand also incoming FAA mode indicator for RMB (NMEA version 2.3)
- Include the FAA mode indicator in $ECRMB and $ECRMC to AP.
Problem Solved
I later installed a beta version OpenCPN V. 4.99.0 and was very pleased to report that it works perfectly and resolved the problem. Thank you OpenCPN software developers!
Update
I later installed the Vesper AIS Transponder to the system This is now the primary source of GPS NMEA data and the TOPGNSS is now the backup GPS receiver.
Full connection details can be seen in the document ‘NMEA Data Schematic Diagram’ at https://halologbook.com/specs/


