wiki:Lego_USB-Tower

Lego delivers a serial and an USB IR-Tower for communication of a PC with a RCX unit. While the serial tower is plug&play, the USB tower might need some further steps of installation, described in the following HOWTO.

Installation at Linux

First it is necessary that your kernel supports the Lego-USB-Tower. Plug the tower in a free USB socket and watch your /var/log/messages. If your kernel already supports the tower it should display something like:

  drivers/usb/misc/legousbtower.c: LEGO USB Tower #0 now attached to major 180 minor 160
  drivers/usb/misc/legousbtower.c: LEGO USB Tower firmware version is 1.0 build 134

If it does, go to creating a device-node and test, otherwise you have to rebuild your kernel.

Unplug the tower, switch to your kernel-sources and open the configure-dialog. You'll need root access. On my Gentoo system with kernel-2.6 (and definitely on many other systems) it is:

  cd /usr/src/linux
  make menuconfig

Make sure the following kernel-option is activated:

  Device-Drivers -->
    USB support -->
      [M] USB Lego Infrared Tower support

It is recommended to compile this as a module, so you are able to load the module only if you want to use the tower and it wouldn't enlarge your kernel. The module will be called legousbtower.

Now recompile your kernel and install the modules:

make && make modules_install

Don't forget to copy your new kernel to your boot directory and reboot the system. After this you may add the new module as root with

modprobe legousbtower

Now plug the tower in a free USB socket. Your /var/log/messages should display something like the messages already mentioned above:

  drivers/usb/misc/legousbtower.c: LEGO USB Tower #0 now attached to major 180 minor 160
  drivers/usb/misc/legousbtower.c: LEGO USB Tower firmware version is 1.0 build 134

Creating a device-node and test

Make sure a device-node like /dev/usb/legousbtower0 is created. Otherwise, you have to do it yourself! Type as root:

  mknod /dev/usb/legousbtower0 c 180 160
  chmod 666 /dev/usb/legousbtower0

The chmod-command is required to get access of the tower to a normal user.

You may test the tower with a simple

echo test > /dev/usb/legousbtower0

The green LED on the tower should light for a second.

How to use the tower with brickOS you should visit the brickOS ?-HOWTO.