Hardware & setup

Off-the-shelf.
Your call.

Pick what fits your build and your budget. Everything below runs the same firmware family — buy it ready-made, repurpose a Meshtastic board, or design your own.

What you need

Two parts: a gateway and some nodes

The gateway 1 or more

  • Heltec Wireless Stick V3 — ESP32-S3 + SX1262, 0.49″ OLED. The small USB dongle that bridges your computer to the radio fleet.*
  • Heltec WiFi LoRa 32 V4 — same radio, a 0.96″ OLED you can actually read across a table. Needs no USB driver: it connects through the ESP32-S3's own USB port.*
  • Add a second gateway — the host drives several at once, each on its own LoRa channel, so you can split the fleet into separate networks (e.g. lights and start line).

The nodes pick any

  • Heltec HT-CT62 — ESP32-C3 + SX1262. Tiny and about the cheapest way in. Great for pure light nodes.
  • ESP32-S2 or ESP32-S3 + LLCC68 — the two general-purpose node builds, for a board you wire up or design yourself.
  • Heltec Wireless Paper — ESP32-S3 + SX1262 with a built-in 2.13″ e-paper display. The ready-made start-block board: shows channel and pilot name right on the panel.
  • ESP32-S3 + Wiznet W5500 preview — a wired node that reaches the host over your LAN instead of LoRa, with no gateway in between. Shipping as a release build (e.g. on a Waveshare ESP32-S3-ETH), but the Ethernet side is young — treat it as a preview.

Custom & reference roadmap

  • Roll your own — design a custom node board around a supported chip and radio.
  • Gateway boards as nodes — the Wireless Stick V3 and the WiFi LoRa 32 V4 are gateway targets today; node builds for them may follow.
  • Reference designs (planned) — one or two ready-to-build boards with 2S battery low-voltage cut-off and reverse-polarity protection, plus a low-cost variant.

* Buy the right band, and enough flash. Heltec sells these boards as separate 863–870 MHz and 902–928 MHz hardware. Which one you have cannot be detected over USB and cannot be changed in software, so match the board to your region when you order. Gateways also need a module with at least 8 MB of flash — a 4 MB one cannot hold the partition layout.

The ESP32-C3 on the HT-CT62 doesn't have enough free pins for the e-paper start-block display. For start blocks, use an ESP32-S3 board — the Heltec Wireless Paper above is the ready-made option, or wire e-paper to any ESP32-S2 / ESP32-S3 board. Full hardware notes are in the node setup guide.

Up and running

From box to light show in four steps

01

Flash it in the browser

Open fw.racelink.dev, pick your board, click. No toolchain, no downloads. After that, the WebUI updates devices over the air.

02

Plug in & open

Connect the USB gateway to a Windows or Linux machine — laptop or Raspberry Pi — and open the WebUI, standalone or inside RotorHazard.

03

Pair & group

Hit Discover Devices, then drop them into groups like Start Line or Pit Wall. See the device setup guide.

04

Build a scene & run

Assemble a playlist of effects, press Run, and watch the whole track come alive. Enjoy the show.

Commissioning

Flash it from the browser

No toolchain, no downloads, no flash offsets. fw.racelink.dev knows every board and every release — pick yours and click.

Available now

It starts on the channel you want

The flasher writes the radio channel into the firmware image before it goes onto the chip, so the device joins your network on its very first boot instead of coming up on the build's default. That matters most for nodes: a node has no serial command interface, so its channel can only be changed over the air — by a gateway that must already be on the node's channel to reach it. Flash a node onto the wrong one and nothing can talk to it until it is flashed again. The same step seeds the LED output — data pin, chip type and pixel count — prefilled from what the build was compiled with.

Commission a device

Writes the full factory image, so whatever state the chip was in stops mattering. This is the mode for a new board — or one that should start over.

Update firmware only

Writes just the application and keeps the channel, LED output, WiFi, presets and master binding. An over-the-air update, over the cable — for a device with no WiFi in reach.

Checked, then verified

It refuses an image built for a different chip, checks the firmware against the digest the release publishes, and verifies what was written afterwards.

Doing a whole batch? The selection stays put after each device — unplug, plug in the next, click. Every device's MAC is recorded and the session exports as CSV if you need a commissioning record. Read the flashing guide →

Browser support. The flasher talks to the board over Web Serial, which only Chromium-based desktop browsers implement — Chrome, Edge and Opera. Firefox, Safari and everything on iOS have no Web Serial support; the page says so up front rather than failing at the click. For those, the flashing guide covers the esptool command line on Windows and Linux.

Two ways to run it

Host mode or headless

Host mode

A laptop or Raspberry Pi runs the host with the USB gateway plugged in. You get the full WebUI: groups, scenes, telemetry and over-the-air updates. Run it standalone or inside RotorHazard.

Headless mode

No host, no gateway. One node becomes the master and remote-controls up to 40 devices straight from its button — ideal for practice nights and small meets with zero setup.

Step-by-step guides

Ready to build it?

The documentation walks through flashing, pairing and running a real event, end to end.