Most Linux distributions ship with Linux kernels which include support for the LEGO USB Tower by default.
To check if your Linux has support for the LEGO USB Tower open a terminal and show the kernel ring buffer using this command:
sudo dmesg --follow
(If your dmesg
does not support the --follow
option, plug in the tower first and call dmesq
afterwards.)
Now plug in the LEGO USB Tower. The kernel ring buffer should show lines similar to those below:
[1006170.647340] usb 1-2: new low-speed USB device number 26 using xhci_hcd
[1006170.815426] usb 1-2: New USB device found, idVendor=0694, idProduct=0001, bcdDevice= 1.00
[1006170.815441] usb 1-2: New USB device strings: Mfr=4, Product=26, SerialNumber=0
[1006170.815449] usb 1-2: Product: LEGO USB Tower
[1006170.815456] usb 1-2: Manufacturer: LEGO Group
[1006171.465241] legousbtower 1-2:1.0: LEGO USB Tower firmware version is 1.0 build 134
[1006171.465453] legousbtower 1-2:1.0: LEGO USB Tower #0 now attached to major 180 minor 160
[1006171.465511] usbcore: registered new interface driver legousbtower
Most important here are the last three lines containing “legousbtower”. They indicate that the tower has been recognized and its driver has been loaded.
By default nqc
uses /dev/ttyS0
as the device name for the serial port. If
you are using the second serial port, then /dev/ttyS1
should work.
In order to build NQC you need
git
to download the source code (optional - you can also download a ZIP archive)yacc
and flex
to build the sourcesemscripten
for WebAssembly supportOn Debian based distributions you can install those using:
sudo apt update
sudo apt install git build-essential yacc flex emscripten
Goto https://github.com/BrickBot/nqc to dowload the ZIP archive (<>
Code -> Download ZIP).
Or use git
:
git clone https://github.com/BrickBot/nqc.git
Change into the NQC source directory
cd nqc
and build it:
make
Change into the NQC source directory (if not already there):
cd nqc
Upload the latest firmware:
./bin/nqc -Susb -firmware firmware/firm0332.lgo
Change into the NQC source directory (if not already there):
cd nqc
Upload the test program:
./bin/nqc -Susb -d test.nqc
Proceed with Getting started.