Protocols - NMEA 0183 I/O
Introduction
The NMEA0183IO
library provides a suite of I/O Servers to interface CDP signals with the NMEA 0183 protocol, a widely adopted marine communication standard. It enables bidirectional translation between CDPSignal values and NMEA 0183 ASCII sentences, allowing integration of CDP applications with maritime navigation and sensor systems.
Supported transport layers include:
- Serial (e.g., RS-232, RS-485, RS-422)
- UDP over IP networks
- TCP/IP connections
- Internal CDP messaging
The library includes the following pre-defined I/O Server types:
- NMEAOnSerial – NMEA 0183 over serial ports
- NMEAOnUDP – NMEA 0183 via UDP/IP
- NMEAOnTCP – NMEA 0183 over TCP/IP
- NMEAOnCDP – NMEA 0183 exchange using CDP's internal messaging. This can typically be used for tunneling NMEA data through special hardware, such as the Wago 750-652 module, or for software-multiplexing NMEA telegrams.
Note: The NMEA 0183 standard is maintained by the National Marine Electronics Association (NMEA) and requires a license for full access to official documentation.
Usage
To use the NMEA0183IO library:
- Add one of the supported I/O Servers to your CDP Studio system
- Configure the I/O Server to match the transport method (Serial, TCP, UDP, CDP)
- Define NMEA Sentence Handlers to map specific NMEA sentence fields to CDPSignals
- Connect the CDPSignals to producers or consumers in your system
- Use CDP Studio to monitor and verify communication
See the following for step-by-step instructions:
Details
The NMEA0183IO library is designed to simplify integration with systems that communicate using NMEA 0183, a standard used for GPS, AIS, sonar, and various marine sensors. Each I/O Server in the library handles:
- Parsing incoming NMEA sentences and updating corresponding CDPSignals
- Formatting and sending NMEA sentences based on CDPSignal values
- (Optional) Sentence checksum verification
Supported Features:
Each sentence type (e.g., GPGGA
, GPRMC
) can be individually configured with:
- Header
- Signal mappings
- Optional checksum Disable
Troubleshooting
To better troubleshoot issues with communication, you can set the NMEA component Debug property to a non-zero value. The component will then print out telegrams and information in the Application Output pane. Higher values gives more information.
If NMEA 0183 communication is not working as expected, consider the following:
Common issues and solutions:
Problem | Solution |
---|---|
No data received | Check cable or network connectivity, verify serial port or IP settings. |
Invalid checksum warnings | Ensure that the sending device is using correct sentence formatting. |
Signal values not updated | Verify that sentence fields are correctly mapped to existing CDPSignals. |
Communication latency | Check CPU load and sentence update intervals; use logging to identify bottlenecks. |
Use CDP Studio's built-in monitor and log views to trace sentence reception, parsing, and signal updates.
NMEA 0183 Resources
The NMEA 0183 standard documentation can be acquired through the official NMEA website. The standard is proprietary and not freely available.
The following additional NMEA resources might also be useful:
Note: For more information about CDP Technologies partnerships, see Our Partners. For official NMEA documentation, visit the NMEA website.
Get started with CDP Studio today
Let us help you take your great ideas and turn them into the products your customer will love.