Am I Choosing the Right Programmer?

Hey all,

I bought some wonderful chinese dev boards that are very similar to Adafruit’s Feather with Lora but with an OLED display mounted onboard. Trouble is, I’m having a hard time uploading any sketches to it.

Here’s the verbose output during upload:

Arduino: 1.8.2 (Mac OS X), Board: "Adafruit Feather 32u4"

Sketch uses 11380 bytes (39%) of program storage space. Maximum is 28672 bytes.
Global variables use 479 bytes of dynamic memory.
Forcing reset using 1200bps open/close on port /dev/cu.SLAB_USBtoUART
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.SLAB_USBtoUART, /dev/cu.SLAB_USBtoUART16, /dev/cu.UEROLL2-LWACP, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.SLAB_USBtoUART, /dev/tty.SLAB_USBtoUART16, /dev/tty.UEROLL2-LWACP, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.SLAB_USBtoUART, /dev/cu.SLAB_USBtoUART16, /dev/cu.UEROLL2-LWACP, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.SLAB_USBtoUART, /dev/tty.SLAB_USBtoUART16, /dev/tty.UEROLL2-LWACP, } => {}
<deleted some of the repeated text to conserve space>
PORTS {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.SLAB_USBtoUART, /dev/cu.SLAB_USBtoUART16, /dev/cu.UEROLL2-LWACP, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.SLAB_USBtoUART, /dev/tty.SLAB_USBtoUART16, /dev/tty.UEROLL2-LWACP, } / {/dev/cu.Bluetooth-Incoming-Port, /dev/cu.SLAB_USBtoUART, /dev/cu.SLAB_USBtoUART16, /dev/cu.UEROLL2-LWACP, /dev/tty.Bluetooth-Incoming-Port, /dev/tty.SLAB_USBtoUART, /dev/tty.SLAB_USBtoUART16, /dev/tty.UEROLL2-LWACP, } => {}
Uploading using selected port: /dev/cu.SLAB_USBtoUART
/Users/unkljd991/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino9/bin/avrdude -C/Users/unkljd991/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino9/etc/avrdude.conf -v -patmega32u4 -cavr109 -P/dev/cu.SLAB_USBtoUART -b57600 -D -Uflash:w:/var/folders/rl/xxshrkm937ggxqn14qbf_bd00000gn/T/arduino_build_370000/DeviceExample.ino.hex:i 

avrdude: Version 6.3, compiled on Jan 17 2017 at 12:01:35
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "/Users/unkljd991/Library/Arduino15/packages/arduino/tools/avrdude/6.3.0-arduino9/etc/avrdude.conf"
         User configuration file is "/Users/unkljd991/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/cu.SLAB_USBtoUART
         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

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

I’ve tried a variety of trusted USB cables and ports as well as Programmers. (Note, most people online suggest using USBasp but I’ve tried others too.)
On power, the OLED comes to life and the board boots some preloaded sketch that starts sending packets.
I have a feeling I need to slip it into a bootmode or something but I’m not sure if I’ve been doing that when I mash the onboard Reset or Program buttons.

Thoughts? I’m kind of at a loss for how to make this pretty paperweight play nice with the Arduino IDE.

Cheers,
unkljd991

Hi,
Did you download the documents linked at the bottom of the sellers page?

Tom.. :slight_smile:

Hi Tom,

Thank you for responding! Yes, I downloaded them; it seems that they provide documentation for getting going with ESP32/ESP8266 with some libraries and other resources. In any case, I didn't find any clues in the materials that would suggest how to upload sketches to the board.

Thanks,
unkljd991

Hi,
I'm not familiar or expert with ESP32 , but I believe you need to set the IDE to an ESP32 board, not an Adafruit board.

Tom.... :slight_smile:

unkljd991:
I bought some wonderful chinese dev boards

.........

Trouble is, I'm having a hard time uploading any sketches to it.

Or maybe not quite so wonderful?

...R

You have selected the wrong board.

Arduino: 1.8.2 (Mac OS X), Board: "Adafruit Feather 32u4"

Use "Adafruit ESP32 Feather".

Robin2:
Or maybe not quite so wonderful?

Basically the ESP32 modules are very good and quite easy to use.

Whandall:
Basically the ESP32 modules are very good and quite easy to use.

I know. :slight_smile:

It was the OP's combination of "wonderful" and "hard time uploading" that I was commenting on.

Personally I would only describe something like that as "wonderful" after I was sure I could get it to work.

...R

Whandall:
You have selected the wrong board.

Use "Adafruit ESP32 Feather".

Indeed, this was the problem! I feel a little dumb but I'm glad that I'm able to upload sketches now.
Thank you all for your help. :wink: