Fix: copied the .uf2 to the Pico but nothing happens
The drive vanished (or came back) but no blink. Wrong UF2 for the chip (RP2040 vs RP2350), Pico W LED pin, MicroPython that just waits, or a full flash.
Community draft — report a mistake
What you see
Copying blink.uf2 to RPI-RP2 (E:)
Error 0x800701B1: A device which does not exist was specified.
(drive disappears, LED stays off — or the drive comes straight back)Copying blink.uf2 to RPI-RP2 (E:) Error 0x800701B1: A device which does not exist was specified. (drive disappears, LED stays off — or the drive comes straight back)
Drag-and-drop flashing a Pico is simple: copy the .uf2 to the RPI-RP2 drive and the board reboots into it. When nothing seems to happen, the copy almost always worked. Either the file was for a different chip, or the firmware is running in a way you can’t see.
Check the chip first (RP2040 or RP2350), then what the firmware is meant to do. A Pico W blink needs the Pico W build.
Quick fix — try in order
- 1
Ignore Windows' “Error 0x800701B1”
The Pico reboots the instant the copy ends, so the drive vanishes before Windows finishes tidying up. The firmware was written; this message is harmless.
- 2
Match the UF2 to the chip
Pico and Pico W use RP2040; Pico 2 and Pico 2 W use RP2350. An RP2040 UF2 copied to a Pico 2 is ignored and the RP2350 drive stays (or comes back). Download the build for your exact board.
- 3
Pico W: the LED isn't on GPIO25
On the Pico W the green LED is wired to the Wi-Fi chip. A plain Pico blink (GPIO25) runs but shows nothing. Use the Pico W build, or
Pin("LED", Pin.OUT)in MicroPython. - 4
MicroPython installed? It just waits for you
MicroPython doesn't blink anything by itself. Open Thonny, select “MicroPython (Raspberry Pi Pico)” and the REPL appears — that means it worked.
- 5
Start clean with flash_nuke.uf2
If an old main.py or a corrupt filesystem crashes the board at start-up, copy Raspberry Pi's flash_nuke.uf2 first (it erases everything), then your firmware.
Why it happens
Why does the drive come back?
The bootloader checks each UF2 block's family ID. Blocks for a different chip are ignored, so after the copy there's nothing new to run and you're still in BOOTSEL mode.
Copied the file to the wrong place
Copying to a different drive letter, or into a folder on RPI-RP2, also does nothing. Drop the .uf2 into the root of RPI-RP2.
Board-specific notes
RP2040-Zero: Has an RGB LED (WS2812 on GPIO16) instead of a plain LED. A standard blink UF2 shows nothing.
Pico 2 W: Needs RP2350 firmware and, like the Pico W, drives its LED through the wireless chip.
Did this fix it?
Thanks — that helps us keep this page right.