NMEA Multiplexer Configuration

The subtitle of this page might be "Configuring Resiliency and Redundancy into the NMEA Network".

I initially installed a Brookhouse NMEA Multiplexer on Sarah in the winter of 2004/2005, a few months prior to starting on Sarah's Atlantic Circle.  The initial purpose was to allow me to make use of the multiple NMEA talkers installed on Sarah.  At the time this included:

  1. Raymarine C-120 Multi-Function Display (MFD)
  2. Raymarine ST6000+ Remote Control and Course Computer
  3. Dell Latitude C600 Notebook Computer
  4. Backup GPS

Subsequently I learned the real value of the Mux as a tool to integrate and trouble-shoot all of the devices I might connect to my NMEA network.  I have described the process of installing the Mux, connecting various talkers and listeners to the network and using the Mux to modify the NMEA data stream to satisfy various devices on the network in a separate page on this website.  The purpose of this page is to document my current NMEA network configuration, the strengths and shortcomings of this configuration and how I would ultimately want my network to be configured.

Original Brookhouse NMEA Multiplexer
On the right is a picture of the original Brookhouse Mux installed on Sarah in 2005.  The firmware in the Mux was upgraded to the latest level in May, 2006.  The significant features of this unit are:

 

  1. Click on picture to view at full resolutionSeaTalk Input Channel.  The Mux can be connected to a Raymarine SeaTalk network, and it will convert the SeaTalk traffic to NMEA sentences, which are then combined with all other NMEA inputs into a single data stream on the output port.  I could have used the NMEA output of one or more of the Raymarine devices, but this interface allows me to separately power the SeaTalk network and provide GPS and sailing instrument data to non-Raymarine devices (PC, radios, etc.) even when the Autopilot and C120 MFD are powered down.
  2. Three (3) NMEA Input Channels (4, if I elected to not connect the SeaTalk network to the Mux).  Initially I connected the Autopilot and C120 NMEA outputs to two of these channels.  A handheld Garmin GPS60 was connected to the third, as a backup to the Raymarine GPS.  Subsequently I had to disconnect the C120 from the Mux in order to feed AIS data to the MFD.
  3. RS232 Input/Output Channel.  The Mux sends the data from all of the input channels to the RS232 output channel.  This channel was connected to a bus bar to which I could connect several different NMEA listeners (e.g., ICOM DSC radios).  The RS232 Input and Output Channels were also connected to the COM1 port on the Navigation Computer, which allowed me to feed NMEA data to PC-based chart plotting software as well as the Airmail SSB email program.
Brookhouse AIS-C Multiplexer
In 2006 I installed a NASA AIS Engine to allow my chart plotters to display the position, course, speed and other information on commercial shipping in my area.  AIS traffic can generate a very high volume of NMEA sentences that could exceed, by an order of magnitude, the 4800 Baud NMEA 183 bandwidth.  Consequently the NASA AIS Engine (and all other AIS receivers) require a 38,400 Baud channel.  When the C120 NMEA input channel is configured to 38,400, that also changes the output channel to 38,400. 

The Brookhouse Mux can be configured to operate at 38,400 Baud, but several of the listening devices on the network are limited to 4800 Baud.  Consequently I implemented the AIS traffic on a separate NMEA network at 38,400 Baud, independent of the Mux.  I then disconnected the C120 NMEA cables from the Mux.  The only NMEA input to the Mux was then the SeaTalk Channel and the NMEA output from the Autopilot.  The NMEA data going to the C120 was limited to the output of the NASA AIS Engine.  The NMEA output of the C120 was not connected to any device.

The Navigation Computer required two (2) NMEA input ports.  One from the Mux with GPS and data from the sailing instruments, and Autopilot.  The second from the AIS Engine with AIS data.

This arrangement worked reasonably well, but I would have liked to reduce the number of cables going into the PC and I would like the option of sending data to the C120 via the NMEA network.

