Hardware Reference
In-Depth Information
The LEGO Mindstorms NXT 2.0 kit comes with a lot of Windows software to control
and program the brick, and there are some official (and unofficial) bindings for a wide
array of languages. The official Windows software will obviously not run on a Rasp-
berry Pi, but there is a software suite that does: ROS.
Installing ROS and Dependencies
ROS (short for
robot operating system
) is an open source suite of software that pro-
vides libraries and tools to help software developers create robot-related applications,
including hardware abstraction, device drivers, libraries, visualizers, message-
passing, and package management. It was originally developed by the Stanford Arti-
ficial Intelligence Laboratory, but that work has spun off into a company called Willow
Garage, a robotics research institute and incubator. The goal is to provide a level of
open source standardization on the application programming interface (API) for ro-
botics so that a consistent set of software can be used on any type of robotic com-
ponent with minimal new software necessary and the common functionality shared.
This is a thriving effort with an active community that regularly puts out major, named
releases. We'll start by installing the current stable release, as of the time of this
writing: Groovy Galapagos (
Groovy
, for short).
NXT Intelligent Brick Firmware
The ROS
nxt
component software requires the NXT Intelligent Brick to be running
a recent version of the default LEGO firmware (v1.28 or newer). To do this, you'll
need to have a Windows (or OS X) system with the LEGO Mindstorms software
installed and the NXT Intelligent Brick connected. Run the software, and go into
the Tools
→
Update NXT Firmware menu option. You might need to download the
NXT firmware files
manually.
There is also a way to flash the NXT firmware from Linux. Download and install
Start with a clean installation of Raspbian.
There are two ways to install ROS: from prebuilt binary packages or from source. While
it is certainly possible to install ROS from source on a Raspberry Pi, it takes far too
long. Instead, using a community repository of ROS packages optimized for the Rasp-
berry Pi will significantly speed up the time it takes to install ROS. To enable this APT
repository of packages (called
ROSpbian
), run:
$ sudo echo "deb http://64.91.227.57/repos/rospbian wheezy main" > /etc/apt/
sources.list.d/rospbian.list
Then add the package signing key (for package verification) and reload the
apt
pack-
age data: