Arduino Robot: How I do hard reset or burn bootloader of AR Control


i followed this topic resolve arduino robot upload problem did step 9 1 arduino connected pc , arduino robot, arduino robot not identified com port, screen , reset button not work.

how can hard reset or burn bootloader arduino robot control?

it should easy as:

install arduino 1.6.x

isp arduino: arduino uno
target board: arduino robot control board 

connect usb cable pc , isp arduino

install arduinoisp sketch in isp arduino.
file->examples->arduinoisp
tools->board->arduino uno
tools->port->(serial port isp arduino)
file->upload

go preferences... , check box "show verbose output during: [  ] compilation [x] upload"

install icsp wiring:



attempt burn bootloader without disabling auto-reset on isp ardiuino. 
tools->board->arduino robot control
tools->port->(serial port isp arduino)
tools->programmer->arduino isp
tools->burn bootloader.

reading | error while burning bootloader.
################################################## | 100% 0.05s

avrdude: device signature = 0x1e960f
avrdude: expected signature atmega32u4 1e xx xx
         double check chip, or use -f override check.




this means isp arduino got reset when communications established on usb.  the bootloader burning program ends talking arduino uno bootloader uses same protocol arduinoisp!  the process gets far checking chip signature , finds talking atmega328p (the uno) when told expect atmega32u4 (the robot control board).

note: if target board has same type of processor isp arduino has, the signature check have passed , error occur further process. here happens if target board has atmega328p uno resets:
avrdude: device signature = 0x1e960f
avrdude: erasing chip
avrdude: reading input file "0x3f"
avrdude: writing lock (1 bytes):

writing |  ***failed;  
################################################## | 100% 0.13s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3f:
avrdude: load data lock data input file 0x3f:
avrdude: input file 0x3f contains 1 bytes
avrdude: reading on-chip lock data:

error while burning bootloader.
reading | ################################################## | 100% 0.02s

avrdude: verifying ...
avrdude: verification error, first mismatch @ byte 0x0000
         0x00 != 0x3f
avrdude: verification error; content mismatch



add a 10 uf capacitor isp arduino positive side of capacitor going reset , negative side of capacitor going ground.  this absorbs reset pulse , keeps isp arduino resetting.

now re-attempt burn bootloader.  if target board has proper clock crystal then should successful.  if chip expects crystal , doesn't have one it fail this:

tools->burn bootloader.

avrdude: device signature = 0x000000
avrdude: yikes!  invalid device signature.
         double check connections , try again, or use -f override
         this check..



this symptom of target chip's clock not running.  an atmega expecting crystal won't accept serial programming without crystal or ceramic resonator between pins 9 , 10, or external clock injected pin 9.  if can find crystal between 8 , 20 mhz should connect between pins 9 , 10 of target chip.  if can't find spare crystal or try crystal , still "device signature = 0x000000" error should modified arduinoisp sketch adafruit: https://github.com/adafruit/arduinoisp  go start of document , upload version of arduinoisp isp arcuino.  connect pin 9 of isp arduino pin 9 of target atmega328p chip (not d9).  that provide temporary 8 mhz clock allow programming without crystal.  try tools->burn bootloader again. 

if still fails "device signature = 0x000000" might have chip configuration fuses set disable serial programming.  to fix fuses need hv rescue shield 2 mightyohm (http://mightyohm.com/blog/products/hv-rescue-shield-2-x/).  that uses high voltage parallel programming reset atmega328p factory defaults.  of course atmega328p may defective , can't recovered.

avrdude: verifying ...
avrdude: 1 bytes of lock verified

avrdude done.  thank you.


success!


Arduino Forum > Using Arduino > Installation & Troubleshooting > Arduino Robot: How I do hard reset or burn bootloader of AR Control


arduino

Comments