Related tools
- Serial TerminalTalk to ESP32, Pico and other serial devices straight from the browser.
- HID Report ExplorerInspect the raw HID input reports streaming off any USB or Bluetooth device, decoded byte by byte with usage names.
- Firmware FlasherFlash ESP32 and ESP8266 boards from the browser, no toolchain to install.
- Mobile Sensors ExplorerLive compass, tilt, accelerometer, gyroscope and light readings from your device sensors.
- BLE Sensor DashboardConnect Bluetooth sensors, chart their readings live, and export CSV.
- Light MeterTurn your camera into a light meter that estimates illuminance in lux or footcandles and color temperature in Kelvin.
What it does
Parses a UF2 firmware file block by block: the magic numbers, flags, target flash address and payload size of every 512 byte block. It reports which family IDs the file declares (an RP2350 build often carries more than one, such as the secure Arm image plus an absolute or data partition ID), the contiguous address ranges the file writes to and any gaps between them, whether the block numbers form a clean sequence, and any MD5 or extension tag metadata the file embeds, such as a firmware version string or device description.
How to use it
Drop a .uf2 file onto the panel or pick one with the file button. You can also paste the file as base64 or as a hex dump. The Detail option switches between a summary (block count, families, flags, address ranges, and a pass or fail verdict) and a block table listing every block's address and size, capped at 200 rows for very large files.
Why this one
Most UF2 tooling is a command line script bundled with one specific board's SDK. This one reads any UF2 file in the browser, covers the full family ID table across RP2040, RP2350, SAMD, NRF52, STM32, ESP32 and more, and flags structural problems (a wrong magic number, a missing block, an address gap) instead of just listing bytes. Your files and inputs never leave your device, and there is no install step.
FAQ
- What is UF2?
- UF2 (USB Flashing Format) is a file format designed by Microsoft for drag and drop firmware flashing. The file is split into fixed 512 byte blocks, each one carrying its own destination flash address, so a device can appear as a plain USB drive and still be flashed reliably by just copying the file onto it.
- Why does my RP2350 file show two families?
- The RP2350 uses one family ID for the secure Arm image and a separate one for the RISC-V image, and some tooling adds an absolute or data partition family ID alongside the main one for the same build. Seeing more than one family in a single file is normal for that chip; the summary lists each family and how many blocks carry it.
- Can I drag this onto the RPI-RP2 drive?
- Yes, unchanged. This tool only reads the file to report on it; it never modifies the bytes, so the .uf2 you inspect here is exactly the one you can still copy onto the device's drive to flash it.
Keyboard shortcuts: press ? anywhere on this page to see them.