continuousWave --> Whaler --> Reference

Universal NMEA-0183 Interface

by James W. Hebert

A consistent method for interfacing of NMEA-0183 serial data ports is presented.

NEMA-0183 Serial Data Ports

Update: March 2014. Three years ago I looked at the problem of NMEA-0183 interfacing with a goal of developing a universal solution. I described a solution I developed using a five-pole connector wiring. I have since developed an improved version, which I will now describe. The only difference in this version from the original is my connector pin layout for use with the five-pin headers and backplane that I used for my implementation of the method. The location of the signals on the five pins has changed slightly in order to greatly simplify the wiring of the backplane.

This method allows simple interconnection of NMEA-0183 signals from either a single-ended or differential TALKER to either a single-ended or differential LISTENER. I have also written a separate article, Guide to NMA-0183 Interconnections, that describes the rules used to make these interfaces. The guide also explains how to interpret the many non-standard names or designators that manufacturers give to their signals. I recommend reading the guide, too, in order to better understand the interconnection method used here.

In NMEA-0183 the standard calls for the serial data interfaces to be differential signals, but many manufacturers ignore that and use single-ended interfaces. It is actually quite common among NMEA-0183 devices that a single device could have both types of ports. For each NMEA-0183 port we have a TALKER and a LISTENER, and either or both can be differential or single-ended. This mean there are four possible configurations for an NMEA-0183 port:

When interfacing two NMEA-0183 ports, we have to account for all the possible combinations of these four arrangements. There are ten possible combinations:

The goal is to find a consistent wiring arrangement that will allow the interconnection of these four different interface configurations in all ten combinations so that their interconnection at the interface is always the same. If a five-pole or five pin interconnection is used, it is possible to create a consistent method of wiring that will work in all situations. I will describe the method below.

Device Wiring

First, I will describe the four different wiring configurations for the transmit and receive signals to be wired to the five poles. I call the poles A-B-C-D-E. The table below shows how to connect the NMEA-0183 signals to the five poles in the four possible arrangements of transmit and receive circuits that exist in the various implementations found in devices in the field:

Device Wiring: both ports differential
TALKER and LISTENER Differential
POLESIGNAL
A TALKER A
B TALKER B
C GND or chassis or shield
D LISTENER B
E LISTENER A
Device Wiring; TALKER single-ended; LISTENER differential
TALKER Single-end; LISTENER Differential
POLESIGNAL
A TALKER A
B GND or jumper to C
C GND
D LISTENER B
E LISTENER A
Device Wiring: TALKER differential, LISTENER single-ended
TALKER Differential; LISTENER Single-ended
POLESIGNAL
A TALKER A
B TALKER B
C GND or chassis or shield
D No connection
E LISTENER A
Device Wiring: Both TALKER and LISTENER single-ended
TALKER and LISTENER Both Single-ended
POLESIGNAL
A TALKER A
B GND or jumper to C
C GND or chassis or shield
D No connection
E LISTENER A

Note that for single-ended TALKER arrangements you must have a GND at "B", and it can be either via the cable or via a jumper to "C".

Interconnect Wiring

If the NMEA-0183 signals are always wired following the convention noted above, then they can always be interconnected using a consistent wiring arrangement. That universal arrangement is as follows, again notated using the five poles as A-B-C-D-E. The first device is denoted with suffix "1" and the second device with suffix "2". We interconnect the device with a consistent method, as follows:

Interconnect Wiring
Interconnect Wiring
FIRST DEVICESECOND DEVICE
A1 E2
B1 D2
C1 C2
D1 B2
E1 A2

The C1 and C2 terminals are also wired to the power negative or ground. The interconnection wiring can be accomplished in several ways. I implemented by building a small circuit board or backplane with four sets of headers. The headers are interconnected in pairs. However many arrangements are possible.

