Arduino Überlastet - Kein Hochladen mehr möglich

Hallo zusammen,

wir haben ein kleines Sketch auf den Arduino Uno R3 geschrieben:

int i = 0;

void setup()   {
  Serial.begin(9600);
}

void loop() {
  Serial.println(i); 
  i++;
}

Das funktioniert auch soweit super - im SerialMonitor wird schön schnell hochgezählt :slight_smile:

Unser Problem ist jetzt nur, das der Arduino (ATMega328p) auf nichts mehr reagiert. Es hat den Anschein, als ob er voll ausgelastet ist.
Ein Flash des Bootloaders ist auch nicht möglich.

Hat noch wer eine Idee, wie wir den kleinen Patienten retten können?

Besten Dank für lesen und noch mehr Dank für's Antworten

LG
Ben und Rainer

Das hat nichts mit "Überlastung" zu tun!
Ihr habt ein ganz anderes Problem.

Ich möchte dafür wetten, dass er an einem anderen PC perfekt reagiert.

Hi combie,

danke für den Tip.

Wir haben es unter Windows 10 und auf nem Raspberry pi 3 mit jessie probiert und leider keinen Erfolg gehabt.

LG
BR

Ein Flash des Bootloaders ist auch nicht möglich.

Das geht nur über den ICSP Stecker, oder liege ich da falsch?
Wenn du das Arduino über den ICSP flasht, ist der bootloader weg.

Nimm das Blink Sketch (IDE > Datei > Beispiele > Basics > Blink), kompiliere es und kurz vorm upload drück reset am arduino. (du musst reset im richtigen Moment drücken, klappt vielleicht nicht beim ersten mal.)

lg dony

edit: Ich frag mal vorsichtig ob ihr eh den richtigen COM Port gewählt habt und der Programmer (IDE > Werkzeuge) auf 'AVRISP mkll' eingestellt ist.

Wenn du das Arduino über den ICSP flasht, ist der bootloader weg.

Im Sketch-Build-Ordner findest du ein anwendung.hex ohne und eine mit Bootloader.

Das ist nicht unbedingt ein wirkliches Hemmnis.

combie:
Im Sketch-Build-Ordner findest du ein anwendung.hex ohne und eine mit Bootloader.

Stimmt! Aber wenn man die *.hex ohne bootloader verwendet, ist er weg. Dann muss man den bootloader über ICSP wieder flashen, oder sehe ich das falsch?

Aber solange man das USB Kabel (seriellen upload über bootloader) sollte es keine hinsichtlich des bootloaders keine Probleme geben.

lg dony

Danke für die Tips. Da der Uno auf den Reset Knopf auch nicht mehr reagiert und das mit dem USB-Kabel kurz vorm brennen auch nach gefühlten 100 Versuchen nicht ging, versuchen wir es nun per ICSP.

Du kannst auch einen zweiten Uno als ISP-Programmer verwenden.
Dafür gibt es "Arduino as ISP".

Edit:
Ok, habe gerade am PC gesehen, dass du dafür schon die Infos hattest.

Es gibt keinen Grund, daß der Reset nicht funktionieren sollte. Ich nehme an Du hast ein größeres Problem mit der Hardware des Arduino's.
Ist es überhaupt ein orginal-Arduino?
Wenn der Reset nicht funktioniert dann funktioniert weder upload über USB noch üner ISP. Beide starten den Upload über einen Hardware-Reset-Impuls.

Grüße Uwe

uwefed:
Versuchs mal mit einem anderen USB-Kabel.
Grüße Uwe

Das wird wohl auch nix.
Der obige Sketch belegt ja dauernd die serielle und damit hat er sich ausgesperrt.

Man kann es nur mit Reset zum richtigen Zeitpunkt schaffen, wenn überhaupt.
Also ISP ist da schon der richtige Weg.

Was heißt, er reagiert auch nicht auf den Resetknopf? Fängt er dann nicht wieder bei Null an zu zählen?

