Posted by: Ger Rietman | December 12, 2018

Will NMEA 0183 be Around Forever?

The skyrocketing advancement of technology has impacted the world in a significant way. All sectors of the world economy have been impacted by technology in one way or another. Some of the most notable technological trends are in communication, production, and manufacturing industries. These improvements in technology will not stop any time soon because there is need for improved efficiency of operations. There is always room for improvement so things will still get better with time. It’s hard to imagine what the future holds.

Rarely will you hear people discuss the impacts of NMEA 0183. People only talk about things that they control or those that they get into direct contact with quite often. Although people still don’t address NMEA 0183 related issues, their lives are significantly by this technology.

Understanding NMEA 0183

Before we even go further, it is important that you gain a clear understanding of what NMEA 0183 is. Well, NMEA 0183 is a data and electrical specification used for communication between different marine electronics. NMEA 0183 allows for effective communication between marine electronics like GPS receivers, anemometer, autopilot, and echo sounders among others.

from Sailsoft simulates many NMEA 0183 devices and sensors as shown above:

The National Marine Electronics Association controls NMEA 0183. In case you don’t know, the NMEA 0183 replaced the NMEA 0182 and NMEA 0180 standards. The greatest challenge today is that the NMEA 0183 is facing competition from the NMEA 2000 standard.

The NMEA 0183 uses serial communications and ASCII protocol to define how information is transmitted from one place to another. The best thing about the technology is that one talker can have several listeners. Multiple sensors also talk to one computer port. The NMEA 0183 application layer, the content of all sentences are well defined in such a way that messages can be parsed by listeners accurately.

NMEA 0183 standard defines how electronic signals are transferred in a serial data bus. It is worth noting that bus can have several listener devices and one talker device. Some of the important types of information transmitted are frequency allocation, speed, position, and depth. Soon after the NMEA 0183 was introduced, it quickly became popular across the world as marine electronic equipment.

Differentiating between NMEA 0183 and NMEA 2000

In the late 1990s, the NMEA 2000 was developed. It is currently very popular and in most incidences, it replaced the NMEA 0183 because it met needs that could not be met by earlier versions. Since 2000s, technology has been advancing at an astonishing rate. Most devices or equipment that were used decades ago became obsolete.

The marine industry was not an exception because changes also occurred. There was need for both present and past mariners to be satisfied by equipment introduced. The NMEA 2000 is significantly different from NMEA 0183 due to various factors such as reduced wiring, higher speed, improved safety, provision of real time control, and incorporating different manufacturer’s equipment among others.

Can NMEA 0183 stick around Forever?

We will look at various factors to determine whether NMEA 0183 is here to stay or not. Looking at its functionalities and the differences between it and the NMEA 2000 will help in coming up with a conclusion. Trends in current technology will also be important to consider.

Even after the NMEA 0183 was introduced more than three decades ago, it is still being used in all marine markets. NMEA 0183 has a wide range of use in the marine world. The technology is currently being embraced by both small recreational boats and huge transatlantic vessels. The fact that this technology seems to adapt with ongoing trends shows that it will be around for a long time. Most of the inventions older than three decades have been replaced by completely advanced technology. However, NMEA 0183 still remains relevant in the marine world.

The wide range of use of NMEA 0183 makes it hard to beat even with recent advancements in technology. The technology is able to serve both large scale and small scale operators equally. Applicability at different levels is highly beneficial because it helps to link between different equipment thus allowing for effective communication and improved operations.

The best thing about NMEA 0183 is that it continues to develop and evolve. Technology that does not change according to times can easily become out dated. NMEA 0183 will continue to serve for long because it adapts with changing needs of people. Its dynamic nature will make it suitable even for future needs.

Technology changes especially in response to the most significant component of an industry. In marine transport, large commercial ships have unmatched benefits over others because they play a major role in impacting the technology. NMEA 0183 continues to develop in regards to cater for the advanced needs of large commercial ships. The fact that it can adapt to such major sectors of the economy shows that it will continue serving people for a long time.

Growing Need

The need for sharing of information, integrating shipboard systems, data collection, controlling systems, and sensing technology is increasing at a high rate in on board vessels. Most of the operations currently happening in different parts of vessels from the bridge, engine room, off the ship, and the administrative personnel occur by means of satellite communication.

Technology is still needed in more water vessels to improve the efficiency of operations. Recreational boats, fishing vessels, coastal vessels, and ships still demand for applications in varying degrees. Each of these vessels requires communication of vital information with varying capabilities. NMEA 0183 finds a way of meeting the growing demand of these vessels. The technology continues growing in popularity thus inspiring more developments and growth.

NMEA 0183 is a standard of the marine industry with voluntary compliance. With time, NMEA 0183 has been accepted by almost all marine electronics manufacturers. The fact that NMEA 0183 is still being incorporated into most marine products shows that its value is still increasing with time. Its difficult for technology that keeps improving in value to become extinct. Although changes and new developments will continue to occur, NMEA 0183 will not go anywhere.

Posted by: Ger Rietman | October 8, 2017

New version of WaypointCreator, now WaypointsCreator



As many already know, WaypointCreator is a nice, free, little program by Sailsoft. No license required.

Unfortunately, due to various license restrictions imposed by some map providers lately , the original program stopped working correctly and threw a number of fatal exception errors at start. Luckily a number of users reported this, so time to consider a new version, and also rename it to WaypointsCreator. note the plural.

What does WaypointsCreator actually do?

WaypointsCreator is a handy little program for creating route waypoints. You can use a number of different maps, amongst others Bing Maps and Google Maps. To create waypoints, simply click on the map location where you want to set a waypoint.

WaypointsCreator will transform the waypoint locations to valid NMEA 0183 $GPWPL sentences or to GPX  format waypoints. You can save these as a text file or as a GPX formatted XML file for later input to GPS and other navigation applications.

NemaStudio and WaypointsCreator

The NMEA 0183 $GPWPL waypoint files can be used in NemaStudio to feed the navigate and auto functions in the GPS module of the program. Note that GPX files are not supported in NemaStudio.

License and support

The program is completely free and may also be distributed freely. No user license is required. Support is limited, but if you have any comments, remarks or suggestions for improvement or new functionality please let me know.


WaypointsCreator relies heavily on the “GreatMaps” control component. GMap.NET is a free, cross platform, open source .NET control. Enables the use of routing, geocoding, directions and maps from a large number of map providers in Windows Forms & Presentation, supports caching and runs on windows mobile.

Download and install

WaypointsCreator can be downloaded and installed from the download page on the Sailsoft website.

Posted by: Ger Rietman | September 5, 2017

Announcing NemaStudio Version 1.36 with BAM module

BAM module in NemaStudio, click to enlarge


NemaStudio Version 1.36 will soon be released. Currently it is beta tested by selected customers. Expected release date is by end September 2017, or earlier if possible.

Bridge Alert Management

With Version 1.36, Sailsoft introduces a Bridge Alert Management module in NemaStudio. Currently the support for Alert handling in NemaStudio is pretty basic, but the foundation allows more functionality when required.

What is BAM?

According to the IMO (International Maritime Organization) the definition is as follows: Bridge Alert Management (BAM) – Overall concept for management, handling and harmonized presentation of all alerts on the bridge.”.

BAM implementation in NemaStudio

(See image above, click to enlarge).

When the BAM module is active, it listens and captures incoming messages of type ALC, ALF or ARC (for definition of these see IEC 61924-2). All other messages are ignored.

Received messages of the recognized type are pushed on a queue. Currently the queue size is limited to 1000 messages.

The user can pop up the message on top of the queue and respond with an ACN message with either A(Ack), O(Resp.transfer), Q(Request) or S(Silence). After responding the message is removed from the queue.

Note that it is assumed that NemaStudio is connected to a BAM supporting ECDIS.

Summary of other changes in V. 1.36

1. UDP handling moved to separate threads, no more blocking of GUI
2. Copy and restore xml files introduced, making handling of different scenarios easier
3. BAM (Bridge Alert Management) handling as new module introduced
4. FIX: VBW sentence: SternTransverse Ground Speed and WaterSpeed were interchanged. Corrected.
5. FIX: When semi-docked GPS, course in other document was overridden
6. FIX: New instruments were not added when main form contained no active instruments


Any comments, questions or suggestions?

Please send via this web form or by commenting below.

Posted by: Ger Rietman | September 17, 2016

NemaStudio now supports the NMEA 0183 TAG Block



From version 1.32 NemaStudio supports the TAG block as defined in NMEA 0183 Version 4.0.

NMEA’s definition of the TAG Block

The NMEA defines the function of the TAG Block as follows:

“The TAG Block structure and content is intended to clarify the relationship of sentences to each other and to the equipment between which sentences are communicated. The TAG Block structure introduces the addition of sentence related information into the character stream containing NMEA 0183 defined sentences.”

The TAG Block format

Basically a TAG Block contains one or more parameters. A parameter has a parameter code and a parameter value. Parameter example: “-s:GP0003”. Currently a maximum of 7 different parameters are defined (See below).

