A Dead Arduboy + Raspberry Pi + AVRdude + Noob

Continuing discussion from where I killed my Arduboy
I have since hooked it upto a Raspberry Pi (B+) and get the following from avrdude:

avrdude: error: AVR device not responding
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x0c85e9
avrdude: Expected signature for ATmega32U4 is 1E 95 87
avrdude: NOTE: “flash” memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.

avrdude done. Thank you.

This is a little confusing as it goes from "not responding to " “device initialized” does this point to the possibility of a resurrection or am I flogging a dead horse? ofc I would then also have to address the mismatched signature issue…

Can you post more verbosity?

-v -v -v

1 Like

This is all I am getting:

avrdude: Version 6.1-svn-20130917, compiled on Jun 12 2017 at 14:37:49
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright © 2007-2009 Joerg Wunsch

     System wide configuration file is "/usr/local/etc/avrdude.conf"
     User configuration file is "/root/.avrduderc"
     User configuration file does not exist or is not a regular file, skipping
     Using Port                    : /dev/spidev0.0
     Using Programmer              : linuxspi
     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
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       flash         65     6   128    0 yes     32768  128    256  4500  4500 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
     Programmer Type : linuxspi
     Description     : Use Linux SPI device in /dev/spidev*

avrdude: error: AVR device not responding
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x0c75e6
avrdude: Expected signature for ATmega32U4 is 1E 95 87
avrdude: NOTE: “flash” memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.

avrdude done. Thank you.

Is that the maximum? I was expecting more info after the device signature thing…

(Maximum verbosity seems to be 4 -v)

Does it always return a device signature of 0x0c85e9?

avrdude: Device signature = 0x0c85e9

If that’s the case it looks wicked corrupted.

If the device signature changes, or sometimes reads all 0’s or all F’s then it’s potentially a connection problem.

My guess is the chip is totally broken.

1 Like

The Device Signature changes although I’m 99.9% certain the connections are good so I hooked it back up to the USBasp and managed to get a higher verobosity:

         Programmer Type : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/

avrdude.exe: usbasp_initialize()
avrdude.exe: usbasp_transmit(“USBASP_FUNC_GETCAPABILITIES”, 0x00, 0x00, 0x00, 0x00)
avrdude.exe: usbasp_spi_set_sck_period(5e-007)
avrdude.exe: try to set SCK period to 5e-007 s (= 2000000 Hz)
avrdude.exe: set SCK frequency to 1500000 Hz
avrdude.exe: usbasp_transmit(“USBASP_FUNC_SETISPSCK”, 0x0c, 0x00, 0x00, 0x00)
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: usbasp_transmit(“USBASP_FUNC_CONNECT”, 0x00, 0x00, 0x00, 0x00)
avrdude.exe: usbasp_program_enable()
avrdude.exe: usbasp_transmit(“USBASP_FUNC_ENABLEPROG”, 0x00, 0x00, 0x00, 0x00)
<= [01]
avrdude.exe: error: programm enable: target doesn’t answer. 1
avrdude.exe: initialization failed, rc=-1
avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x5a0000
avrdude.exe: Expected signature for ATmega32U4 is 1E 95 87
avrdude.exe: usbasp_close()
avrdude.exe: usbasp_transmit(“USBASP_FUNC_DISCONNECT”, 0x00, 0x00, 0x00, 0x00)

avrdude.exe done. Thank you.

I’m pretty sure its toasted but have my doubts about my USBasp setup I have no idea if its working correctly or not hence also trying with a RPi. I can grab some cheap AVR’s to test my programming setup with.

Weighing up my options:

  1. £20 858D Hot air reflow station + Donor AVR (no idea why a fully populated board is cheaper than single chips)

  2. Interface with the screen and buttons with an RPi or Arduino (depending on test pads availiable Im yet to look)

  3. Call It a day and buy another (simple but I learn less)

avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x5a0000
avrdude.exe: Expected signature for ATmega32U4 is 1E 95 87

It really looks like a problem in the wiring. Are you 100% sure everything is ok? can you test it with a multimeter?

Also put the usbasp in the 5V setting

A dead chip can produce these exact results, I’ve dealt with it several dozen times personally. There is a small chance to bring it back using the high voltage programming method, but I’ve never tried that.

Best take a few photos of how you’ve wired it up just to rule out a wiring isssue. (I also seem to recall some Arduboys have things labelled incorrectly on the board.)

I’ve checked each time with a multimeter from the pads on the arduboy to the pads on the programmer plus a few other points and the jumper has been set to 5v since my original bloop I believe it’s as bateske said I’ll go with 99.9% dead and retain the .1% for when I have some more kit to hand.

Off the top of my head the board is labelled from left to right MISO MOSI CLK Reset GND VCC.

CLK = SCK

1 Like

It’s just returning garbage. It’s the result of transistors flopping in the wind as the result of cascading logic error by some seriously damaged parts of the circuit.

If I do make a little programming jig it might make sense to try and include provisions for the high voltage programming. Although setting that up I’ve never really seen a very good practical guide on how to do that so. Yeah, anyways.

I’d bet an arduboy (which I’ve already sent) that it’s kaput so sorry whatever killed it but… Paperweight.

You can always hang on to it, in case one of the batteries dies in one of your other units you’ll be able to swap it out.

1 Like

I am curious to see if the chip could be replaced.

Yeah I would never chuck it out due to spares and worst case scenario it makes a cool keychain or bag tag :grinning:

Me too :wink:

2 Likes

If it’s a kickstarter version, you could always swap the cases over so you still have the 1 of 10,000. (I assume that’s possible, it looks possible.)

1 Like

A little update now I have a few weekends and the Xmas holidays not too far away I’ve grabbed a cheap EBay pro micro to use as a donor this seems to be the cheapest option compared to buying small amounts of new 32u4’s. I have preflashed it with the hello world example and have serial enabled in the sketch and am tempted to get the custom bootloader from @Mr.Blinky on it…but first things first I need to get a hot air solder station and figure how to use it :joy:

you’d already tried a lot but before going for the hot air desoldering challenge I’d tried one more time to see if the MCU is really dead.

In the other thread. you mentioned something lit up. was it one of the LEDs /OLED or was it a part going up in smoke?

Since you have a voltmeter. When you turn on Arduboy. What voltage do you measure between GND and VCC pads?

The make loud pad closest to the red speaker wire is connected to digital pin 13. With the stock caterina bootloader the breathing LED is output on this pin. you could try connect/solder a LED to it and see if it lights up. (connect cathode of LED to GND connect anode of LED to 1K resistor, connect other end of resistor to the make loud pad closest to the speaker red wire)

trying programming again: DON’T connect the programmer power pin to Arduboy’s VCC pad but switch Arduboy on instead and optionally connect USB cable to Arduboy.

Now that you also have an Arduino pro micro, you can also try that as an ICSP programmer :slight_smile:

1 Like

Possibly any of those the Arduboy was face down at the time but I think it was an LED…

4.01v on battery
4.14v when charging

Tried with and without USB power and still no luck.

I managed to reflash the pro micros bootloader using the USBasp I will look into using it as a programmer however this confirms the USBasp as functional…

So I got a Hot air station as a Xmas gift and swapped the 32u4 with one from a pro micro that I had flashed with an Arduboy game.
The good news is it boots and almost works plus its the first thing I have ever used hot air on in my life.
the bad new is Button A is flakey and TX + RX Led’s are constantly on (with switch) and the Arduboy automatically is on with usb power ( I’m not 100% if this is a bootloader issue or a bridge under the QFN).
Lots of kapton I was being cautious

3 Likes

I don’t think either of these could be caused by having a Pro Micro bootloader on Arduboy hardware.