Serial Buffering for NMEA multiplexer

I am thinking about a project to multiplex a number of marine instruments. They all talk serial NMEA-0183 at 4800 baud.

Some of the instruments are time critical and pass only a single sentence and I would want to pass through the data in real time (or near real time) whilst others are less time critical and pass a burst of sentences (up to 70) which would I would want to buffer and pass through when time permits.

A couple of questions.

1) Do you think the Arduino is a suitable platform for this application? 2) Any ideas on buffering the less critical serial data. External Hardware?? 3) I am considering using the software serial library to allow for four serial inputs and one serial output. Do you think this is the right approach.

You can buy these things commercially, but like most things they are dearer than my DEAREST will allow me to spend so I would like to give it a go with my Arduino! ;D

Happy to provide more information if required



The biggest issue here is that if the instruments can send data when they please, and not only when they are asked to by Arduino you will run into the problem that you are dealing with data from instrument A and at the same time instrument B or C starts sending data.

The arduino mega has 4 hardware serial ports instead of just one. This may be an easy solution, depending on how many devices you are trying to connect.


I'd like to hear more about exactly what instruments you're polling and how you intend to integrate/use the information. You will need to do a 232->TTL conversion on the instrument data (at least I assume you will). I have integrated a marine GPS and compass and am in the process of adding an accelerometer (sailboat racing application).


Thanks for the intrest so far.

Here is a bit more information. Firstly these devices are availiable commercially but I like playing with my arduino.

So that everyone knows what I am trying to achive here are a few links to commercially availiable NMEA multiplexers. I am not expecting to acheive all that a commercial device can do! There are a number of links to nice manuals which describes the devices pretty well.

The instruments I have on my boat are a Navman Tracker 5100, a Raymarine ST2000 autopilot and a Navman 3100 wind instrument. I also have a laptop with charting software.

I want the the Chartplotter/GPS, PC and Wind Instrument to communicate to with each other as well as the PC via its RS232 serial port. Hence the multiplexer.

Each of the instruments manuals are below.
Wind Instrument: