PicoScope 7 Software
Available on Windows, Mac and Linux
NMEA (National Marine Electronics Association) 0183 is a UART-based protocol that has been in use since 1983. Originally developed for marine applications, it can now be found in other varying applications such as GPS devices. It utilizes a sentence structure to send its messages and displays them in human-readable ASCII text strings - each sentence consists of a ‘$’ to indicate the start of a message, followed by a 2-character talker identifier, 3-character sentence identifier, relevant data fields specific to the sentence ID and then an optional checksum (denoted by ‘*’ followed by a 2 character hex checksum) before finishing off the message with ‘<CR><LF>’ (carriage return and line feed). Each field in the sentence is separated by a comma. Note that some manufacturers utilize proprietary sentence structures which may deviate from the specification.
There are two main variations of NMEA-0183 which is the standard version and a high-speed variant. The only difference between them is the baud rate used - NMEA-0183 uses a default baud rate of 4800 BPS (bits per second), and NMEA-0183 High Speed uses a default baud rate of 38,400 BPS. Both variants feature 8 bits of data, no parity and one stop bit. Although these are the default values some manufacturers might have tweaked the default configuration to work for their applications, so keep this in mind when decoding.
This guide will show you how to use the NMEA-0183 decoder in Picoscope 7.
Select the corresponding input for Data. NMEA-0183 specifies default values for some variables. They are as follows: 8 data bits, baud rate 4800 BPS (bits per second), 1 stop bit and no parity bits. Baud rate, threshold and hysteresis will automatically be calculated - note that these might need tweaking for some signals: