Qwiic Pro Micro - USB-C : No device found on cu.usbmodem101

I’m having a rough time trying to upload code to my new Qwiic Pro Micro.

It seemed to be working okay at first - I had some test code running and had it displaying some info on a Qwiic Alphanumeric Display.

Now, I only get “No device found on cu.usbmodem101” when I try to upload.

I have tried the “double-tap revive” process described here: Qwiic Pro Micro USB-C (ATmega32U4) Hookup Guide - SparkFun Learn

I thought maybe there was a bootloader issue, but the “reinstalling bootloader tutorial” is gone (was https://www.sparkfun.com/tutorials/247)

I uninstalled and reinstalled all of my Arduino IDE, settings, command line tools, etc. I even tried a few different USB cables just in case. Burned some incense.

I’m running: MacOS 15.3.2, Apple M2 Silicon, Arduino IDE 2.3.6. I can see the device listed as “SparkFun Pro Micro” under the USB 3.1 Bus in the Device Tree. The IDE recognizes the port just fine as /dev/cu.usbmodem101. When I try to upload the compiled code, the verbose output shows it just doesn’t seem to see the microcontroller.

Sketch uses 10204 bytes (3%) of program storage space. Maximum is 262144 bytes.
Global variables use 2404 bytes (7%) of dynamic memory, leaving 30364 bytes for local variables. Maximum is 32768 bytes.
Waiting for upload port...
Upload port found on /dev/cu.usbmodem101
"/Users/xxx/Library/Arduino15/packages/arduino/tools/bossac/1.7.0-arduino3/bossac" -i -d --port=cu.usbmodem101 -U true -i -e -w -v "/Users/xxx/Library/Caches/arduino/sketches/02087A44A7247073300F889B72D02731/sketch_apr18a.ino.bin" -R
No device found on cu.usbmodem101
Set binary mode
Send auto-baud
Set binary mode
Failed uploading: uploading error: exit status 1

Any tips on what I can do here? Does it seem like the serial controller is working but the microcontroller has fried? I only have one Qwiic Pro Micro so I can’t prove the software setup is correct. Thanks for any help.

Also - when I use the IDE’s “Get Board Info” menu I get:
BN: Unknown board
VID: 0x1B4F
PID: 0x9206
SN: (null)

So it’s able to communicate something, but I feel like there should be more?

So, the PID0x9206 signifies the SparkFun Pro Micro 5V board when the board is in sketch/run mode (when it’s running your code)

When in bootloader mode (used for uploading new code), it will have a slightly different PID, which is 0x9205

I’m guessing you’re having the same issue as here

Thanks so much! I found info in that thread that definitely helped, and I really appreciate your quick turn-around on the question.

The main difference, I think was using the “SparkFun Pro Micro” board option from “SparkFun ACR Boards” and selecting the 5v processor option. The documentation at Qwiic Pro Micro USB-C (ATmega32U4) Hookup Guide - SparkFun Learn is pretty clear about this.

I’m not sure how I came to have the wrong board selected, since I had followed those instructions for my initial testing. I think something went wrong and I started messing with things, and I wound up having selected the “Sparkfun Qwiic Micro” board configuration from the “SparkFun SAMD Boards” board manager. Clearly a big mistake given that it’s a totally different processor – but the naming and some older documentation made it a tangle to figure out which thing is which, especially once I was in pulling-out-hair mode.

1 Like

Awesome! Good job