Click on picture to view at full resolutionIn the right is a picture of the Brookhouse AIS-C Mux.  This is a new product (2007) that solves the problem of the combining the 4800 Baud and 38,400 Baud NMEA networks.  I purchased this Mux in January, 2007 with the intention of replacing the original Mux.  I ordered this Mux prior to Brookhouse formally adding it to their product offerings.  The original AIS-C mux delivered to me in late January turned out to have some significant bugs in the firmware that were exposed by my configuration.  Brookhouse replaced that Mux with the one shown in the picture on the right, which has been working flawlessly.  This page originally documented the problem in the original mux, but since the problems have been fixed, I've removed that discussion from this page.

The significant features of the AIS-C Mux are:

  1. 38400 and 4800 Baud Input Channels. The AIS-C Mux provides three (3) 4800 Baud Input Channels one (1) NMEA 38400 Baud Input Channel (from the C-120 MFD), and one AIS input channel at 38,400 Baud.  Because I have the SeaTalk option on this Mux, one of the three 4800B input ports (CH1) is not available.  All of the data received on the AIS, 4800B and SeatTalk ports are combined into a single data stream for output.  The 4800 Baud Input Channels are identified as NMEA CH1, CH2 and CH3 on the Mux label shown in the picture on the right.  The data received over the 38,400B input port (C-Series NMEA OUT) is directed to the speed conversion output port (see 3., below).
  2. 38400 Baud Output Channel.  This channel is normally used to send NMEA data (including AIS) to the C120 MFD.  This channel identified as the "C-Series NMEA IN" port on the Mux label (left side of the Mux).  Note that the labels on the mux are relative to the connected device not the Mux.  That is the "C-Series NMEA IN" port sends data to the C-Series (or other) device.
  3. 38400 Baud Input to 4800 Baud Output Channel Pair.  This paired input and output channel allows the C-Series NMEA data to be transmitted to devices that are limited to 4800 Baud.  The C-Series NMEA data can also be merged with the main output from the Mux by connecting the 4800 Baud Output Channel to one of the 4800 Baud Input Channels on the Mux.  The input port for this channel pair is identified as "C-Series NMEA OUT" on the Mux label.  The output port for the channel pair is the grey terminal block just to the left of the green terminal block in the picture.  This added-on terminal block makes the wiring of the Mux a little more difficult than the Old Mux.  The screw heads for the terminal wires are oriented sideways to the Mux and are difficult (impossible on my tight installation) to access once the Mux is surface mounted on a panel or bulkhead.  It is very easy to put a screw driver on the other terminal screws as they face out from the Mux.  With my tight installation I had to attach the 4800 Baud output wires to the Mux before I mounted the Mux on surface behind my electrical panel.  Not a major problem, but a bit of a pain if I have to disconnect or reconnect those terminals.
  4. USB Interface for PC.  This is not a new feature with the AIS-C Mux.  Brookhouse has been offering it for several years on most Mux models.  It was not available at the time I purchased my original Mux.  This optional feature in conjunction with the AIS Input would allow me to feed all of the navigation data to the PC over a single cable (USB).  The USB port is on the left side of the Mux in the picture.  Although my existing Dell Latitude navigation computers have a RS232 DB9 COM port, my next navigation computer will likely not have a COM port, only USB and Firewire ports.  I opted for the USB interface on the Mux, guessing that the Mux would outlast my navigation computers.  The other option is a USB to RS232 adapter, but I'm trying to reduce the cabling complexity on my nav computers, not increase it.
  5. SeaTalk Input Option.  The same SeaTalk interface I have on the original Mux was also available on the AIS-C Mux.  I elected to retain that capability on the AIS-C Mux.  This allows me to feed NMEA data to my PC without powering up the C120 or the Autopilot.

Below is a list of the NMEA talkers in my network and the Mux port used by the talker..

The NMEA talkers are listed below.

