Go Down

Topic: Checking an Arduino Mega (Read 151 times) previous topic - next topic

bbacke

Mar 17, 2015, 04:39 pm Last Edit: Mar 17, 2015, 04:57 pm by bbacke
Hi,
I have an Arduino Mega 2560 R3.
Currently my computer (Win 7 64) doesn't register it (Tools > Port doesn't show the com port it is connected to)
So I can't program it.

Now, a few days ago I accidentally connected 12V to the 5V pin (not a good idea).
I noticed out of the angle of my eye some smoke? and disconnected the power immediately.

Does anyone know how to test what is wrong.
I tried following:
a. connection to USB -> not recognized

b. connecting Serial to an FDTI board (DTR to Reset) and trying to upload a sketch
   this produces following error:
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

c.: the previous sketch which I uploaded still works. (its not a complicated sketch and only uses pins 7,8 and 9 for output and pin 6 for a button) So I assume the ATMEL processor still works.

d.: the On and L LEDs on the board are both on
e.: no visible damage to the board

Any idea what else I could try apart from buying a new board?

Could the boatloader have been damaged???

johnwasser

The DTR signal should go through a capacitor before being connected to the Reset pin.  On the Arduino MEGA 2560 schematic it is shown as being 100n (100 nano-Farads).
Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

bbacke

Thank you for the suggestion. Unfortunately I still get the same error.

bbacke

Still working on it.
I have some Atmel 328P, so I built a breadboard Arduino and used it as an AVR ISP (http://arduino.cc/en/Tutorial/ArduinoISP)
uploaded a new bootloader the the arduino.

This worked without error messages and now the 'L' LED is flashing constantly.
However the board is still not recognized by windows.

I assume, I have uploaded a new bootloader  with the blink sketch included.

Now it would be nice to be able to upload other sketches via the 'Arduino ISP'.
Can anyone point me into the right direction on how to do this?

(Pretty steep learning curve in the last few days, but its kind of fun....)

bbacke

#4
Mar 19, 2015, 11:59 am Last Edit: Mar 19, 2015, 12:02 pm by bbacke
    Here my current version:
    Breadboard Arduino (Atmel 328P) with ArduinoISP software loaded
    then I set:

    Tools > Board >Arduino Mega or Mega2560
    Tools > Programmer to Arduino as ISP
    Tools > Burn Bootloader

    This works fine and now the 'L' LED is flashing

    so I load the Blink sketch into the Arduino software and change the delays to be able to see a difference in the flashing frequency (changed line 26 to delay(2000))

    Now I upload the file with: File>Upload Using Programmer

    It seems to work (avrdude output below), but now the 'L' LED just stays on.

    Any suggestions on what I am doing wrong?


    avrdude gives me following output (verbose mode)
Quote
avrdude: Version 6.0.1, compiled on Apr  3 2014 at 23:12:16
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "C:\Program Files (x86)\Arduino/hardware/tools/avr/etc/avrdude.conf"

         Using Port                    : COM7
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         AVR Part                      : ATmega2560
         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    10     8    0 no       4096    8      0  9000  9000 0x00 0x00
           flash         65    10   256    0 yes    262144  256   1024  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 : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0x1e9801
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "C:\Users\Bjoern\AppData\Local\Temp\build896673534544120819.tmp/Blink.cpp.hex"
avrdude: writing flash (1518 bytes):

Writing | ################################################## | 100% 1.55s

avrdude: 1518 bytes of flash written
avrdude: verifying flash memory against C:\Users\Bjoern\AppData\Local\Temp\build896673534544120819.tmp/Blink.cpp.hex:
avrdude: load data flash data from input file C:\Users\Bjoern\AppData\Local\Temp\build896673534544120819.tmp/Blink.cpp.hex:
avrdude: input file C:\Users\Bjoern\AppData\Local\Temp\build896673534544120819.tmp/Blink.cpp.hex contains 1518 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.97s

avrdude: verifying ...
avrdude: 1518 bytes of flash verified

avrdude done.  Thank you.
[/list]

johnwasser

Well, it uploaded and verified.  Did you disconnect the ISP?  If not it might be holding the processor in reset.
Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

bbacke

Yes, I disconnected the ISP. No difference.

I tried something else:
I installed on the breadboard Arduino the ATMega Chip Detector from Nick Gammon (http://www.gammon.com.au/forum/bbshowpost.php?bbsubject_id=11633&page=1)

This software shows which chips are connected to the ISP and also prints (in Hex) the contence of the Bootloader and first 256 bytes of the program memory.

After burning the bootloader I get a 'reasonable output' with some 'random' Hex codes and only FF in the program memory

Then I 'upload' my blink software.

And to my surprise when I check the memory with the chip detector, the bootloader and program memory are filled with FF

So,  'File > Upload Using Programmer' seems to erase everything on the ATMega!!!

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy