Preview build — page text is a draft awaiting human review. Code badges come from real compiles. The flasher is real but not yet hardware-tested; the Playground is still a preview.

Browser flasher

Flash firmware from your browser

Pick a project, plug in your board and press one button. Each binary is compiled from the same code — same core and library versions — as the project page’s compile check. Your browser checks every file’s SHA-256 before writing, and checks the board afterwards (MD5 on ESP boards, a full read-back on Uno / Nano, file sizes on a Pico W). Wi-Fi names, passwords and phone numbers go from the form straight to your board over USB — never to FlashReady. Saved settings are kept unless you choose “Erase all flash first”.

Status: ESP boards are flashed with Espressif’s open-source esptool-js, Uno / Nano through the Arduino bootloader (STK500), and Pico W by copying files over MicroPython’s REPL — all over Web Serial. So far this has been tested only without a board: downloads, SHA-256 checks, protocol tests against simulated bootloaders, and error handling in Chromium. It has not yet been tested on physical boards — if something goes wrong, the fix guide is linked from the error.

Before you start

Works in Chrome and Edge on desktop. Flashing uses Web Serial, which Chrome, Edge and other Chromium browsers support on Windows, macOS, Linux and ChromeOS. iPhone/iPad, Safari and Firefox can’t access USB serial ports yet.
Use a data cable. Many phone-charging cables only carry power. If your computer doesn’t react when you plug the board in, try another cable first.
Board not detected?

Most boards use a USB-to-serial chip that needs a driver on older Windows versions. Check the chip printed next to the USB port, then install the driver from its maker’s official page only:

Still nothing? Follow the step-by-step guide: COM port not showing.

Stuck on “Connecting…”?

Hold the BOOT button, start flashing, and release it once erasing begins. Full guide:Timed out waiting for packet header.

↑↓ to move · Enter to open