tinyblok installer

tinyblok runs a message-conditioning patchbay on ESP32 boards and publishes conditioned sensor streams to NATS. It is the miniature counterpart to monoblok. For background, see the tinyblok intro blog post.

Flash

Use a Chromium-based browser (Chrome or Edge). Plug in an ESP32-C6 board over USB, then:

If your board has an OLED display attached, make sure it's wired to SDA GPIO14 and SCL GPIO15 before flashing (the firmware defaults; to change them you'll need to build from source and adjust via menuconfig).
If you do not see a Start install button, your browser is not supported. Use Chrome or Edge on desktop. Web flashing needs a secure (HTTPS) context. Reload over HTTPS to continue.
  1. Plug in an ESP32-C6 board (support for more boards coming soon) and click Start install above.
  2. Pick the board's serial port (on macOS it's usually cu.usbmodem…) and click Connect.
  3. In the dialog that follows, choose Install tinyblok.
  4. Wait for the installer to finish and the device to reboot.
  5. Once it reboots, join the TINYBLOK Wi-Fi network to configure Wi-Fi and your NATS target (details below).
Browser prompt showing the ESP32-C6 serial port
Pick the serial port
esp-web-tools dialog with Install tinyblok option
Choose Install tinyblok

If you'd rather build from source and flash it yourself, see the tinyblok repo.

Set up Wi-Fi and NATS

After flashing, the device boots into a captive setup portal. No serial console or pre-baked credentials are needed.

  1. Join the TINYBLOK Wi-Fi network advertised by the device.
  2. The captive portal should open automatically.
  3. Enter Wi-Fi, device name, and NATS settings, then save.
  4. tinyblok joins your Wi-Fi and reboots. Once set up, visit http://tinyblok.local (or http://<device-name>.local if you changed it) to change settings or factory reset.
Tinyblok captive setup portal
The setup portal

© 2026 Alex Reid / Lexvica Limited. tinyblok is MIT licensed. alex@lexvica.com