Skip to content

Coding Session — XIAO RP2040

Documentation of a live chat session with Claude. Screenshots uploaded by Dorian are included inline.


My Prompt:

"make a document "coding-seed-XIAORP2040.md" in week04 file that is a copy
of the chat we are about to have. Include the pictures of the screenshots I
will upload to you."

"I wanted to upload a program to my Seeed XIAO RP2040 through Arduino IDE 2.3.7, but I couldn't get it to work. I then tried to do it through MicroPython in VSCode, and that wasn't working either."


Arduino IDE Error

The screenshot of Arduino IDE upload error needed — "No drive to deploy" was lost.

The sketch compiled successfully and the board was detected on /dev/cu.usbmodem101, but the upload failed with:

Resetting /dev/cu.usbmodem101
Converting to uf2, output size: 140800, start address: 0x2000
Scanning for RP2040 devices
No drive to deploy.
Failed uploading: uploading error: exit status 1

What This Error Means

The Arduino IDE uploads to the XIAO RP2040 by converting the sketch to a .uf2 file and copying it to a USB drive called RPI-RP2 — which only appears when the board is in BOOTSEL (bootloader) mode. The error "No drive to deploy" means the board never entered bootloader mode, so there was no drive to copy the file to.

The Fix — Manually Enter BOOTSEL Mode

  1. Hold down the B (BOOT) button on the XIAO RP2040
  2. While holding BOOT, press and release the R (RESET) button
  3. Release BOOT
  4. The board should now appear as a USB drive called RPI-RP2 on your desktop
  5. Upload from Arduino IDE — it will copy the .uf2 file to that drive automatically

If you don't have a sketch already on the board, you may need to hold BOOT while plugging in the USB cable instead.

Result: Upload successful! The BOOTSEL method worked.