UF2 BIN
File conversion

Convert UF2 to BIN

Convert now
QUICK ANSWER
Is it possible to convert UF2 to BIN?
Yes - UF2 converts to BIN.

You can do it right here with our free converter - no sign-up, and your file is deleted right after.

Run uf2conv.py firmware.uf2 -c -o firmware.bin (the -c flag converts instead of flashing). The tool strips the UF2 wrapper and writes the raw payload; note that the original flash target address stored in the UF2 blocks is dropped, so the .bin is just the flat image.

Also to BIN: B64 · XDELTA · HEX

On this page

Tested on macOS, Windows & Linux
Last verified Sep 2026

More free converters

HEIC, PNG, WEBP, MP3 and more - every tool here is free.

Open the toolbox
UF2 → BIN converterFREE
Drop a .UF2 file here
or pick one - we convert it to .BIN and give you the file to download

Why convert UF2 to BIN?

UF2 is a USB-drag-and-drop firmware container that wraps the real image in 512-byte blocks carrying flash addresses and a family ID, while .bin is the raw byte-for-byte firmware image. Developers unpack UF2 to .bin when they need to flash over SWD/JTAG, inspect the image, or feed it into another toolchain that expects a plain binary. Microsoft's own uf2conv.py from the microsoft/uf2 repo does this both ways.

How to convert UF2 to BIN

uf2conv.py (Microsoft UF2 tools) OPEN-SOURCE

From the microsoft/uf2 repo run uf2conv.py firmware.uf2 -c -o firmware.bin. The -c/--convert flag writes a file instead of flashing a device.

uf2conv Python - default output FREE

Run uf2conv.py firmware.uf2 -c with no -o and it defaults to flash.bin when it detects binary output. Requires Python 3.

About these formats

Quality & what to watch

  • The flash target/base address carried in the UF2 blocks is not preserved in the flat .bin; you must know the correct offset yourself when reflashing.
  • If the UF2 had gaps between address ranges, the resulting .bin may be padded or start at the wrong offset - check the base address.
  • The .bin alone carries no family ID, so you lose the device-family safety check that UF2 provides.

Frequently asked questions

What's the exact command?
uf2conv.py firmware.uf2 -c -o firmware.bin. The -c flag means convert only, don't flash.
Do I need Python?
Yes, uf2conv.py is a Python 3 script from the microsoft/uf2 repository. There's also a Rust port, uf2conv-rs.
Is the flash address kept?
No. The target address in the UF2 blocks is dropped, so the .bin is a flat image and you must supply the offset when flashing.
Can I convert back to UF2 later?
Yes, run uf2conv.py firmware.bin -c -b <base> -f <family> -o firmware.uf2, supplying the base address and family ID.