Author Archives: rm5248

JavaSerial 0.11

JavaSerial 0.11 has been released!

Changes in this version:

  • Added a new builder class to make creating the serial port easy. This also means that the large number of constructors are no longer needed. These constructors will remain for the foreseeable future.
  • Fixed issue where IOException could lead to too many open files[#18]
  • Made closing on Windows a bit better. If anybody has a reliable way to reproduce and/or has a better idea, that would be nice to know[#12]

As always, releases are available directly via or via Maven central.

Java Serial 0.10

Java Serial 0.10 has been released!  The changes since 0.9 are:

As always, binaries are on Maven Central and hosted locally.

Java Serial 0.9

Java Serial 0.9 has been released!  The changes since 0.8 are:

As always, binaries are on Maven Central and hosted locally.

Java Serial 0.8

Java Serial 0.8 has been released!  This is a minor bugfix release, no major code changes have been done.

Bugs fixed:

Cleanup done:

  • Jenkins is now building all binaries.  All pull requests can be built automatically
  • Switched to CMake to build the native code.

As always, binaries are on Maven Central and hosted locally.

Java Serial 0.7

Java Serial 0.7 has just been released. This is mostly a bugfix release.

The following bugs have been fixed:

Libraries have been uploaded to Maven Central, as well as their standard location here.

Java Serial 0.6

Java Serial verison 0.6 has now been released.  Updates in this version:

  • Updated POM for use with Maven properly.
  • Added some java.util.logging statements for debugging purposes.
  • Release has been uploaded to Maven Central.

To use the library, the easiest way is to create a Maven project and add it to your pom.xml:


Note that the version that is in Maven Central is 0.6.1, while this post talks about 0.6.  The only change between 0.6 and 0.6.1 is a fix in the pom.xml in order to upload  the dependencies to Maven Central.

As always, you can also download the dependencies manually from the Java Serial homepage.

Code Hosting

Hosting of code is moving to Github, because I feel that it is a somewhat better alternative for hosting.

SVN will still stay up, but will mostly be used for scratch work at this point it seems.

So far, the only project that has been moved over is JavaSerial, so check that out.

Any code releases will be on both Github and here.

JavaSerial 0.5

I am happy to announce the release of JavaSerial version 0.5.  This is a release which changes a lot of things internally.  The tutorial has a list of all things that you need to know.  The changelog is as follows:

  • No need to download DLL/SO files, they are extracted from the JAR automatically.  You can set the location with the Java properties com.rm5248.javaserial.lib.path and
  • Native code is provided for Windows x86/amd64, and Linux x86/amd64/ARM.  Any help on verifying this code on other platforms is greatly appreciated.
  • When opening up a serial port, you may say what control line events you are interested in.  If you are not interested in any control line events, you can say as such and a new thread will not be created to tell you of serial changes.
  • Fixed a bug where a valid serial port could be closed if a serial port that attempted to be created later threw an exception
  • Project now uses Maven to build.  This is not yet uploaded to Maven central, but the plan is to upload releases there shortly.

This release was originally going to have NIO support, however it turned out to be rather complicated.  If you are interested in messing around with it, there is a partially-made version branches/JavaSerialNIO.

As always, please leave a comment or file a bug report if you notice something incorrect.

Train Database 1.1

Train Database v 1.1 has just been released!  This is a minor bug fix version.  The notes are as follows:

  • Fixed bad bounds check when adding more than 3 entries
  • Changed road number to be 32-bit integer instead of 16-bit integer.  Some cars have road numbers greater than 64535.

Download the releases here.

Train Database

I would like to announce a new project here: the train database.  A simple way of organizing your model trains, the train database tells you stats on your trains(how many you have, how much they cost) and stores them in a platform-independent SQLite database.

Head on over to the project page for more information.