Fix picotool “appears to be a RP2040 device in BOOTSEL mode, but picotool was unable to connect”
Windows has no WinUSB driver on the Pico's bootloader interface. Install it with Zadig (RP2 Boot, Interface 1) — or on Linux add the udev rules.
Community draft — report a mistake
What you see
> picotool info
No accessible RP2040 devices in BOOTSEL mode were found.
but:
RP2040 device at bus 1, address 7 appears to be a RP2040 device in BOOTSEL mode, but picotool was unable to connect. You may need to install a driver via Zadig. See "Getting started with Raspberry Pi Pico" for more information> picotool info No accessible RP2040 devices in BOOTSEL mode were found. but: RP2040 device at bus 1, address 7 appears to be a RP2040 device in BOOTSEL mode, but picotool was unable to connect. You may need to install a driver via Zadig. See "Getting started with Raspberry Pi Pico" for more information
In BOOTSEL mode the Pico appears as both a USB drive and a second, vendor-specific USB interface that picotool uses. Windows has a driver for the drive, but not for the second interface. picotool can see the board but can’t open it, and it says so.
Installing WinUSB on “RP2 Boot (Interface 1)” with Zadig takes a minute and fixes it for good.
Quick fix — try in order
- 1
Install WinUSB with Zadig
Put the Pico in BOOTSEL mode. Run Zadig (zadig.akeo.ie) → Options → List All Devices → choose “RP2 Boot (Interface 1)” → driver WinUSB → Install Driver. Do NOT replace the driver on Interface 0 (the mass-storage drive).
- 2
Run picotool again
picotool infoshould now print the board's details. - 3
Linux: udev rules instead of Zadig
Copy 60-picotool.rules into /etc/udev/rules.d/, run
sudo udevadm control --reloadand replug. Running picotool with sudo once confirms it's a permissions issue. - 4
Arduino-Pico users don't need this
Uploading from the Arduino IDE on Windows copies a UF2 to the RPI-RP2 drive and doesn't use picotool's USB interface. Only command-line picotool needs Zadig.
Why it happens
Why does the drive work but picotool doesn't?
The bootloader exposes two USB interfaces: a USB drive (Interface 0, uses Windows' built-in driver) and a vendor interface for picotool (Interface 1, needs WinUSB). Without a driver on Interface 1, only drag-and-drop works.
Is Zadig safe?
Yes, when you pick the correct interface. Replacing the driver of the wrong device (a keyboard, a webcam) can disable it; you can undo that in Device Manager.
Board-specific notes
Pico 2 (RP2350): Zadig lists it as “RP2350 Boot (Interface 1)”; same fix.
Did this fix it?
Thanks — that helps us keep this page right.