The following article explains how to use Signal K on a Windows PC to interface Digital Yacht’s iKonvert (wired) or NavLink2 (wireless) NMEA 2000 gateways to the popular OpenCPN navigation software. Both gateways are NMEA 2000 certified, galvanically isolated and support full Signal K functionality.
Until recently, Signal K had been mostly associated with the Raspberry Pi, providing boaters with the necessary technical expertise, with a cost effective way to read and display NMEA data. The reality is, that Signal K is an Open Marine Data standard that can, in theory, be run on any hardware or operating system.
Last year, OpenCPN the most widely used “open source” marine navigation software, released an important update that supported the Signal K data format. This update allowed OpenCPN users to take all the data they needed from a Signal K server (running on a Raspberry Pi or similar low cost hardware) that in turn was connected to the NMEA 0183 and NMEA 2000 equipment on the boat.
Purchasing, installing and configuring a Raspberry Pi has got a lot easier of late, but it is still not for everyone and so it was really exciting to learn that the Signal K has recently been ported to Microsoft Windows. Now you can easily download and install the free Signal K Server software on any Windows PC, still the most popular platform for OpenCPN users. If you click on the link above, you will see that the process is well documented and was very straight forward.
Once installed, you will have a couple of new shortcuts on your Windows’ desktop; one to Start the Signal K server and the other to open a browser and display the Signal K server’s web interface.
I also created a third one to Stop the Signal K Service, by making a copy of the Start Signal K Service and then changing the Properties to run the Stop Signal K Service program.
Now whenever you want to run the Signal K Service, just click on the Start Signal K Service shortcut and the server will start running in the background. The following terminal window will be briefly displayed.
After about 10-20 seconds, you should be able to click on the “SignalK-GUI” shortcut and Windows should open a web browser and display the Signal K Server’s web interface (Dashboard).
The next step is to setup whichever Digital Yacht gateway product that you have bought to connect to the NMEA 2000 network; iKonvert (see below) or NavLink2 (skip down to next section).
iKonvert wired (USB) NMEA 2000 gateway
The following procedure takes you through the setup of your iKonvert as a Signal K Data Connection….
- Install the USB drivers which you can download from here.
- Open the iKonvert box and set the four DIP switches inside to the “ON” (Up) position.
- Power cycle the NMEA 2000 network, so that the iKonvert starts in its “RAW” NMEA 2000 mode.
- Plug the iKonvert’s USB cable in to the PC and check in the Windows Device Manager what serial COM Port number the iKonvert has been allocated.
- Start or Restart, if already running, the Signal K Service so that it sees the new COM port
- After logging in to the Signal K server, go to Server>Data Connections and click the “Add” button.
- Select NMEA 2000 as the “Data Type”, enter a meaningful name in the “ID” field and then select iKonvert (canboatjs) in the “NMEA 2000 Source” drop down list.
- You should then select the Serial Port COM number that you found in the Device Manager and make sure you set the Baud Rate to 230400.
- Once everything is setup as shown below, scroll down and click the “Apply” button.
Now Restart the Signal K server and you should see a new Data Connection, called iKonvert or whatever ID you gave it, in the top right corner of the Dashboard. Your setup of the iKonvert USB is now complete and you can skip down to the Setting Up OpenCPN section.
NavLink2 wireless NMEA 2000 Gateway
The following procedure takes you through the setup of your NavLink2 as a Signal K Data Connection….
- Turn on the NMEA 2000 network and ensure the NavLink2 is powered up.
- Scan for wireless networks and either connect to the NavLink2’s Access Point or if you are using it in Station mode, connect to the same wireless network that the NavLink2 is connected to.
- After logging in to the Signal K server, go to Server>Data Connections and click the “Add” button.
- Select NMEA 2000 as the “Data Type”, enter a meaningful name in the “ID” field and then select NavLink2 (canboatjs) in the “NMEA 2000 Source” drop down list.
- You should then enter the IP address of the NavLink2 in to the Host field and set the Port to 2000.
- Once everything is setup as shown below, scroll down and click the “Apply” button.
Now Restart the Signal K server and you should see a new Data Connection, called NavLink2 or whatever ID you gave it, in the top right corner of the Dashboard. Your setup of the NavLink2 is now complete and you can proceed to the Setting Up OpenCPN section.
Setting Up OpenCPN
Once the Signal K Server is setup and receiving NMEA 2000 data via one of our gateways, the last step is to setup OpenCPN to use the Signal K server as one of its data connections. Basically, the Signal K server will send data through a special Localhost “Loopback” connection, which is a neat and efficient way for one application to send data to another application both running on the same PC. Localhost connections use a 127.0.0.1 IP address which is not on a physical network, but just an internal “virtual” network on the PC.
To setup OpenCPN to use the Signal K service, go to Settings>Connections in OpenCPN and add a new Network connection.
Enter the Address of your PC and port 3000, which is the default for the Signal K Server and give the connection a meaningful name in the User Comment box. You can also tick the Automatic server discovery and click the “Discover now” button. You should see the message “Signal K server available” appear.
Once setup click “Apply” and you should see the new connection appear in the connection list.
Finally click the “OK” button and you should start to see the NMEA 2000 data being used by OpenCPN. Currently, there is not much additional data that OpenCPN makes use of from the NMEA 2000 network, compared to NMEA 0183, but this will hopefully change in the future.
In the meantime, you can use the very flexible “Instrument Panel” web app that is included with the Signal K Server, to add extra displays to supplement those already supported by OpenCPN. The screen shot below, shows a normal OpenCPN display, with the Gauges populated with data from the NMEA 2000 network, plus some extra Instrument Panels below the OpenCPN window, showing the status of a Vetus E-Line 10KW 48v Electric Engine.