Wiki / References
π Link directory
Verified external resources for working with optically-controlled LEGO, grouped by purpose. Catalog and set links live in Sets & bricks index; parts to buy are in Hardware shopping list.
Protocol specifications (primary sources)
- LEGO official docs (archived in-vault) β β the USB Tower Interface Reference (vendor-request spec; documents the tower's VLL mode) + Scout SDK (LASM reference + the canonical VLL Command Set table) + a printable MicroScout VLL barcode card. See LEGO official docs β Tower Interface + Scout SDK (PDFs in
Sources/). - VLL β elecbrick (Doug Eaton) β the canonical Micro Scout / Code Pilot / Scout VLL reference β elecbrick.com/vll Β· elecbrick.com/lego Β· GitHub. See elecbrick (Doug Eaton).
- VLL Transmit for legOS β Ben Jackson β ben.com/LEGO/rcx/vll.html (RCX light-sensor LED β Code Pilot/Micro Scout; useful range ~1 inch / 3 cm).
- Teaching the RCX VLL β Barnaby Walters β waterpigs.co.uk/articles/rcx-vll.
- RCX β MicroScout VLL (community thread + write-up) β pbrick.info p=45.
- RCX Internals β Kekoa Proudfoot β RCX serial/IR protocol + opcodes β graphics.stanford.edu/~kekoa/rcx Β· opcode mirror mralligator.com/rcx/opcodes.html. See RCX Internals (Kekoa Proudfoot).
- LEGO Mindstorms Internals (crynwr, mirror) β arcb.csc.ncsu.edu/.../crynwr/lego-robotics.
- Power Functions RC protocol (official PDF) β philohome.com/pf/LEGO_Power_Functions_RC.pdf Β· context TechnicBRICKs v1.20. See Power Functions RC (IR).
Tools & libraries (software)
- Flash Force β VLL by phone torch β Flash Force.
- lego-blockly β VLL/Code Pilot/MicroScout + RCX/WeDo, FTDI-DTR emitter β live editor Β· github.com/BlissCA/lego-blockly. See lego-blockly.
- JorgePe / mindstorms-vll β several VLL emitters via LED (FTDI bitbang
vllftdi.py= macOS/Linux via pylibftdi; EV3 port; EV3 LED via TOSlink) β github.com/JorgePe/mindstorms-vll. See FTDI DTR + LED. - Pybricks β MicroPython on Powered Up hubs; the working hub emitter β code.pybricks.com Β· docs.pybricks.com. See Powered Up hub (Pybricks VLL).
- WinVLL β programs the Micro Scout P mode via the USB IR tower (+ optical tube) or a sound-card LED probe; Windows app, but the underlying tower VLL-mode recipe is now documented (see the official Tower Interface Reference above) β line.to/β¦/winvll. See LEGO USB IR tower (RIS 2.0).
- legousbtower β Linux USB-tower driver (raw read/write, RCX-oriented). VLL mode isn't built in, but the vendor requests that enable it are spec'd in the official Tower Interface Reference β reachable via pyusb/libusb β legousb.sourceforge.net.
- ESP Web Tools β browser ESP32 flasher (Web Serial) for the M5 / web-flasher idea β esphome.github.io/esp-web-tools.
- rcxvll.nqh β RCXβMicro Scout VLL (NQC) β rcxvll.nqh (pbrick) (zip on pbrick.info).
- adriansieber β control Code Pilot/Scout/MicroScout via Swift (Flash Force's basis) β adriansieber.com.
- NQC (Not Quite C) β RCX / CyberMaster / Scout β bricxcc.sourceforge.net/nqc Β· github.com/jverne/nqc. See NQC Β· BrickCC.
- BricxCC (Bricx Command Center) β IDE β bricxcc.sourceforge.net Β· github.com/BrickBot/BricxCC.
- RCX on macOS β github.com/Glitchbone/mindstorms-rcx-osx-tools.
- USB IR tower control (cross-platform) β github.com/hangrydave/InfraredBrickTower.
- Python: RCX over serial IR β github.com/BlissCA/LegoRcxPy (LegoRcxPy); Interface B β github.com/BlissCA/LegoBpy (LegoBpy).
- BrickLogo (Rust, RCX + modern) β github.com/openbrickproject/BrickLogo (BrickLogo).
- Power Functions (Arduino/IR) β lib github.com/jurriaan/Arduino-PowerFunctions Β· receiver github.com/matthiaszimmermann/ArduinoLegoIrReceiver Β· recorder github.com/aorczyk/pf-recorder.
- 76 kHz IR (Spybotics / Manas / RC) generators β github.com/JorgePe/ir-spybotics Β· decoding write-up O FalcΓ£o β Decoding old LEGO infrared protocol Β· RCXβSpybotics pbrick.info p=35. See 76 kHz IR family.
- Power Functions for micro:bit β hackster.io PF IR sender.
- Adafruit: Bluetooth remote for the Droid (Micro Scout) β β full guide + CircuitPython code: Feather M0 Bluefruit receives BLE commands β flashes an LED β VLL to the Micro Scout. A close reference design (BLE β LED β VLL) using Jorge Pereira's VLL code; notes the on-board red LED works in dim light, an external LED is better. β learn.adafruit.com/bluetooth-remote-for-lego-droid.
Proven VLL-transmit builds (precedents)
Sending VLL from a microcontroller + LED is well established β these all work:
- Flash Force (phone torch, visible) Β· Adafruit Feather BLEβLED (above) Β· Ben Jackson legOS (RCX LED) Β· rcxvll.nqh (RCX + 9V light brick) Β· adriansieber (iPad torch) Β· NQC VLL libs.
- β οΈ Most builds use a visible (red) LED β including LEGO's own USB tower, which (per the official spec) sends VLL on a red LED, not its IR channel. *VLL over infrared*** has not been demonstrated by any known build; the Micro Scout sensor's IR sensitivity is confirmed on-device, so an IR LED driven with the VLL baseband remains the untested step.
Communities, wikis & catalogs
- pbrick.info β RCXVLL, Scout SDK, Spybotics, RCX firmware β pbrick.info (pbrick.info).
- philohome.com β Philippe "Philo" Hurbain: motors/sensors/PF/connectors reference β philohome.com. See philohome (Philippe Hurbain).
- LUGNET β classic community archive (Code Pilot, robotics) β lugnet.com/robotics/codepilot.
- orionrobots β hobby robotics wiki; useful Spybotics page (full I/O incl. claimed VLL in/out, the 3 remote modes, the PC programming socket) + a YouTube series (DIY SpyboticsβPC RS232 cable
xtGJei70cAg, RCXβSpyboticsJ1S-p5n-iAY, RCX setup w/ BricxCC+NQCRREOENgSiZA). β οΈ VLL-on-Spybotics is single-source β see Spybotics. β orionrobots.co.uk. - dubbekarl.dk/blog β vintage LEGO dacta / Interface A (9750/9760/Control) document & disk-image archive β instructions, C64/IBM-PC control software, restoration scans. Not VLL, but a good source for the pre-VLL optical/wired control era β dubbekarl.dk/blog.
- TechnicBRICKs β PF/Technic deep dives β technicbricks.com.
- Catalog (default): Rebrickable β use it for every set/part link (sets + parts + inventories). Catalog-specific extras, used only when they add something Rebrickable doesn't:
- BrickLink β part variants, price guide, marketplace.
- Technicopedia β in-depth Technic set write-ups (e.g. 8479 Code Pilot).
- LEGO.com β official pages for current products (88005, 8884/8885).
- BIOsector01 β Bionicle lore (8539 Manas); Wikipedia β set overviews (Spybotics).
- Bricker β part scans/images (e.g. the 8479bar01 barcode sheet).
- Books: Extreme NXT (Gasperi & Hurbain), Extreme Mindstorms β custom sensors/internals.
β οΈ Some primary sites are vintage:
elecbrick.comhas an expired TLS cert (use http/Wayback), andweb.archive.orgblocks automated fetch (use a browser/curl).