The problem of interconnection is now very simple. One must identify which type of interface is being used, i.e., is the device interface differential, single-ended, or a combination. Next, one identifies the wire colors which are used for each signal, and then those signals are wired to a five-pole interface according to the scheme shown above. Using this approach, it should be possible to interconnect any two NMEA-0183 devices with the method described above. This is truly a universal solution.

The wiring arrangement is now solved by a universal method of interconnection. I am not proposing that a specific connector be used. In fact, no connector is needed. One could wire devices to terminal strips or binding posts and then interconnect them as I have described. Later I will show a connector arrangement using very inexpensive devices which can be interconnected using a pre-wired backplane.

For devices that have multiple NMEA-0183 ports, each port is handled independently. A device with, say, two NMEA-0183 ports would have two five-pole interconnects wired to it, one for each port.

Example Device Wiring

Many manufacturers label the NMEA-0183 port signals with non-standard names. The signal that NMEA calls TALKER A is often called "Tx+" or "Out+" or something similar. The signal that NMEA calls TALKER B is often called "Tx-" or "Out-" or something similar.

The signal that NMEA calls LISTENER A is often called "Rx+" or "In+" or something similar. The signal that NMEA calls LISTENER B is often called "Rx-" or "In-" or something similar.

The use of the plus and minus signs on the signals should not be confused as being the polarity of a DC circuit. In a differential circuit the minus sign is often used to indicate the inverted signal, and the plus sign to indicate the non-inverted signal.

Lowrance HDS

Let's look at an example using the Lowrance HDS-8 configured as a differential device. Lowrance calls this mode "RS-422." In this mode the device has differential TALKER and differential LISTENER ports. The standard wiring to the five-pole connector will be:

Universal NMEA-0183
Lowrance HDS-8 RS-422
POLESIGNALWIRE COLOR
A TALKER A YELLOW
B TALKER B BLUE
C GND Shield
D LISTENER B GREEN
E LISTENER A ORANGE

The Lowrance HDS-8 can also be configured to have two single-ended serial communication ports. Lowrance calls this mode "RS-2323." This configuration has has single-ended TALKER and single-ended LISTENER ports. The standard wiring to the five-pole connector will be as shown below, with a separate table for each of the two ports:

Universal NMEA-0183; Communication port 1
Lowrance HDS-8 RS-232
POLESIGNALWIRE COLOR
A TALKER A YELLOW
B TALKER B Jumper to C
C GND Shield; jumper to B
D LISTENER B No connection
E LISTENER A ORANGE
Universal NMEA-0183 Communication Port 2
Lowrance HDS-8 RS-232
POLESIGNALWIRE COLOR
A TALKER A BLUE
B TALKER B Jumper to C
C GND Shield; jumper to B
D LISTENER B No connection
E LISTENER A GREEN

Standard-Horizon GX1500S

Similarly, the Standard-Horizon GX1500S is also a differential device on both ports, and would be wired as follows:

Universal NMEA-0183
Standard-Horizon GX1500s
POLESIGNALWIRE COLOR
A TALKER A GRAY
B TALKER B BROWN
C GND Shield
D LISTENER B GREEN
E LISTENER A BLUE

Some interpretation of the manufacturer's nomenclature is needed. S-H refers to the signals as "NMEA OUT" for TALKER and "NMEA IN" for LISTENER. Most users should not have a problem making this association.

We see that the interconnection of these two devices using the universal wiring configuration works perfectly. To test the applicability of the method, I will try a few other random devices to see if they can be interfaced this way.

ICOM M422

A popular VHF Marine Band radio is the ICOM M422. Its NMEA interface consists of just two wires: a red conductor is the "NMEA IN LEAD" which is interpreted as the LISTENER A signal. A white conductor is the "NMEA OUT LEAD" which is interpreted as the TALKER A signal. Here again we see the inconsistency in labeling of the signals and total inconsistency in the wire insulation color coding. The device is clearly a single-ended device, on both the transmit and receiver signals. The wiring of the M422 to the five-pole interface is thus:

Universal NMEA-0183
ICOM M422
POLESIGNALWIRE COLOR
A TALKER A WHITE
B TALKER B GND via jumper to C
C GND Not provided; jumper to B
D LISTENER B No connection
E LISTENER A RED

The ICOM M422 does not provide any shield or chassis or ground lead. We can use the power negative lead (almost universally the black wire of a red-black pair) to be the source for a conductor, or we can omit the conductor entirely and depend on the power negative circuit between the M422 and other devices to complete the circuit. That approach will usually work if the two devices are powered by a common power source--typical on a small boat--and the common power circuit is not too distant. Since the devices are typically connected to the same secondary power distribution panel, the common circuit path will usually be only a few feet in length and should be suitable.

Raymarine A70

The RAYMARINE A70 is part of the A-Series of devices from RAYMARINE. It offers two NMEA-0183 ports. Each port is a differential port for both TALKER and LISTENER. The nomenclature of the RAYMARINE refers to the signals as IN and OUT signals and denotes them as either "+ve" or "-ve". This is interpreted as IN means LISTENER, OUT means TALKER, "+ve" means "A" and "-ve" means "B". The five-pole wiring will then be:

Universal NMEA-0183
RAYMARINE A-Series Primary Port
POLESIGNALWIRE COLOR
A TALKER A YELLOW
B TALKER B BROWN
C GND (not provided)
D LISTNER B GREEN
E LISTENER A WHITE
RAYMARINE A-Series Secondary Port
POLESIGNALWIRE COLOR
A TALKER A ORANGE-YELLOW
B TALKER B ORANGE-BROWN
C GND (not provided)
D LISTENER B ORANGE-GREEN
E LISTENER A ORANGE-WHITE

With differential signals, the ground or shield or chassis conductor is not required for the electrical connection, and can be omitted. The common power connection will be relied upon when interfacing to unbalanced devices.

Garmin 700-series

GARMIN is a popular manufacturer of marine electronics. We look at their popular GPSMAP 700-series devices and the NMEA-0183 interfaces used. The nomenclature used is very straightforward: Garmin refers to the signals as "Tx (out)" and "Rx (in)". The ports are single-ended for both transmit and receive and there are two ports. The wiring to the five-pole connector is thus:

Universal NMEA-0183
GARMIN 700 Series Primary Port
POLESIGNALWIRE COLOR
A TALKER A BLUE
B TALKER B jumper to C
C GND BLACK (of power cable)
D LISTENER B no connection
E LISTENER A BROWN
GARMIN 700 Series Secondary Port
POLESIGNALWIRE COLOR
A TALKER A GRAY
B TALKER B jumper to C
C GND BLACK (of power cable)
D LISTENER B no connection
E LISTENER A VIOLET

Again there is not a separate NMEA ground conductor, and the power negative lead must be used. A dedicated conductor can be wired to the power negative and run to the five-pole connector, or the power circuit common can be relied upon without running a new conductor.

SIMRAD NSE and NSS

The SIMRAD NSS models have NMEA-0183 ports that are (RS-422) differential TALKER and differential LISTENER, but they can be set to single-ended (RS-232) The wiring for the RS-422 configuration, as shown in the current instruction manual is:

Universal NMEA-0183
SIMRAD NSE Series from Installation Manual
POLESIGNALWIRE COLOR
A TALKER A YELLOW
B TALKER B BLUE
C GND (not provided)
D LISTENER B ORANGE
E LISTENER A GREEN

Apparently there was some change in production, and some units were wired with a color code of wires in the data cable. SIMRAD sent on an errata sheet to owners of these models. The information below comes from an errata sheet sent with a recently installed unit. As can be seen, the polarity conventions are inverted with respect to the information from the manual.

Universal NMEA-0183
SIMRAD NSS Series from Errata Sheet
POLESIGNALWIRE COLOR
A TALKER A BLUE
B TALKER B YELLOW
C GND (not provided)
D LISTENER B GREEN
E LISTENER A ORANGE