A TAG Block always starts and ends with a backslash (“\”” and includes a checksum preceded by an asterisk (“*”).   The TAG Block always precedes the NMEA 0183 sentence. Example TAG Block (red) preceding HDT sentence:


TAG Block parameters

Currently the TAG Block can contain one or more of the following parameters:

Parameter code Parameter name NemaStudio support
-c UNIX time yes
-d Destination Id no
-g Grouping no
-n Line count yes
-r Relative time no
-s Source Id yes
-t Text string no


As can be seen from the table NemaStudio V.1.32 supports   the following TAG Block parameters: –c, –n and –s. Depending demand Sailsoft may include more parameters in future versions of NemaStudio.

The TAG Block is optional

Using the TAG Block is optional and can be set in the NMEA settings tab of the General Settings. This ensures compatibility with applications that do not support the TAG Block. The TAG Block and the parameters can be selected individually in NemaStudio. If the checkbox “Send TAG Block” is unchecked the parameter checkboxes are disabled.

Examples with TAG Block and Multicast UDP from NemaStudio


(Note: the question mark after the UdPbC string represents the null terminator.)

Posted by: Ger Rietman | September 16, 2016

The Light Weight Ethernet (LWE) implementation in NemaStudio



Recently Sailsoft introduced a partly implementation of LWE (Light Weight Internet) in her NMEA 0183 simulation software NemaStudio.

In the IEC standard IEC 61162-450, the term LWE is not explicitly mentioned but is described as “Part 450: Multiple talkers and multiple listeners –Ethernet interconnection”.

Protocol layers used in LWE

As the name suggests, LWE is Ethernet based, hence the Data Link layer is Ethernet. The Network layer is IP. Yet the most notable layer is the Transport layer. This is Multicast UDP, with a predefined IP address range and port destination set.

The choice of UDP over TCP/IP is rather obvious since the latter is a unicast solution and is not suitable for a “One Talker, Multiple listeners” environment, basic feature in NMEA 0183 and IEC 61162 protocols.

IP address range

IEC 61162-450 standard IP address range is through, while the port numbers range from 60001 through 60016. each IP address is designated to a specific group, e.g. port 60003 is assigned to Satellite navigation equipment like GPS.

LWE and NMEA 2000

NMEA 2000 has been around since 2001 and with the intention to replace NMEA 0183. We are 15 years later and I cannot make another conclusion than that NMEA 2000 has failed in this respect.  Today NMEA 2000 has been commonly accepted in the pleasure yacht environment, yet I cannot find any proof that NMEA 2000 is widely used in the professional maritime industry. For some years now rumours are that the NMEA is working on an Ethernet implementation called “OneNet” to abandon the CAN bus transport layer of N2K. To me personally I wonder why NMEA does all this work since there is a good, standardized solution available since 2011 described in IEC 61162-450.

Current status of LWE support in NemaStudio

Since March 2015 (Version 1.27), Multicast UDP has been available in NemaStudio. Recently (Version 1.31) the null-terminated sentence prefix string “UdPbC” was introduced to be more compliant to IEC 61162-450. From Version 1.32 NemaStudio will also (partially) support the TAG block as defined in NMEA 0183 V.4.0.

Further reading

A good article explaining LWE can be found here:

Posted by: Ger Rietman | June 29, 2015

Many updates in the GPS module of NemaStudio in Version 1.27


New Version 1.27 updates

Version 1.27 of NemaStudio comes with many updates, especially regarding the GPS instrument.

A major update is shown in the image left (click image to enlarge). It show the new GUI change when in Navigate mode.

As you may know in this mode you can ‘sail’ a pre-set route, defined in a so called $GPWPL file. The GPS module will then ‘sail’ from Waypoint to Waypoint, as defined in the file. You must navigate and keep the boat on track with the controls in the Object Control Center.

In Navigate Mode you have the option to send two extra NMEA 0183 sentences: XTE and RMB. Before Version 1.27 NemaStudio always has updated the “Destination Closing Velocity” field in the RMB sentence with the value from the Velocity control. This was actually not according the NMEA 0183 specification.

From version 1.27 however NemaStudio is calculating the VMG (Velocity Made Good) and saves this value in the “Destination Closing Velocity” field of the RMB sentence.


How this works is shown by the picture on the left.

Suppose we are following a given route and we are sailing from Waypoint WPn to Waypoint WPn+1.

The further we get off our given track, the Rhumb Line, the lower our relative speed (VMG) will become. At a certain point the relative speed can even get negative.

As set before NemaStudio now saves the VMG in the RMB sentence and is also shown in the GUI, as is the Rhumb Line.

Slave GPS

Also new in Version 1.27 is the possibility to define one or more Slave GPS’s. A slave GPS always has GPS1 as master, so GPS1 always must be active when you want to assign a slave GPS.

NemaStudio127Screenshot2The slave GPS will have all Object Control controls disabled. Course and Velocity are taken from the master, thus GPS1. Also the current position is taken from GPS1.

This way you can simulate you have two or more GPS’s on the vessel, without having to synchronize position, course and speed.

You select the option in the Exec Mode frame.

GPS, other changes and bug fixes

  • From version 1.27 you can, optionally, choose your own Sentence Identifier.
  • A CLR stack overflow Exception situation was corrected,
  • Pos. Update Timer was reset to 1.0 when applying User Tweaked UTC. Corrected.
  • An error in Magnetic Course calculation in the VTG sentence was corrected.

Transducer module

  • The user can now define her/his own Sensor Identification string

Custom module

  • A vertical scroll bar on the sentence input panel was added

Multicast UDP option implemented

NemaStudio now offers also UDP Multicast as an option.


This feature has only be tested to a minimal level, so without routers and other IP hard- or software.

If you are considering using this option I would really like your feedback!

Observe that for UDP Multicast the IP address must be in the range to and that the TimeToLive must be > 0.

Apart from feedback on the UDP Multicast feature I would also like feedback whether you would appreciate implementation of the TAG block in NemaStudio!

Posted by: Ger Rietman | February 10, 2015

Heave, roll and pitch in NemaStudio 1.26

Attitude instrument in NemaStudio 1.26

New version of NemaStudio includes Attitude instrument

Recently Sailsoft released version 1.26 of NemaStudio. Apart from a few relevant bug fixes and some minor improvements a new instrument is introduced, the Attitude instrument.

I have been very reluctant to implement this function since there is no NMEA 0183 standard for Attitude.

Heave, roll and pitch sensors have been produced by a limited number of manufacturers. Each of them using their own, proprietary sentence format not openly published.

Supported manufacturers

In the current version of the Attitude instrument I have implemented the formats of  two manufacturers, Ashtech and Furuno, since some customers were so kind to inform me unofficially about the sentence formats of these manufacturers.

Attitude simulation mode

For each dimension (Roll, Pitch and Heave) an individual simulation option is available by checking the appropriate check box.

When not in simulation mode, each parameter (Roll, Pitch, Heave) can be set individually, also while running.

In simulation mode, the sample time for Roll, Pitch and Heave values is 1/100 second. The algorithm used to calculate the angle in degrees (resp. meters) is

((2 * MaxAngle)/Time)

With the high sensor update rate (0.01 sec) it is possible to achieve a fairly realistic output provided setting the Transmit Interval to a low value, e.g. 0.1 second or even less. Drawback is that you will need a fast serial port baud rate or use UDP ports to avoid buffer overruns.

Bug fixes and other updates in Version 1.26

– Custom Instrument: UDP IP portnumber wrongly shown in GUI, corrected
– General Settings: max velocity now 1023 so msg 9 can be tested against this max
– AIS: msg 24A and 24B now broadcast always over the same channel
– AIS: msg 24A/24B now possible to optional exclude 24B by settings
– AIS: msg 24A fillbits incorrect, corrected
– AIS: msg 14 padding to 40 chars removed, fill bits field adjusted
– AIS: msg 14 belonging to the same sequence now always use same channel

Posted by: Ger Rietman | September 4, 2014

Focus on KNRM (Royal Netherlands Sea Rescue Institution)


The Dutch KNRM (Koninklijke Nederlandse Redding Maatschappij) is probably the only Search And Rescue organization in the world operating without any form of governmental financial support.

The whole operation is fully funded by means of donations from private persons and sponsoring by companies!

Currently they have 80 SAR vessels in operation and 1300 volunteers crewing the vessels and helping ashore. All dedicated to rescuing people!

Sailsoft sponsors KNRM by donating as many free licenses of NemaStudio as required.  NemaStudio is used in maintenance, research and training by various disciplines within the KNRM organization. Recently I received the following testimonial from the head of IT and Communications of KNRM:

"NemaStudio has a huge value for our SAR organization. The software helps us during investigations related to error and operational handling without the need of connecting all kind of additional and specific equipment. In our world we face a lot of brands and technology on board of our 80 SAR vessels. Originally we started to work with the product in the maintenance and repair department. Currently NemaStudio is used in several areas of our organization like maintenance and repair, research, innovation, simulation, training and assessment. In some cases even at the level of mission critical application. Sailsoft is both technically and financially delivering a significant contribution to our work and primary assignment: Search and Rescue people at Sea. We really like the product and the support of Sailsoft is great. "
Carlo Hukema, Head of IT and Communications 
Royal Netherlands Sea Rescue Institution (KNRM)

Of course I am very happy that Sailsoft is allowed to contribute in such a useful way to this great SAR initiative.

Posted by: Ger Rietman | May 22, 2014

New functionalities in NemaStudio NMEA 0183 simulator

NemaStudio play file

Quite a few new functions have been implemented in the latest versions of NemaStudio, Sailsoft’s NMEA 0183  and AIS simulator.

Below you find a short overview and explanation of the new functions that have been implemented in versions 1.23 and 1.24.



General Settings

A new tab has been added to the general settings panel: the AIS settings tab as shown on the right.

Opening this tab will give the opportunity for selecting the AIS radio channel. You can either select to always use channel A (as it was before) or to select to always use channel B in !AIVDM and AIVDO messages. It is also possible to alternate between both channels. Below is an output example of the alternating radio channel for a Class B target:


Communications Settings

A major update concerns the option to be able to use multiple UDP addresses. To be able to set different IP and Port addresses a new tab has been created in the Communications Settings panel as can be seen below.


imageIt is possible to define a maximum of 16 different IP addresses, tagged as UDP0 to UDP15. Any of these can be assigned to any instrument and any target in NemaStudio.

As you can see in the example above you do not need to define all 16 UDP ports. Only those ports that have a valid IP address and Port number will be shown in the actual objects port selection drop down box as shown at the left.

BTW: the IP addresses in the example above are just made up for the sake of the example. In a typical environment they will be more consecutive and in line I suppose.

Play any text file and send to output port

In version 1.22 a playback function for a previously logged scenario was introduced. To be able to play back the original scenario as accurate as possible it is necessary that the log file is recorded with the original date/time and port number used in each line, as in the following example:

2014-01-27 16:01:53 AIS1 COM10: !AIVDM,1,1,,A,15vV=ew00000>PH00@Ch001b050l,0*5Aimage

This can be achieved by checking the appropriate logging options in the General Settings before logging any scenario as shown on the right.

Next to this useful function, NemaStudio introduces in version 1.24 the option of playing any valid text file. Each line is send to the selected output port in 1-second intervals.image

To use this function you have to open the file you want to play in the text editor of NemaStudio.

Clicking the appropriate toolbar button as shown in the red circle in the example at the left will give you the opportunity of choosing an output port. Immediately after you have selected the port of choice the transmission will begin. See also the screenshot in the top of this article.

Minor updates and error corrections

  • The satellites field in the GPS module now reflects the actual number of satellites used in the GSA, GSV and GGA sentences
  • The RMC sentence in the GPS module now accepts the “P” mode indicator
  • AIS Class B target now correctly takes COG and SOG from a linked GPS

Important update

From version 1.24 NemaStudio requires the Microsoft .Net Framework version 3.5.

In order to remain downwards compatible with older versions of Windows NemaStudio has always been built on Framework version 2.0. Now since Microsoft no longer supports Windows XP it was time to upgrade to a higher version of the .Net Framework.

I do not expect any user to get problems with this. The NemaStudio installer will automatically try to download version 3.5 from the Microsoft download servers when it does not find it on your system. If you find any problems during installation pleas contact Sailsoft and we try to solve the issue.

Download links

To download and install NemaStudio version 1.24 FW version 3.5 use this link.

To download and install NemaStudio version 1.23 FW version 2.0 use this link.

Posted by: Ger Rietman | March 11, 2013

NemaStudio version 1.19 released

NemaStudio Velocity instrument

New in version 1.19

In order to simulate a more dynamic behaviour the Velocity instrument and the Weather instrument can from this version of NemaStudio optionally be linked to any active Header instrument.

This affects the NMEA 0183 VHW, VWR and VWT sentences when the user applies the link to the Heading.

VHW sentence


As can be seen in the example above, both True Heading and Magnetic Heading are copied from the linked Heading instrument in NemaStudio.

VWR and VWT sentences

When a Heading instrument is linked to the Weather instrument, both VWR and VWT sentences will relate the wind angle to the True Heading of the linked Heading instrument.

Other changes

As you know, incoming data over a serial I/O port is not interpreted by NemaStudio, there are several other applications on the internet available if you need this.

However, NemaStudio will read the incoming data and show the data in the I/O Port Monitor panel in red colour. Reading data resulted in some cases in thread/timing conflicts when the same port was used for transmitting data, causing NemaStudio to hang. This has been corrected.

There was also a small bug introduced with the arrow key handling in version 1.28. This bug has been corrected.

Download and install

You can download and install Version 1.19 of NemaStudio via the following link:

Older Posts »