Nein >:(
In der Seriellen Konsole zählt der munter hoch. :slight_smile:

Hab den Topic inzwischen geändert da Dein Einwand begründet ist.

HotSystems:
Das wird wohl auch nix.
Der obige Sketch belegt ja dauernd die serielle und damit hat er sich ausgesperrt.

Man kann es nur mit Reset zum richtigen Zeitpunkt schaffen, wenn überhaupt.
Also ISP ist da schon der richtige Weg.

Da BenundRainer sagt:

BenundRainer:
Danke für die Tips. Da der Uno auf den Reset Knopf auch nicht mehr reagiert ...

Darum scheint mir daß auch ein upload via SPI nicht funktionieren kann.

Grüße Uwe

BenundRainer:
Nein >:(
In der Seriellen Konsole zählt der munter hoch. :slight_smile:

Ist es ein orginaler Arduino oder ein Billigst-Nachbau?

Wenn Du mittels eines Kabels den RESET pin mit GND verbindest resetiert er dann? (fängt an wieder von null zu zählen?

Grüße Uwe

Oh oh, das hört sich gar nicht gut an. Und was passiert, wenn du den seriellen Monitor zumachst (nicht minimieren, sondern beenden) und wieder aufmachst?

Zählt er dann weiter?

BenundRainer:
Nein >:(
In der Seriellen Konsole zählt der munter hoch. :slight_smile:

Und was macht er bei Spannungsunterbrechung ?

Vielen Dank für Eure Hilfe!!!

@ElEspanol: Ja er zählt immer weiter......

Wenn wir den ATmega Chip austauschen funktioniert der Uno einwandfrei. Also müsste die Ursache doch im ATmega Chip liegen, oder?

Nach dieser Anleitung Installing an Arduino Bootloader - SparkFun Learn" haben wir versucht den Bootloader mit "Arduino as ISP" zu flashen.

Auch mit dem -F Parameter geht es nicht.

Hier noch der Fehlertext, falls jemand noch ne Idee hat :slight_smile:

C:\Users\Rainer\Desktop\arduino-1.8.5\hardware\tools\avr/bin/avrdude -CC:\Users\Rainer\Desktop\arduino-1.8.5\hardware\tools\avr/etc/avrdude.conf -F -v -patmega328p -cstk500v1 -PCOM5 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m

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

       System wide configuration file is "C:\Users\Rainer\Desktop\arduino-1.8.5\hardware\tools\avr/etc/avrdude.conf"

       Using Port                    : COM5
       Using Programmer              : stk500v1
       Overriding Baud Rate          : 19200
       AVR Part                      : ATmega328P
       Chip Erase delay              : 9000 us
       PAGEL                         : PD7
       BS2                           : PC2
       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  3600  3600 0xff 0xff
         flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
         lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
         hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
         efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
         lock           0     0     0    0 no          1    0      0  4500  4500 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.03s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATmega328P is 1E 95 0F
avrdude: safemode: hfuse reads as 0
avrdude: safemode: efuse reads as 0
avrdude: erasing chip
avrdude: reading input file "0x3F"
avrdude: writing lock (1 bytes):

Writing |                                                    | 0% 0.00s ***failed;
Writing | ################################################## | 100% 0.05s

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

Reading | ################################################## | 100% 0.01s

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

avrdude: safemode: hfuse reads as 0
avrdude: safemode: efuse reads as 0
avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.

PS: Habe nen ATMega Chip zu verschenken, sogar mit einem Zähler drauf :-)))

Ändere bitte die Farbe, das kann man nicht lesen.

Das einzige, was mir da noch einfällt, ist, das du den Resetpin deaktiviert hast. Und dein Chip eine USV integriert haben muss. Wie soll er weiterzählen, wenn er vom Strom getrennt habe. Bei dem gezeigten Sketch MUSS er wieder bei Null anfangen.

Lösung: HV-programmieren

Hab mir erlaubt Farbe un CODE TAGs zu ändern/einzufügen
Uwe