Fork me on GitHub

Java Marine API


Java Marine API is an NMEA 0183 parser library for Java. It aims to enable easy access to data provided by various marine devices such as GPS, echo sounder and weather instruments.


Detects and reads NMEA sentences from any input stream, e.g. file, serial port, TCP/IP or UDP socket etc. The plain ASCII data is converted to event/listener model with interfaces and parser implementations for selected sentences. Custom parsers may also be implemented and integrated by extending the provided base classes. Data output is also supported by allowing the modification of sentence contents with data formatting and validation. In addition, some general utility classes are provided for handling the information extracted from sentences. Higher-level data updates may be aquired through providers that translate NMEA updates to direct measurement updates.

Supported sentences


Java Marine API is open source software and licensed under the GNU Lesser General Public License.

Source code is available at Github.


Code tells more than 1000 words, see the examples.



v0.10.0 pre-alpha, released on 2017-06-21:

Show Hide previous versions.

v0.9.0 pre-alpha, released on 2015-12-10:

v0.8.1 pre-alpha, released on 2014-06-08:

v0.8.0 pre-alpha, released on 2014-06-07:

v0.7.0 pre-alpha, released on 2014-02-21:

v0.6.0 pre-alpha, released on 2013-10-15:

v0.5 pre-alpha, released on 2012-04-19:

v0.4 pre-alpha, released on 2011-07-12:

v0.3 pre-alpha, released on 2011-05-08:

v0.2 pre-alpha, released on 2010-12-08:

v0.1 pre-alpha, released on 2010-08-21:


Release repos

Projects using Maven may download the library by adding dependency in pom.xml.


Snapshots of next release are deployed to every now and then. These are somewhat stable builds but still work-in-progress.


Any kind of feedback or contribution is welcome.


The project was originally published in, hence the net.sf package naming. While the source code, website, issues, wiki etc. are now hosted in Github, the binary releases still remain in

Notice that the old SVN repository is out-dated and no longer updated.