Interconnection Wiring Device

To test my universal NMEA-0183 interconnection method, I wired up two NMEA-0183 devices on my bench with five-pole connectors. For the cable-end connectors coming from the devices I used a very inexpensive MOLEX 0.100-inch terminal housing connector. For the mating connector I used a mating MOLEX 0.100-inch pin header. I selected the forms with pins and locking tabs. The cable end connectors are wired by using small crimp terminals and crimping the terminals onto the wires of the cable. You then slide the terminals into the back of the connector housing. There is a small latch spring on the terminal that captivates the terminal in the housing, but you can easily release the terminal and withdraw it, if you need to at a later time. Crimping the terminals requires a particular crimp tool. I happen to have a MOLEX crimp tool which does a very good job on these terminals. The tool rolls the sides of the crimp over and down onto the wire. There is also a second crimp to grab onto the wire insulation to give more strength to the terminal-to-wire joint.

These terminals are rather small, and you have to have some skill in handling them. They're not for the ham-fisted assembler. The crimp has to be the right size, too, or the terminal will not slide into the housing correctly. However, if you can overcome these difficulties, this connector makes a very small, very inexpensive five pole connector for about a $1 cost.

I mounted the pin headers on a small circuit board I found at RADIO SHACK. Normally I eschew purchase of anything at RADIO SHACK, but they happen to have a very handy pre-drilled experimenters circuit board that provides an appropriate pin layout for mounting four 5-pin headers and easily interconnecting them. I soldered four headers on the experimenter's circuit board, and then used some short jumpers to interconnect them with my universal NMEA-0183 interconnection arrangement. Again, that arrangement is:

Universal NMEA-0183
Backplane Wiring
FIRST DEVICESECOND DEVICE
A1 E2
B1 D2
C1 C2
D1 B2
E1 A2

The RADIO SHACK circuit board is not pre-tinned, but the copper is quite clean (which is not always the case with these products) and it took solder easily. The lands for the solder pads are closely spaced, and care must be taken not to make a solder bridge between adjacent lands. Use a micro-chisel tip and a soldering pencil of appropriate wattage.

The two devices I had on the bench for testing were my HDS-8 and my GX1500S. The GX1500S can only be set-up one way: differential receiver and differential transmitter. I crimped the four conductors and inserted them in the terminal housing. I used the layout I previously determined (see above). The HDS-8 can be configured as either a single pair differential receiver-transmitter or as a dual pair of single-ended receiver-transmitters. For my first test configuration I used the single pair differential receiver-transmitter configuration. I crimped on the terminals and inserted the wires into the housing. Again, I used the layout I previously determined (see above).

Testing The Method

With the two devices wired to their universal five pole connectors, the interconnection should now consist of just pushing the terminals onto the pre-wired backplane interconnection device. Now to see if it works!

I powered-on the HDS-8 and let it acquire a position fix. Then I turned on the GX1500S. The radio immediately showed it was receiving data from the GPS receiver via its NMEA-0183 interface. The universal wiring arrangement worked perfectly. I shut everything off and moved to the next test.

Screen capture of HDS satellite status display
The GPS data we want to send to the radio.

Photo: GX1500S radio display showing navigation data
The radio display that confirms the interface is working.

Next, I reconfigured the HDS-8 to switch to single-ended receiver-transmitter ports. Then I re-wired the conductors from the HDS-8 to the terminal housings. This is where the removable crimp terminals came in handy. Using a very small screwdriver, I was able to easily release the terminals from the housing and reposition them. Since the HDS-8 now has two ports, I needed two housings. I wired the single-ended ports as I had previously determined (see above), but I had to add a jumper between poles B and C on each terminal. Without this jumper, the differential receiver of the GX1500S would not recognize any data.

With the terminal housing reconfigured, the universal interface interconnection worked again. Since I had two outputs from the HDS-8 I could move my GX1500 connection to either one. They both worked fine.