NMEA Talker Device Critical NMEA Sentences provided Mux Connection
Raymarine SeaTalk Network RMC (Generated by the Mux from the ST traffic) ST port
Raymarine S3 Autopilot Course Computer GLL - The S3 output is normally not connected to the Mux.  This is a backup source of GPS and heading data. CH3
Garmin handheld GPS (Internal Batteries) RMC, GGA, GLL CH2
Milltech SR161 AIS Receiver VDM - The SR161 can also pass GPS traffic from one of several Garmin handheld units (see below). AIS
Raymarine C120 MFD RMC, GGA, GLL C-Series NMEA OUT 
Garmin handheld GPS (Boat Battery, via AIS receiver) GGA, GLL, RMC (note if the AIS receiver is the NASA AIS Engine only the RMC sentence is passed to the NMEA network) AIS
Navigation PC, COM7 (USB) None, potentially can provide Autopilot control Blue wire on USB Port

The table below identifies the NMEA listeners.

NMEA Listener Device  NMEA Sentences Processed  Mux Connection 
 Navigation PC, COM7 (USB) All, main connection for PC chart plotting  USB Port 
Navigation PC, COM1  All, alternate NMEA source on PC.  This port is used primarily to provide GPS NMEA sentences to the Airmail email client software and the generation of position reports sent via the SSB radio.   4800B NMEA Buss off the 4800B port on the side of the Mux 
Raymarine C120 MFD   All, but normally only the AIS traffic is unique
(i.e., not on the SeaTalk network)
C-Series NMEA IN 
Raymarine S3 Autopilot Course Computer  GGA, GLL 4800B NMEA Buss off the 4800B port on the side of the Mux 
ICOM M802 SSB DSC Radio  GGA  4800B NMEA Buss off the 4800B port on the side of the Mux 
ICOM M402 VHF DSC Radio   GGA 4800B NMEA Buss off the 4800B port on the side of the Mux 
Furuno NX300 NAVTEX  GGA  4800B NMEA Buss off the 4800B port on the side of the Mux

Currently disconnected 

 
Failure Analysis

On Sarah the Critical Components in the NMEA network, in order of highest to lowest probability of failure, are listed below.

  1. RayStar 125 GPS.  This is the most physically vulnerable component.  It is mounted on the stern rail where a sheet could hook it or a person could fall against it.  So far that hasn't happened, but my navigation (like just about everyone else's) is highly dependent on a GPS.  Multiple backups are essential.  I have elected to not configure a second RS125 GPS, but rather use several less expensive Garmin handheld units.  The RS125 GPS is connected to the SeaTalk network, the backup GPS are connected to the NMEA network.
  2. SeaTalk Network.  This network is not physically vulnerable, but I have learned that a malfunctioning device on the network can cause the network to fail.  This happened in 2006 as I was departing on a cruise to the Mediterranean Sea when the autopilot remote control failed.  It took the entire network offline.  Normally once the failed device is identified it can be disconnected and the network restored.  I have a couple of spare SeaTalk junction boxes (black object just to the right of the AIS-C Mux in the picture further down in this page), which I can use to jumper around the failed device.  Of course if that device is the GPS, the rest of the SeaTalk Network is not all that important for my chart plotters.  Maybe this component should just be called the Raymarine GPS.
  3. Navigation Computer.  This is a Wintel computer system.  What more do I need to say.  I do have an identical backup computer onboard, but keeping two computers updated identically is very difficult, if not impossible.  I expect replacing the primary computer with the backup will not be a 5 minute job.
  4. Raymarine Autopilot.  The autopilot is one of the most complex and hard-working electronic devices onboard.  Although this has been a generally reliable product over the last seven (7) years, it has failed twice.  The primary data loss (if the autopilot must be powered down) is heading data from the fluxgate compass.
  5. C120 MFD.  I have had no failures since it was installed in 2003.  However it is computer-based ...  The C120 MFD generates very little unique NMEA data itself.  Primarily it just converts data received via SeaTalk to NMEA sentences, which is pretty much what the ST channel on the Brookhouse Mux does.
  6. Brookhouse Mux, NASA AIS Engine.  These devices are small, single-board electronic boxes and failures should be very rare.  However the original Brookhouse Mux did fail in 2006, probably due to excessive RF from the SSB radio.  So even if the theoretical Mean Time Between Failures (MTBF) is very long, operator or installation errors can drastically shorten that MTBF.

