flash force Wiki
Interactive browser →
Wiki / Other software
#tool#rcx#ir#source

WebPBrick · DiyIrTower

Two projects by maehw that between them drag the whole RCX toolchain into a browser.

WebPBrick — NQC in the browser

WebPBrick runs the NQC compiler itself as WebAssembly and sends the bytecode straight to an RCX. An entire 1998 toolchain, in a tab.

Only the Web Serial path works. The transport for a USB tower exists solely as a proof-of-concept page with its button commented out: the maintainer stated on 11 August 2024 that "the USB tower is not fully supported and only in an experimental state", with data lost between RCX and browser. Still true at v0.2.0 in August 2026. The serial tower (original or DIY) is the supported route.

DiyIrTower — the open-hardware tower

DiyIrTower replaces the increasingly scarce LEGO serial tower:

Its documentation explicitly handles the echo problem: the tower's own transmission reflects back into its own receiver, as on the original LEGO towers — which "must/can be handled in software". That is the reference topology to copy for any two-way IR work here, rather than designing from a bare TSOP38238 part number.

What this means for Flash Force

The serial tower is not a protocol: it is a transparent UART↔38 kHz-IR converter. Software opens the port at 2400 8-O-1 (or 4800 8-N-1 in firmdl3 fast mode) and exchanges RCX packets both ways. Since Chrome for Android has shipped Web Serial over Bluetooth RFCOMM since Chrome 138, a board with classic-BT SPP could present itself as a serial tower and be driven from a phone browser with no cable at all.

Unbuilt, and three things stand in the way: the bridge must generate odd parity locally, pass the IR self-echo through byte-transparently, and keep latency inside the RCX's request/response timeouts — downloads already fail on some ordinary wired USB-serial adapters. No working Bluetooth-SPP tower exists. SPP needs Bluetooth Classic, so among the project's boards only the M5StickC PLUS SE can host it.