SoundMachine is a LEGO drum sequencer that “builds” music using standard LEGO bricks. SoundMachine is an interactive music tool to collaboratively develop music. SoundMachine scans 2×2 colour LEGO bricks arranged in 4 tracks of 8 beats. The colour information is converted to MIDI messages by a Processing sketch, which sends MIDI to Ableton Live [...]
Programming
NXTified 9398 Rock Crawler with wifi control

The new LEGO 9398 RockCrawler is out, and I really enjoyed how the designers chose to mount the motors directly on the pendular axles. Looking at it I realised that by replacing the power-function motors with NXT motors I could make the RockCrawler driven by the NXT. I had a new NXT2WIFI sensor from [...]
Teaching Java programming using leJOS and Mindstorms

leJOS is also well suited to teaching the basic principles of object-oriented programming; it is Java after all! And what better way to illustrate in concrete terms how powerful Java is than by applying it to building robots?
Updated: a leJOS driver class for the NXT2WIFI

Danny Benedettelli recently provided me with a NXT2WIFI prototype sensor to start development of a leJOS driver for it. I’ve been working on the code in my (limited) spare time and have a basic client and server interface developed in Java. This is available in the latest SVN snapshot of leJOS.
leJOS Clases to communicate with the NXTBee in Java

This project presents a leJOS class to interface with the NXTBee, along with some sample Java code in leJOS showing how to send and receive data. I’ve written extensively about the Dexter Industries NXTBee sensor before. The NXTBee provides long-range serial wireless communication for the Lego Mindstorms NXT.
Live plotting map data from the dGPS using Processing

I wanted to draw a live map showing the progress of the Lego Street View car as it drove outside. The dGPS sensor does a great job of plotting the car’s location, and the NXTBee provides a perfect high-speed long-distance serial link back to my Mac at home base. But how to display a live map that is updated with [...]
Send data between RobotC and a PC over a NXTBee

When I was developing the Lego Street View Car I realised that I needed a way to control the car more reliably than Bluetooth, and without relying on the existing of a wifi network. The NXTBee is the obvious choice. It uses the industry-standard XBee protocol giving high-speed serial transmission over a 300 ft [...]
Webserver for the NXT using Dexter Industries dWifi

For this project I wanted to build a webserver using the new Dexter Industries Wifi sensor for the NXT. Dexter have produced a very exciting wifi sensor that you program through the RS485 port on port 4 of your NXT. The RS485 port can communicate with the wifi sensor at speeds up to 921600 baud, so your [...]
Debug logging library in NXC
One of the biggest challenges developing programs on the NXT is fixing them when they go wrong. The NXT has a small screen with only 8 lines of text displayed. It’s difficult to know what is causing a program to fail, and to have a record of what a program did. I created this [...]
leJOS driver for the Dexter dGPS sensor

The Dexter Industries dGPS device provides the NXT with access to a real-time GPS sensor. The dGPS is a very useful device is you plan to do any mobile robotics that involve navigation and path-planning. Not only can it tell your robot where it is, but it will also give the direction of travel, [...]