My goal in configuring the Brookhouse Multiplexer and the NMEA network is to prevent the failure of any one of the components above from degrading the navigation on Sarah.  My further goal is to prevent the failure of any two of these components from causing more than a minor degradation.  The recovery from multiple failures should require no more than simple changes in the network cabling (if any).

The ultimate navigation backup is a combination of a sextant, a calculator, navigational tables and paper charts.  Charts aren't normally necessary on an off-shore passage, but do become important upon land fall, when coastal cruising and when entering a harbor.  My goal is to keep the sextant and navigation tables on the shelf and the charts under the bunk.

For those Ludite navigators who believe that dependence on electronic navigation tools is the source of all evil in off-shore sailing I can only offer the question how often are the traditional navigation tools unavailable (due to severe weather conditions, cloud cover, untenable sea swell, navigator incapacity, etc.) versus the unavailability of electronic navigation (due to onboard failures, satellite failures, etc.)?  I believe the availability of the electronic navigation tools far exceeds the availability of the traditional tools.  The only thing I know for sure is that the dependence on only one of those tool sets (traditional or electronic) is a prime example of poor seamanship.

Click on drawing to view at full resolutionDiagrams

This a schematic of the Mux network before the installation of the AIS-C Mux.  The NASA AIS Engine is on a separate 38400 Baud NMEA network and not shown in the drawing.

Click on diagram to view at full resolutionThis is a schematic of the NMEA network after the AIS-C Mux was installed and the network was re-wired.  Now the NASA AIS Engine is part of the multiplexed network.  The NASA AIS Engine was subsequently replaced with the Milltech SR161 AIS Receiver.
The drawings are very complex and difficult to follow, even with the full-resolution images, so the connections for the AIS-C Mux are listed in the table below.  The AIS-C Mux is the primary Mux feeding NMEA data to the PC (via USB) and the C120 MFD.  Editing and filtering on this Mux are limited to the data stream from the C-Series NMEA OUT to the NMEA OUT 4800 ports.  I have no need to filter this data so I don't expect have any filter scripts for this Mux.
AIS-C Mux Chn   Connected Device     Normal Status     Chg When    Comment   
USB Port  PC USB Hub 1  Active  N/A  Provides all NMEA data, incl AIS, to PC 
NMEA Out 4800  4800B NMEA Buss  Active  N/A  Sends C-120 NMEA data to PC COM1 (for Airmail client S/W), DSC Radios & NAVTEX 
C-Series NMEA IN  C120 NMEA Port  Active  N/A  Provides all NMEA data, incl AIS, to C120 
AIS Connection  NASA AIS Engine  Active  N/A  Receives AIS traffic.  Can also feed RMC sentence from Garmin handheld GPS.  Garmin runs on boat battery 
C-Series NMEA OUT  C120 NMEA Port  Active  N/A   Receives C120 NMEA traffic, sends to NMEA OUT 4800
NMEA Ch3  Open  Active  N/A  S3 Course computer output can be connected to provide a backup source GPS, route and heading data.
NMEA Ch2  Garmin handheld GPS on internal batteries  Active N/A  Backup source of GPS data for PC and C120.
NMEA Ch1  N/A  Active  N/A  Not available as long as ST input is configured 
ST  Raymarine SeaTalk network  Active  N/A  Converts SeaTalk data to NMEA 
  
Data Recovery Plan

The configurations described above are intended to allow the NMEA network to continue to provide all of the critical data to the remaining network devices.  Some corrective action will be required in most case, but it should be minimal.  In most cases no wiring changes will be required. 

The actions required to recover from the various failure scenarios are described in the table below.

