Open this site through the local server — run start.bat then use http://127.0.0.1:8765/interface.html
v2.4.1 — Stable

Flash.
Anything.

Driverless firmware deployment for ESP32 platforms. Direct from browser to silicon. No tools, no setup — just pure speed.

Source

BitWire System

ESP32 firmware deployment

Online
Web Serial API 460800 Baud LZ4 Compress Dual Partition
0
Baud Rate
0
Boards
0
Verify CRC
0
JS Runtime
01 — Features
AP

Asset Packs

Load custom graphics and animations without manual compilation. Drag, drop, deploy.

JS

Embedded JS Runtime

JavaScript engine on-device for rapid scripting and prototyping. No firmware rebuilds needed.

CRC

Verified Flash

CRC32 integrity check on every sector. Zero silent corruption. Every byte verified.

DP

Dual Partition OTA

OTA-ready layout with BitWire OS dual-boot support. Swap partitions with zero downtime.

USB

No Drivers

Pure Web Serial API. Works in Chrome, Edge, and Opera. Zero install. Zero friction.

46

460800 Baud

High-speed flashing with adaptive compression. Full firmware in under 30 seconds.

02 — How It Works
1

Connect

Plug in your device via data-capable USB cable. Click Connect.

2

Select

Choose your board from the list. All firmware variants are pre-configured.

3

Configure

Enable BitWire OS dual-boot, select asset packs, tweak partitions.

4

Flash

Hit deploy. Watch real-time progress. Reboot and done.

03 — Device Showcase

Browse Compatible Boards

Official BitWire OS supported hardware. Select to configure and flash instantly.

04 — FAQ
Which browsers support BitWire?
Chrome, Edge, and Opera on desktop. The Web Serial API is not supported in Firefox or Safari. We recommend Chrome 89+.
Do I need to install any drivers?
No. BitWire uses the browser's Web Serial API — zero drivers, zero setup. Just connect your board via USB and click Flash.
What's the difference between single and dual-boot?
Single-boot uses one firmware partition. Dual-boot (BitWire OS) reserves a secondary partition so you can swap between two firmwares at boot with zero downtime.
How long does a typical flash take?
At 460800 baud with compression enabled, most firmwares flash in under 30 seconds. Larger asset packs may take up to 60 seconds.
Can I add my own board definition?
Yes. Open a PR on our GitHub repo with the board's partition table, pin mappings, and firmware artifacts. See the Board Definitions doc for details.
05 — Team

L15dev

Lead Developer

Evil

Developer

Vamp

Developer

BitWire Flasher

|

Ensure your device is connected via a data-capable USB cable before starting.

1
Connect
2
Configure
3
Install

Ready for Deployment

Click connect to discover your device port and begin flashing.

DISCONNECTED

Supported Hardware

Select your board to view firmware options and flash.

BitWire RF Reaper
ESP32-S3

BitWire RF Reaper

Modular RF stack. CC1101 + NRF24L01 transceivers. ST25R3916 NFC. GPS & SD Slot.

Flash this board →
LilyGo T-Embed S3
ESP32-S3

LilyGo T-Embed S3

Sub-GHz radio stack. CC1101 optimised. Rotary encoder support. Built-in TFT display.

Flash this board →
Waveshare C6 LCD
ESP32-C6

Waveshare C6 LCD

WiFi 6 with native Matter protocol. High-refresh display support. IEEE 802.15.4.

Flash this board →
CYD-2432S028
Ready
ESP32

CYD-2432S028

Classic Cheap Yellow Display 2.4" — BitWire OS with discord.gg/bitwires.

Flash this board →
Cheap Yellow Display (CYD)

ESP32 / ESP32-C5 touch displays — BitWire OS per variant.

M5Stack & Arduino Nesso

M5Stack family and Arduino Nesso N1 — BitWire OS builds.

Compatible Devices Matrix

Compare the hardware feature support across your compatible BitWire boards. Hover over symbols for details.

Device CC1101 NRF24 FM Radio NFC Mic BadUSB RGB Led Audio
BitWire RF Reaper
LilyGo T-Embed S3
Waveshare C6 LCD
CYD-2432S028
CYD & M5Stack firmware

Ready to flash from the website: CYD-2432S028, T-Embed, Reaper, Waveshare C6. Coming soon: other CYD and M5 boards — listed in the flasher, firmware not built yet.

Serial Developer Console

Establish serial communication and interact with your ESP32 device directly from the browser.

Disconnected
Select Baud rate and click "Connect Port" to open the Web Serial channel...

Documentation

Quick start, architecture, and API reference.

QS

Quick Start

Get your board flashed in under 2 minutes. Step-by-step with screenshots.

AR

Architecture

Dual-partition layout, bootloader flow, and OTA update mechanics.

JS

JS Runtime API

Embedded JavaScript reference — GPIO, display, sub-ghz, and more.

AP

Asset Pack Format

Create custom asset packs for graphics, fonts, and configuration.

CL

Changelog Guide

Full release history, breaking changes, and migration guides.

BD

Board Definitions

Add new boards to BitWire. Pin mappings and partition tables.

Changelog

Release notes and version history.

v2.4.1 Latest

2026-06-12
  • + Adaptive compression for faster flash times
  • + Bruce OS dual-boot toggle in flasher UI
  • * Fixed CRC verification on large partitions
  • * Improved Waveshare C6 display init

v2.3.0

2026-05-28
  • + T-Embed S3 full support with CC1101
  • + Rotary encoder integration
  • * 30% faster flash via LZ4

v2.2.0

2026-05-10
  • + Initial Waveshare C6 LCD support
  • + Web Serial API connection manager
  • * Migrated to esptool-js v0.5.4

System Settings

Customize the dashboard appearance, default flashing speeds, and experimental configurations.

Visual Appearance

Interface Accent Color
Choose a highlight accent color to customize the dashboard theme.

Deployment Configuration

Default Flashing Baud Rate
Default speed for esptool connection negotiation. Lower speeds are more stable.
Force Chip Erase
Perform a full erase of the flash chip before uploading new firmware.
Experimental WebUSB Support
Attempt WebUSB queries when Web Serial API is unavailable.
Verbose Serial Outputs
Output detailed serial frame packets to the developer console log.