0

Can't upload to Feather 32u4
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

Can't upload to Feather 32u4

by wowpeter on Mon May 10, 2021 6:32 am

Newbie here, been trying to learn and play around with the adafruit.
Try to upload some sample sketchbook onto the adafruit feather, but I keep running into issue. (The board is: Adafruit Feather 32u4)

Initially, I was working on a windows PC, and there is simply no COMM port for me to choose to upload, every time I plug the Adafruit into the Windows 10 PC, it will say "USD device not recognied: the USB device you connected to this computer malfunctioned and windows does not recongize it". Then I look at the device manage, it is saying there an Unknown USB Device (Device Descrtiptor Request Failed). I try a few things, uninstall the device, trying to look up the device driver to update it. None will help. (Yes, I do have a proper USB cable that support data and I am not using a hub and it is connected directly to the PC).

So I gave up on the windows PC and I move to a Mac OS computer. On the Mac, the port will show up (allow me to choose between a bluetooth incoming port vs the usbmodem xxx), so I selected the usbmodemxxx as the port. So when I will try to upload the Blink sketchbook, however, it will return the error: "avrdude: butterfly_recv(): programmer is not responding". I did a little bit of research, and turn the verbose upload on, and then double click reset button when the Blink program try to upload, so that it can try to restart the bootloader. Likewise, it will return the same error. It will initially say "the selected serial port does not exist or your board is not connected". Once the board boot up again, it will say:
Found Programmer: ID = "????"; type =
Software version = .; Hardware Version = .?

then it will follow by the same error message:
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: leave prog mode
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: exit bootloader

avrdude done. Thank you.

the selected serial port
does not exist or your board is not connected



So I have no idea what else to try. Any tip or recommendation that will be much appreciated.


------------------------------------------------------------------------------
(Below is the exact verbose upload message:
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
User configuration file is "/Users/wowpeter/.avrduderc"
User configuration file does not exist or is not a regular file, skipping

Using Port : /dev/cu.usbmodem806NTCZ757072
Using Programmer : avr109
Overriding Baud Rate : 57600
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 9000 9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : butterfly
Description : Atmel AppNote AVR109 Boot Loader

Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding

avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
Found programmer: Id = "����"; type =
Software Version = .; Hardware Version = .�
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: leave prog mode
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: exit bootloader

avrdude done. Thank you.

the selected serial port
does not exist or your board is not connected

wowpeter
 
Posts: 2
Joined: Mon May 10, 2021 5:21 am

Re: Can't upload to Feather 32u4

by mikeysklar on Tue May 11, 2021 6:04 pm

@wowpeter,

On the Windows PC side did you install the CP2104 driver? I know you messed with some drivers, but your description sounded as though you were letting Windows try to look it up rather than using this one.

https://www.silabs.com/developers/usb-t ... cp-drivers

On the MacOS side it sounds as though you are really close. That error you are seeing I normally see with the timing of the 'reset' button press. It needs to be double pressed when you see the Arduino IDE saying "Uploading".

https://learn.adafruit.com/adafruit-fea ... 2854765-21

Manually bootloading
If you ever get in a 'weird' spot with the bootloader, or you have uploaded code that crashes and doesn't auto-reboot into the bootloader, double-click the RST button to get back into the bootloader. The red LED will pulse, so you know that its in bootloader mode. Do the reset button double-press right as the Arduino IDE says its attempting to upload the sketch, when you see the Yellow Arrow lit and the Uploading... text in the status bar.
Don't click the reset button before uploading, unlike other bootloaders you want this one to run at the time Arduino is trying to upload

mikeysklar
 
Posts: 4591
Joined: Mon Aug 01, 2016 8:10 pm

Re: Can't upload to Feather 32u4

by wowpeter on Tue May 18, 2021 5:24 am

Hi @mikeysklar:

Try it on the Mac again, and double click the reset button only when it say uploading. Still got the same responds (See below). Any other idea on what else I can try?


----------------------------------

Sketch uses 7524 bytes (26%) of program storage space. Maximum is 28672 bytes.
Global variables use 181 bytes of dynamic memory.
Forcing reset using 1200bps open/close on port /dev/cu.usbmodem806NTCZ757072
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.usbmodem806NTCZ757072, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.usbmodem806NTCZ757072, } => {}
Uploading using selected port: /dev/cu.usbmodem806NTCZ757072
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega32u4 -cavr109 -P/dev/cu.usbmodem806NTCZ757072 -b57600 -D -Uflash:w:/var/folders/6h/wbt9gy3x35jbcdrvkr6v7zfw0000gn/T/arduino_build_50416/strandtest.ino.hex:i

avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
User configuration file is "/Users/wowpeter/.avrduderc"
User configuration file does not exist or is not a regular file, skipping

Using Port : /dev/cu.usbmodem806NTCZ757072
Using Programmer : avr109
Overriding Baud Rate : 57600
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 9000 9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : butterfly
Description : Atmel AppNote AVR109 Boot Loader

Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding

avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
Found programmer: Id = " �\��"; type =
Software Version = .; Hardware Version = .�
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: leave prog mode
avrdude: butterfly_recv(): programmer is not responding
avrdude: error: programmer did not respond to command: exit bootloader

avrdude done. Thank you.

the selected serial port
does not exist or your board is not connected

wowpeter
 
Posts: 2
Joined: Mon May 10, 2021 5:21 am

Re: Can't upload to Feather 32u4

by mikeysklar on Tue May 18, 2021 12:40 pm

This is starting to sound more like a USB port / USB hub or USB cable issue. Can you describe which USB ports you have tried on your MacOS system (location, USB2 or USB3, etc.). Also the USB cable you are using can you verify it is a good data cable with another device?

mikeysklar
 
Posts: 4591
Joined: Mon Aug 01, 2016 8:10 pm

Please be positive and constructive with your questions and comments.