RayStar 125 GPS Failure 
Data Losses  Corrective Action  Comments 
GPS Data  Connect GPS60 to deck receptacle  Feeds GPS RMC sentence into AIS NMEA stream 
     
SeaTalk Failure 
Data Losses  Corrective Action  Comments 
GPS Data to PC and C120  Connect GPS60 to deck receptacle  Feeds GPS RMC sentence into AIS NMEA stream 
AP Heading Data  None required, AP NMEA output connected to Mux CH3  Provides fluxgate compass heading 
GPS Data to Radios  None  Loss of automatic GPS data in DSC emergency broadcast. 
 Instrument Data None  Loss of speed, depth and wind data 
     
Navigation Computer Failure 
Data Losses  Corrective Action  Comments  
None, PC is backup to the C120.  It also is used to send/receive email and Weather data via the SSB Radio.  Raymarine C120 MFD provides same navigation capability as PC.  Should have identical configuration, but some setup will likely be required. 
  Replace PC with backup.   
     
Raymarine Autopilot Course Computer Failure
Data Losses   Corrective Action Comments 
Heading data from fluxgate compass  None, there is no alternate source for this data.  Boat heading data is not critical.  COG from GPS is usually sufficient.  The loss of the autopilot function is more critical than any network data provided. 
     
C120 Multi-Function Display Failure
Data Losses  Corrective Action  Comments 
NMEA data to the Common NMEA Buss.  The DSC Radios will not longer receive GPS position data.  None  Loss of a radar display and primary chart plotter is much more critical than any NMEA data loss.  The PC provides backup chart plotter 
  PC is backup chart display   
     
AIS-C Mux Failure 
Data Losses  Corrective Action  Comments 
USB Chn to PC  Switch PC COM1 cable from 4800B NMEA Mux to C120 NMEA OUT port on mux.  Reconfigure PC port for 38400 Baud. I can also replace the AIS-C Mux with the old mux and go back to my prior to Feb, 2007 configuration. Connect AIS COM cable to PC via serial to USB port adapter  This will feed C120 NMEA data directly to the PC.  An alternative is to connect the COM cable to the Garmin output port (CH2).  Use the Garmin to feed GPS data to the PC (at 4800B).  The C120 will continue to receive data from the SeaTalk network Allows PC to receive AIS data.  Existing cables
AIS Data  Move C120 NMEA IN cable to AIS Engine terminal block   Allows the C120 to receive AIS data.  Requires minor re-wiring 
All Data to NMEA Bus  None   Non-critical listeners 
     
AIS Engine Failure 
Data Losses  Corrective Action  Comments 
AIS Data  None  Only source of data 
Backup GPS Path  Connect GPS60 to Old Mux Chn3 cable  Only if SeaTalk or Ray120 GPS fail.  GPS60 runs on internal batteries.  Should this be an extended condition, the GPS cable can be moved from the AIS engine to an available 4800 B input port on the Mux. 
     
     
  
AIS-C Installation Summary

The network described above is operational on Sarah (March, 2007), but has not been used underway (when additional NMEA data is generated).  That test will come in April during a shakedown cruise along the Algarve coast of Portugal prior to departing trans-Atlantic for my return to the US in the summer of 2007.

I have only two concerns about re-configuring to the single AIS-C Mux.

  1. Mux Failure: My Old Mux did fail in Spring, 2006 and had to be sent back to Brookhouse for repair.  I believe that failure was caused by the poor placement of my SSB radio and the antenna lead that ran very close to the Mux.  My Autopilot Course Computer, which is next to the Mux, failed at the same time.  I have since relocated the SSB radio at least 1 meter further away from both of these components.  If the Mux and the new autopilot computer survive the coming (May, 2007) trans-Atlantic voyage (they did), then I will have additional confidence that the risk of another failure has been greatly reduced.  A Mux failure is not catastrophic for navigating Sarah, but it is a pain to reconfigure the data paths around the Mux.  If other components fail, then more re-wiring at sea will be required.  I will retain the old Mux as a backup.
  2. AIS-C Traffic Volume Capacity:  The AIS engine can generate a large number of NMEA sentences (e.g., when transiting the Strait of Gibraltar) and might overload the Mux.  I have done a good bit of load testing the Mux with redundant data streams and the AIS-C has handled that load.  I am not overly concerned about this issue, but I am unable to receive a lot of AIS traffic while berthed in Lagos, PT. 
