NXTComm Processing Library Clip to Evernote


The NXTComm Processing library allows you to control the Lego Mindstorms NXT robots.

This Processing library uses another Java library to control the NXT that I have implemented and will probably publish soon.

Download and Install

Download the NXTComm.zip file and unpack it to the "libraries" folder of your Processing installation folder.

You will also need the RXTX library (gnu.io namespace) from here. Put RXTXcomm.jar in the "lib" folder and native libraries in the Processing root instalation folder.

Your sketchbook location (on windows it's usually at "My Documents\Processing") should look like this

My Documents
| | -- Processing
| | -- libraries
| | | | -- (other libraries) | | | | -- NXTComm | |
| | -- javadoc
| | | | -- library | | | | -- NXTComm.jar
| -- (more folders with your sketches)

Your "Processing" (where Processing itself is installed) folder should look something like this:

| -- lib
| |
| | -- (other files)
| |
| | -- RXTXcomm.jar
| -- (other folders and files)
| -- rxtxParallel.dll (on Windows)
| -- rxtxSerial.dll (on Windows)


The javadoc for the LegoNXT class is bundled in the zip file, but you can read it online too.

The source code can be viewed on Google Code's SVN (this library is part of a larger project)

Known Uses

Project Description
Viral Blocks, by Diego Baca "Viral Blocks is an interactive program, ideally forming part of a museum exhibition. It was created with the intention to inform users on the subject of genetics and viruses. The target audience for this program is primarily middle-school/high-school biology students. Viral Blocks presents genomic and viral information visually as 3D animations, making it easier to understand abstract concepts and promoting learning through fun exploration." -- http://www.diegobaca.co.uk/viralblocks/main.html

Change Log

Version Comments Date
0.91 + Removed annoying debug messages when starting motors.
+ Added init version message.
0.90 + Added getBatteryLevel(), getMotorTachoLimit(), getMotorTachoCount(), getMotorBlockTachoCount(), getMotorRotationCount() and resetMotorPosition(). 01-October-2007
0.81 -Corrected bug in playTone(int, int) which made it throw a NullPointerException. Thanks to Diego Baca! 29-August-2007
0.8 +First public version 23-July-2007

Contact (bug reports, comments, etc)

If you use this library in a project, drop me a line. I like to know this stuff, and I'll link to your project's website. Also if you find a bug or need help, let me know.

Jorge Cardoso
jorgecardoso at [ieee] [org]

Last updated:April 7, 2011