Component Details

Here are some details of the connectors I used:

As you can see the component costs for the connectors and backplane wiring device are very low. To assemble each port required only five terminals and a housing at a cost of $0.65. To make a backplane interconnect with four ports costs about $3.75 in components and a bit of wire and solder.

Some images of the interface and its components:

Photo: parts of connectors
The connector components on the right. From top to bottom: housing, terminals, header. On the left the pre-fab circuit board.

Photo: the assembled backplane interconnection, connector side
The assembled backplane connector. The wiring arrangement on the other side and is not seen here. The "A" terminal is at the top of the two connectors on the left and at the bottom of the two connectors on the right. (The MOLEX data sheet specifies that terminal as "CIRCUIT 1".) This reversed orientation of the connectors is critical to make the wiring very simple. There are two sets of connectors, paired horizontally. The green and white wires connects to power negative from the GND pins.

Photo: the assembled backplane interconnection, wiring side
The assembled backplane connector, on the wiring side. The wiring is very simple: straight across for the two sets of paired connectors. This board looks a little rough because I had built another version of the backplane on it, and I had to remove that version, clean up the solder paths and holes, and then re-use the board for the new version. I'll try to get a new board and take better pictures. Also, these boards are not tinned, and the don't have plated-through holes. They can be tedious to solder.

UPDATE 2023

The RADIO SHACK circuit board is no longer available. A replacement circuit board (and perhaps a better-suited product) is available from JAMECO ELECTRONICS. Their model SB300 solderable PC board costs $5 and should be useful for constructing the backplane connector board. One board could make several NMEA-0183 interconnecting backplane boards. I have also updated the prices for the Molex connectors to their 2023 costs.

Photo: alternative circuit board for use in making the backplane connector board
To replace the RADIO SHACK circuit board, the JAMECO ELECTRONICS SB300 is a good substitute.

Photo: wiring of terminal housing for HDS
Wiring from HDS to connector for two ports with single-ended signals. Callouts identify the connector pins according to my labeling in this article.

Photo: wiring of terminal housing from GX1500S
Wiring from GX1500S to connector for one port with differential signals.

Photo: crimp tool and small screwdriver
The MOLEX crimp tool and a very small 1.5-mm screwdriver used to manage the release of the terminals from the housing.

Photo: crimp jaws closeup
Detail of the crimp jaws.

Photo: GX1500S radio display showing navigation data
The work bench. The universal NMEA-0183 connection is in the foreground in front of the HDS-8.

Other Interconnection Arrangements

The universal wiring approach to interconnecting NMEA-0183 devices does not require a specific connector or wiring device arrangement. One can use any sort of wiring device they like for the interconnection. The header with pins and push-on housing connector I show above are attractive due to their very low cost and wide availability.

It is also possible to reduce the interconnection to just four poles and omit the C-pole. However, I found the five-pole interconnection to be very useful. The first device I used to interface----the HDS--had five wires in its data cable because it can work as both a differential or a single ended source. The five-pole connector provides a place for the fifth wire to go. Another device I looked at early in this analysis did not provide any ground or shield wires. The use of the five-pole connector allows one to easily provide a ground for the transmit circuit to be referenced to, without having to create a new conductor in the data cable for the circuit, by use of the jumper between pins B and C. Otherwise one has to pick up the power negative, which may be in another cable, and run a new conductor over to the interface wiring. These two instances are why I used a five-pole connector. The extra pole is not absolutely needed, but it works out to be useful in several circumstances. The added cost of a five-pole versus a four-pole connector is inconsequential. I don't see any problem with a five pole connector because it makes the wiring handier. A four-pole connector could be used, but one would have to be diligent to always provide a ground or shield where needed, and the external ground on the backplane to pole E could not be used.

Interfacing to RS-232

Soon after developing this universal interface method, I had need to connect some marine electronic devices to an RS-232 serial port interface on a DB-9M connector. I built a small adaptor by wiring a DB-9F connector to a 5-pin header connector. A RS-232 interface device is a 1/1 or singled-ended transmitter and single-ended receiver. The details of the adaptor are:

Universal NMEA-0183
NEMA to RS-232 Serial Port
POLESIGNALWIRE COLORDB-9F PINRS232 SIGNAL
A TALKER A BLACK 3 TxData
B TALKER B WHITE 5 GND
C GND WHITE 5 GND
D LISTENER B None - No Connection
E LISTENER A RED 2 RxData

Photo: DB9F to 5-pin header connector.
An adapter cable for RS-232 on DB9 to my Universal NMEA-0183 interface was fabricated.

Beauty In the Method

When I began this project I was really just looking for a method of interconnecting devices that would use a suitable connector, that is, a small connector that was easily available and not very expensive. The MOLEX pin header and mating terminal easily satisfied those requirements. The next step was to design how the various device signals would be wired to the connector. It was then that the question of a consistent wiring method came under consideration.

After some investigation I realized that it would be possible to accommodate all ten variations of interfacing with a single method. The beauty of this approach did not reveal itself to me until I had actually made and connected a number of devices. At some point I wanted to add a new device to the system. In the past a detailed study of how to interconnect the new device to existing devices would have been necessary, but now, with the universal method, I only had to configure a connection of the device to the universal interface. Once properly terminated to the universal interface the rest of the proces would be automatic. This is the real beauty of using this method.

NMEA Standard Color Code

The National Marine Electronics Association (NMEA) has considered the problem of inconsistent use of wire color codes on the NMEA-0183 interface. There is a draft of a new standard proposed. If the new standard is adopted, and if manufacturers begin to conform to it, the interfacing of any two compliant devices would become much more consistent. A separate article discusses the new color code standard for NMEA-0183. To interface a NMEA-0183 device that followed the proposed standard for wire color using the my Universal method, the wiring would be as follows:

Universal NMEA-0183 with NMEA standard colors
NMEA 0183 Proposed Standard
POLESIGNALWIRE COLOR
A TALKER A WHITE
B TALKER B BROWN
C GND BLACK
D LISTENER B GREEN
E LISTENER A YELLOW

Other Connectors

My Universal NMEA-0183 wiring can be applied to many other connectors. Perhaps the simplest is a terminal strip. Consider a five-pole terminal strip with two terminals. Connect one device to the left side using the the five poles as A-B-C-D-E from top to bottom, and connect the second device using the five poles as A-B-C-D-E from bottom to top. This is shown below:

Photo: Five-pole terminal strip as connector.
A commom five-pole terminal strip can also be used as a connection point for the Universal NMEA-0183 interface. Consider the terminals to identified as shown, and connect the two devices accordingly, one to each side.

I found I was working with many different radios in some testing I was doing. The radios all had their NMEA signals on wire fan outs. To connect them temporarily to my Universal Interface system, I made a little test adaptor. On one end I have my five terminal header connector, and on the other end a four-position terminal strip. I can connect the wire fan out from a radio under test to the terminal strip, and then connect the device to my Universal Interface. The adaptor is shown below.

Photo: Terminal strip to header connector adaptor.
A four-pole terminal strip is wired to a five-pole header connector.
The terminal strip connections can be considered as poles A-B-D-E, and the
unconnected shield or ground as pole C. For unbalanced signals "C" can be
connected as a jumper to B if needed. For balanced signals the shield is
not needed and is not connected. I use this interface to temporarily wire to
devices under test on my bench,

Further Discussion

If this article has raised any questions or if you have a comment, feel free to post it to a discussion thread reserved for that purpose.

Copyright © 2011 by James W. Hebert. Unauthorized reproduction prohibited.

This is a verified HTML 4.01 document served to you from continuousWave


Author: James W. Hebert
This article first appeared December 21, 2011.

Valid HTML 4.01 Transitional

Valid CSS!