After completing the trans-Atlantic voyage back to the USA in 2007, my concerns about the AIS-C Mux have been resolved positively.
The Downside of Resiliency
The resilient network implementation described above has been a great success.  I've never had a serious loss of functionality in my electronic navigation system.  However, recently (Sep, 2008) I discovered that this resiliency can mask failures on the system and sometimes make trouble-shooting more difficult.
Because there is a lot of redundant data between the SeaTalk and NMEA networks the loss of data on one of the networks is not always immediately apparent.  On Sep 8, 2008 I readied Sarah to move from my berth at the Town Creek Landing Marina in California, MD to Zahniser's Yachting Center in Solomons, MD for a haul out.  When I connected my Raymarine ST600R Autopilot remote controller to the SeaTalk network I received a "No Link" message on the remote display.  All of the other electronics appeared to be working properly so I disconnected the ST600R and used my wireless remote controller for the short trip across the Patuxent River.
After returning to Town Creek a few days later I started to troubleshoot the "No Link" problem.  At first this seemed similar to the "SeaTalk Fail" problem I encountered in 2006, while in Portugal.  However that problem caused the entire SeaTalk network to lock up, this time it appeared that only the ST600R was having a problem.
Since that 2006 problem I've split the SeaTalk network into two legs.  One leg is powered from the main breaker panel and includes the ST600R, all instruments, GPS, LifeTag, S3 Course Computer, C120 MFD, and the Brookhouse Mux.  The second leg is powered by the S3 Course Computer (on the second SeaTalk interface) and includes the ST6000 AP controller and the wireless AP remote controller.
I powered down or removed components from the network with no change in the symptoms.  I traced the entire main leg of the network and re-seated each of the cable connections.  Again no change.  At that time I submitted a request for technical support to Raymarine.  I was getting close to a planned departure for the Bahamas and I needed to resolve this issue ASAP.
While waiting for a response from Raymarine (this was a weekend) I remembered that the C120 MFD could display the ID of all devices connected to the SeaTalk network.  When I called up that display the C120 could only identify 4 devices, the Depth Sounder, the ST600R, and two unknown devices.  If I disconnected the ST600R that device disappeared from the list, but the C120 still could not see any of the other devices on the network.
Now I was convinced the problem must elsewhere than in the ST600R.  Finally I found a small terminal strip I had used to provide a junction for SeaTalk cables that did not have the molded terminal.  This strip was partially hidden behind some other wiring above the engine compartment.  When I tugged on each of the wires, the yellow data cables were loose.  This terminal strip was between the C120 MFD, Depth Sounder, LifeTag Base and ST600R and the rest of the network.  So the C120 could see those devices, but not the GPS, AP, Speed or Wind instruments.  This was not apparent because the data from the missing devices was being sent to the C120 via the NMEA network.  Only the ST600R complained of the network problem, because it could not communicate with the S3 Course Computer.
So I and Raymarine spent a lot of time troubleshooting a problem that would have been almost immediately apparent if I didn't  have nearly all data backed up on the NMEA network.  Of course if I didn't have that resiliency my electronic navigation system would have been down hard.  As it was there was no loss of functionality other than having to use a backup remote controller for the AP.
I guess I can live with a little troubleshooting complexity for the sake of resiliency.
I don't have a complete explanation for the Unknown devices on the C120 display.  One of them is clearly the LifeTag base unit.  When the network was restored this still shows up as an unknown device.  For some reason Raymarine has still not added that device to the C120 configuration tables.  I could not determine the source of the other unknown device.  With the network connection restored only the LifeTag shows up as unknown.