FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: stefanru am 27 November 2016, 15:01:20

Titel: [gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: stefanru am 27 November 2016, 15:01:20
Hi,

wollte heute die nueste a-culfw auf meinen arduino flashen.
Beim ersten Aufspielen kam:
Call now avrdude -p atmega328p -c arduino -P /dev/ttyUSB0 -b 57600 -D -Uflash:w:./nanoCUL433.hex:i

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f
avrdude: reading input file "./nanoCUL433.hex"
avrdude: writing flash (31262 bytes):

Writing | ################################################## | 100% 8.39s

avrdude: 31262 bytes of flash written
avrdude: verifying flash memory against ./nanoCUL433.hex:
avrdude: load data flash data from input file ./nanoCUL433.hex:
avrdude: input file ./nanoCUL433.hex contains 31262 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 6.31s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x7800
         0x0c != 0x56
[color=red]avrdude: verification error; content mismatch[/color]

avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.


Nun blinkt er sofort nach dem einstecken die L LED wie wild.

ein erneuter flash Versuch endet immer mit:
Call now avrdude -p atmega328p -c arduino -P /dev/ttyUSB0 -b 57600 -D -Uflash:w:./nanoCUL433.hex:i
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding


Ich hoffe mir kann jemand helfen den arduino wieder zu beleben.

P.S.:
Habe gerade versucht meinen Ersatz Arduino zu flashen. Selber fehler und jetzt hat er das gleiche Problem :-(

Gruß,
Stefan
Titel: Antw:arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: viegener am 27 November 2016, 15:52:49
Wird er denn an USB erkannt - wenn Du ihn einsteckst?
Hast Du andere geräte an USB stecken, dann würde ich diese vielleicht für den Versuch entfernen.

Hast Du einen Rechner auf dem eine Arduino IDE läuft?

Wenn ja, würde ich es von dort aus mal probieren, indem Du in der IDE einen Standardbeispielsketch (z.B. Blink) auf den Arduino packst.
Auch hier würde ich andere USB-Geräte entfernen

Wenn das mit der IDE läuft, kannst Du auf dem Rechner den Flash mit der a-culfw (die Arduino IDE bringt den flasher ebenfalls mit) machen. Das erfordert häufig aber ein bisschen Suche je nach Plattform und Pfadangaben. Wenn das ein Windows-Rechner ist kann ich Dir dazu vermutlich Hilfestellung geben

Titel: Antw:arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: stefanru am 27 November 2016, 16:06:10
Ja klar, wird erkannt an USB0.
Zur Zeit versuche ich von Linux zu flashen. Das geht auch immer.
Wie gesagt nach der Fehlermeldung:
avrdude: verification error, first mismatch at byte 0x7800
         0x0c != 0x56
avrdude: verification error; content mismatch

Blinkt die L LED ständig und ein flashen geht nichtmehr.

Ich versuche mal mit Windows. Glaube aber irgendwie nicht dass es etwas ändert am Fehlerbild.

Gruß,
Stefan
Titel: arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: stefanru am 27 November 2016, 17:24:18
Habe es gelöst.

Bootloader per 2tem nanao mit ISP neu geflashed.
Wenn jemand das selbe schiksal ereilt und noch einen 2ten arduino hat, Bootloader flashen per ISP hilft wunder.
Bei fragen dazu kann ich gern helfen.
Hab jetzt einen den ich nur dazu benutze ;-)

Das ursprüngliche Problem bleibt.
a-culfw ist zu groß. Da wird es wohl ein update geben.
Siehe hier:
https://forum.fhem.de/index.php/topic,35064.msg529584.html#msg529584
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: juergs am 04 Dezember 2016, 08:15:35
ZitatDas ursprüngliche Problem bleibt.
a-culfw ist zu groß. Da wird es wohl ein update geben.

Bei meiner a-culfw waren im Code alle Protokolle eingeschalten. Das erzeugt ein zu großes Hex-File.
Einfach nicht benötigte Protokolle auskommentieren, dann klaptt's auch  mit der Größe.  :)
Titel: Antw:arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: Fritz Muster am 09 Dezember 2016, 10:32:37
Zitat von: stefanru am 27 November 2016, 17:24:18
Bootloader per 2tem nanao mit ISP neu geflashed.
Wenn jemand das selbe schiksal ereilt und noch einen 2ten arduino hat, Bootloader flashen per ISP hilft wunder.
Bei fragen dazu kann ich gern helfen.
https://forum.fhem.de/index.php/topic,35064.msg529584.html#msg529584

Habe das gleiche Problem, kannst Du mich bitte mal bei Gelegenheit aufschlauen?

Danke und Grüße Fritz
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: viegener am 09 Dezember 2016, 11:49:30
Was genau willst Du wissen?
Eine Beschreibung des Prozesses für Nanos findet sich z.B. hier:

http://www.instructables.com/id/How-To-Burn-a-Bootloader-to-Clone-Arduino-Nano-30/?ALLSTEPS (http://www.instructables.com/id/How-To-Burn-a-Bootloader-to-Clone-Arduino-Nano-30/?ALLSTEPS)
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: Fritz Muster am 09 Dezember 2016, 12:05:18
Danke habe ich auch gerade gefunden und mal grob zusammengefasst: (Alles in einer Linux Umgebung):

- Die Schaltung wie hier (http://www.instructables.com/id/How-To-Burn-a-Bootloader-to-Clone-Arduino-Nano-30/step3/Simple-few-steps/) steht aufbauen
- einen "jungfräulichen" nano als ISP Programmier einrichten:
          zunächst Programm ARDUINO IDE (https://www.arduino.cc/en/Main/Software) runterladen
          Software starten
          den nano per USB verbinden
          In ARDUINO IDE über File=>Examples=>ArduinoISP auswählen (der Nano wird dadurch als ISP deklariert)
          In ARDUINO IDE über File=>Upload to I/O Board auswählen (der jungräuliche Nano wird somit zum ISP)
- In ARDUINO IDE über Tools=>Board das Model des zu flashenden Model auswählen (bei mir ArduinoDuelmilanove or Nano w/ ATMega328
- In ARDUINO IDE Tools=>Burn Bootloader=>w/ Arduino as ISP auswählen (nun beginnt der Flashvorgang, kann bis zu 2 Minuten dauern)

Nun sollte der Bootloader im nano (neu)geflasht worden sein, und könnte z.B. via avrdude mit dem .hex File beschreiben werden.

Ist der Ablauf im groben so richtig?

Danke und Grüße Fritz
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: viegener am 09 Dezember 2016, 12:25:20
Klingt nach meiner Erinnerung richtig, gibt es dabei Probeme?
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: Fritz Muster am 09 Dezember 2016, 13:05:50
Weiß ich noch nicht ;-)

Ich möchte mich zu Beginn erstmal theoretisch an das Thema rantasten und verstehen. Nicht das ich wieder "learning by doing" mache und dann wieder mal "Lehrgeld" bezahlen muss.

Werde mal berichten, wie es gelaufen ist.
Titel: Antw:[gelöst] arduino flash schief gegangen, neues flashen geht nicht mehr
Beitrag von: viegener am 09 Dezember 2016, 15:21:48
Ja, aber das Lehrgeld dürfte hier relativ gering sein, beim Preis eines Nano und es ist auch echt schwer so einen wirklich zu zerstören