No device found - uploading from Mac

Play with it! Please tell us which board you're using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
sprigle91
 
Posts: 5
Joined: Tue Dec 06, 2022 9:58 pm

No device found - uploading from Mac

Post by sprigle91 »

I have three Circuit Playground boards (2 Bluefruit and one Express) and am unable to upload Arduino compiled sketches to any of them. I keep getting "No device found on cu.usbmodem2101". I've tried researching this on several different sites and although I've found lots of posts concerning similar problems, I have yet to find one that helps me resolve the issue, partly due to most of the posts involving Windows and I'm using a Mac.

Note: that I do not have any problems with these boards and CircuitPython. In addition, I am able to upload Arduino sketches to other boards without any problems.

Helpful (?) Context:

M1 Macbook Pro running macOS 12.6

Arduino IDE 1.8.19

Board Manager: Arduino SAMD Boards (32-bits ARM Cortex-M0+), version 1.8.13 is installed -- the selected board is Adafruit Circuitplayground Express

Port: when I plug the boards in, I can choose /dev/cu.usbmodem1101; when I unplug the board, the port is not visible anymore.

The cable: I've tried a couple. They work fine uploading to other boards. They work fine with these boards when I'm using CircuitPython.


When I start the upload, the NeoPixels all turn solid green and the pin 13 (Red) LED starts blinking.

Upload log and error messages follow:

Code: Select all

Arduino: 1.8.19 (Mac OS X), Board: "Adafruit Circuit Playground Express"

Sketch uses 34180 bytes (13%) of program storage space. Maximum is 262144 bytes.
Global variables use 4660 bytes (14%) of dynamic memory, leaving 28108 bytes for local variables. Maximum is 32768 bytes.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem2101
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem2101, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem2101, } => {}
Uploading using selected port: /dev/cu.usbmodem2101
/Users/matt/Library/Arduino15/packages/arduino/tools/bossac/1.7.0-arduino3/bossac -i -d --port=cu.usbmodem2101 -U true -i -e -w -v /var/folders/0t/n7n1fk0s7vg7fvh3c5v8rw8h0000gn/T/arduino_build_506287/NeoAnim.ino.bin -R 
No device found on cu.usbmodem2101
Set binary mode
Send auto-baud
Set binary mode
An error occurred while uploading the sketch


This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: No device found - uploading from Mac

Post by mikeysklar »

Good to know things work with CircuitPython.

You will need to manually put these boards into bootloader mode just before uploading from the Arduino IDE (double tap reset).

User avatar
sprigle91
 
Posts: 5
Joined: Tue Dec 06, 2022 9:58 pm

Re: No device found - uploading from Mac

Post by sprigle91 »

Thanks for the reply! In my tediously long first posting, I forgot to add that I had seen that recommendation in another post and tried it. It didn't make any difference. I also read that the exact timing of when to put the board into bootloader mode makes a difference -- but not much detail. I have tried it a number of different ways (before I hit upload, after hitting upload and while the verbose logging is spitting out the "PORTS ..." messages, etc.

If you had any further details or suggestions, I would appreciate it.

User avatar
sprigle91
 
Posts: 5
Joined: Tue Dec 06, 2022 9:58 pm

Re: No device found - uploading from Mac

Post by sprigle91 »

Had some time to experiment this afternoon. I'm wondering if the bootloader on these boards is way out of date. Here's the contents of INFO_UF2.TXT:

Code: Select all

UF2 Bootloader 0.2.11-8-g2c13fd5-dirty lib/nrfx (v1.1.0-1-g096e770) lib/tinyusb (legacy-755-g55874813) s140 6.1.1
Model: Adafruit Circuit Playground nRF52840
Board-ID: nRF52840-CircuitPlayground-revD
Date: Jul 13 2019
Well, actually I'm sure it's out of date -- but I don't know if that's the root of the problem or not. I've tried updating the bootloader by dragging update-bootloader-circuitplay_m0-v3.14.0.uf2 onto CPLAYBOOT, but so far have not been able to get that to work. It doesn't seem to actually update the bootloader.

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: No device found - uploading from Mac

Post by mikeysklar »

The bootloaders are often not current when they ship.

The drag and drop of the bootloader should be no big deal and I know MacOS Ventura created a lot of issues. It should not be a problem with MacOS 12.6 Monterey, but it might have been patched too.

Can you do this from a non-Mac? Do you have a Pi or other system around?

User avatar
sprigle91
 
Posts: 5
Joined: Tue Dec 06, 2022 9:58 pm

Re: No device found - uploading from Mac

Post by sprigle91 »

Ok, so I'm not sure why this didn't occur to me earlier today ... both boards I was trying to update the bootloader on were Bluefruits. I just went and grabbed the Express from upstairs and tried it. I was able to upload the bootloader with no problem and, once I did so, I was able to install an Arduino sketch easily.

So now the remaining issue is to find the correct version of the bootloader updater binary to install to the Bluefruit boards. I don't see anything obvious in the list athttps://github.com/adafruit/uf2-samdx1/ ... ag/v3.14.0 but I'll try tackling this again tomorrow.

User avatar
sprigle91
 
Posts: 5
Joined: Tue Dec 06, 2022 9:58 pm

Re: No device found - uploading from Mac

Post by sprigle91 »

Re-reading https://learn.adafruit.com/adafruit-cir ... port-setup concerning setting up the CPB with the Arduino IDE ... I decided to de-install the board, etc. and then go through the steps again carefully to make sure I wasn't missing anything.

And voila, all three boards work fine now.

So to recap, in case anybody has a similar problem and they find this thread:

1. Update the bootloader if what you have is ancient.
2. Make sure you are trying to install the correct binary image.
3. Make sure you have properly followed all the steps to configure the Arduino IDE.

Thanks for your help Mike!

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: No device found - uploading from Mac

Post by mikeysklar »

Well done, thank you for the solution.

User avatar
cjmogan
 
Posts: 4
Joined: Wed Dec 21, 2022 4:16 pm

Re: No device found - uploading from Mac

Post by cjmogan »

I'm having the same issue. I am BRAND NEW to Circuit Playground Express and am using MakeCode on a Mac OS 12.6. On my office laptop I was able to download the .uf2 file to the Express on loan from a friend. On my desktop computer at home, the CPLAYBOOT drive does not appear on the new unit I just purchased since I returned the other Express to my friend. I'm getting red to purple lights circulating on the board and resetting...either single or double clicking does no good. I believe that the CPLAYBOOT version on the Express may be outdated since. I read somewhere that I may need to update the playboot on this unit from an older computer. What am I missing?
Thanks

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: No device found - uploading from Mac

Post by mikeysklar »

@cjmogan,

Please start a new thread with you question. You can paste it in as you have written it here.

Locked
Please be positive and constructive with your questions and comments.

Return to “Circuit Playground Classic, Circuit Playground Express, Circuit Playground Bluefruit”