Upload Probleme

Guten Abend, Ich habe plötzlich ein Problem mit meinem Arduino Uno (ATmega328) und dem Upload von Sketches. Wenn ich etwas Uploaden will kommt folgende Meldung:

Build-Optionen wurden verändert, alles wird neu gebaut

Der Sketch verwendet 450 Bytes (1%) des Programmspeicherplatzes. Das Maximum sind 32.256 Bytes. Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 2.039 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 Bytes. D:\Programme\Arduino\hardware\tools\avr/bin/avrdude -CD:\Programme\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM4 -b115200 -D -Uflash:w:C:\Users\Waeuk\AppData\Local\Temp\build8758606074105259210.tmp/sketch_sep20b.cpp.hex:i

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is "D:\Programme\Arduino\hardware\tools\avr/etc/avrdude.conf"

Using Port : COM4 Using Programmer : arduino Overriding Baud Rate : 115200 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x1b avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x1b

avrdude done. Thank you.

Auch wenn ich den Resetbutton vorher drücke kommt diese Meldung, aber mein vorheriger Sketch läuft noch ohne Probleme. Das Board wird bei Windows erkannt, ist auf COM4, und auch bei der Arduino IDE ist das richtige Board/COM-Port ausgewählt. Die "L" LED leuchtet beim Einschalten/Reset einmal kurz auf, ist also der Bootloader defekt?

Hast Du was an Pins 0 oder 1 angeschlossen? Grüße Uwe

Brokolie: Guten Abend, Ich habe plötzlich ein Problem mit meinem Arduino Uno (ATmega328) und dem Upload von Sketches. Wenn ich etwas Uploaden will kommt folgende Meldung: Auch wenn ich den Resetbutton vorher drücke kommt diese Meldung, aber mein vorheriger Sketch läuft noch ohne Probleme. Das Board wird bei Windows erkannt, ist auf COM4, und auch bei der Arduino IDE ist das richtige Board/COM-Port ausgewählt. Die "L" LED leuchtet beim Einschalten/Reset einmal kurz auf, ist also der Bootloader defekt?

Ähnlich sieht es bei mir aus, wenn ich den falschen Port gewählt habe oder der Port schon belegt ist (ich verwende zum Anzeigen zum Beispiel gerne 'minicom').

HTH

Gregor

@Uwefed nein der Arduino ist komplett "nackt"

Bei mir ist laut Gerätemanager nur COM1 (Kommunikationsanschluss) und COM4 (Arduino) belegt. Ich bin auch der Meinung das bei den ersteren Uploads COM2 genutzt wurde und nicht COM4. Habe aber auch Treiber und IDE neu installiert also sollte es ja auch unter COM4 funktionieren.

Keiner eine vermutung?

Immer wieder gerne genommen:
Google(“wildwuchs site:http://forum.arduino.cc”)

Habe jetzt von dir einen vorherigen Post gefunden:

Oha …
Der COM Wildwuchs unter Win …

Ich hatte auch plötzlich Schwierigkeiten mit Arduinos.
Nicht mit allen, ein paar taten es nicht.
Plötzlich fielen weitere aus.
Ein Gegentest mit einem Linux Läptop zeigte: Die Arduinos sind heile.

Abhilfe:
Bluetooth COM Schnittstellen entfernt, Dienst gestoppt.
ISDN Serielle entfernt/deaktiviert.
Und den USB Salat aufgeräumt!

Win merkt sich alle jemals angesteckten USB Dinger.
Die COMs sammeln sich an …
Irgendwann kommts durcheinander :wink:

Um den USB Wildwuchs zu beheben habe ich mir eine kleine Batch gebastelt, welche den Gerätemanager aufruft.
(für XP, sollte aber unter Win7 auch funktionieren)
Code: [Select]

set devmgr_show_details=1
set devmgr_show_nonpresent_devices=1
start devmgmt.msc

(im Menu “Ausgeblendete Geräte anzeigen” aktivieren)

Damit wird der Gerätemanager viel auskunftsfreudiger.
Jetzt kann man alle jemals angeschlossenen Geräte sehen.
Alle jemals vergebenen COM Ports.

Blass dargestellte Geräte sind gerade nicht angeschlossen.
Entferne, was blass ist.

Mein Gerätemanager sieht so aus:

Wenn ich COM1 deinstallieren kommt er nach kurzer wieder und sonst ist kein anderen COM Port belegt.
Leider weiß ich nicht wie ich die Bluetooth schnittstelle ausschalte und die ISDN Schnitstelle entferne.

set devmgr_show_nonpresent_devices=1

Auch gemacht?

und die ISDN Schnitstelle entferne.

Überhaupt ISDN Krams installiert?
Wenn nein, wirds schwierig mit dem runter werfen…
Und extra installieren, ums dann sofort wider runter zu werfen, würde ich auch nicht machen.

Jap hab mir alle anzeigen lassen, und nein kein ISDN zeug installiert...

Kannst du denn den Arduino an einem anderen Rechner testen und/oder einen anderen Arduino anschließen? Wenn das erst vor kurzem passiert ist, kannst du doch auch das System über die Wiederherstellungsconsole auf einen Tag vor dem Tag an dem der Fehler auftrat, zurück setzen. Evtl. hilft das.

Hab es an einem Laptop getestet und das Resultat ist das selbe. Überlege mir einen programmer zu kaufen um den bootloader neu zu brennen, würde dies das Problem beheben?

Also, bei mir hat es gereicht, einfach den USB-Port zu wechseln und diesen Auszuwählen. Danach ging das hochladen der Sketch wieder einwandfrei!!!!!

Überlege mir einen programmer zu kaufen um den bootloader neu zu brennen, würde dies das Problem beheben?

Prinzipiell möglich, dass dein bootloader eine Macke hat / gelöscht wurde. Kann ich mir nur nicht vorstellen, wie du das ohne Programmer geschafft haben kannst :(

Hast jetzt vermutlich auch keinen Sketch drauf, der dir zeigt ob die serielle Schnittstelle noch geht.

Wenn du keinen anderen Arduino mit Bootloader hast, und du evtl. auch mal mit nackten atmega328p spielen willst, ist ein kleiner Programmer eine Alternative zu einem zusätzlichen Arduino Nano oder so...

Der Sketch der drauf läuft macht an Port 5/6/9 ein fade mit analogWrite 0-256 für ein RGB LED Band.

Also dein Vorschlag wäre es,z.b. einen Arduino Nano als Programmer zu verwenden und den Atmega aus dem Arduino Uno “ausbauen” und dann den bootloader neu brennen?

Wenn ich den Bootloader jedoch ohne Programmer eigentlich nicht verändern kann, liegt es wohl eher an etwas anderem oder?

Mehrer USB-Ports probiert, selbes Resultat

Brokolie: Also dein Vorschlag wäre es,z.b. einen Arduino Nano als Programmer zu verwenden und den Atmega aus dem Arduino Uno "ausbauen" und dann den bootloader neu brennen?

http://www.gammon.com.au/bootloader

Wenn an COM4 ein "Arduino Uno" erkannt wird, ist das zwar gut, sagt aber nur, dass der atmega16U2, der die USB-Seriell Wandlung macht, in Ordnung ist. Der Bootloader ist Software auf dem atmega328 und redet über Serial mit dem PC (oder eben nicht, bei dir) Mit einem Programmer redest du direkt ( über die ISP Schnittstelle = D11 .. D13 ) mit der atmega328-Hardware und kannst bootloader und sketche hochladen und vieles mehr.

Als Programmer kannst du einen speziellen oder einen beliebigen anderen Arduino verwenden, je nach dem was du für sinnvoller hältst: Einen Programmer griffbereit haben hat seine Vorteile, ein zweiter Arduino für dies und das ist aber auch nicht verkehrt.

Serenifly's Link ist sehr empfehlenswert, wenn du das mit dem zweiten Arduino ausprobieren willst.

Der "FTDI - Bug" würde dazu führen, dass kein "Arduino Uno" mehr als Serielle Schnittstelle zu sehen wäre, und beim Einstecken/Abziehen nichts passieren ( Palim, Palim ) würde.

Ein original Arduino Uno R3 hat für die USB-Seriell Wandlung keinen FTDI, sondern den atmega16U2, Nachbauten können sich mit allem möglichen "kompatibel" nennen.

Habe mir jetzt mit einem zweiten Uno den bootloader neu auf den alten Uno gebrannt doch dann ist das Problem das selbe, und der sketch der vorher drauf lief läuft immer noch....

Atmega chip programmer. Written by Nick Gammon. Version 1.35 Compiled on Sep 29 2015 at 14:56:55 with Arduino IDE 10605. Attempting to enter ICSP programming mode ... Entered programming mode OK. Signature = 0x1E 0x95 0x0F Processor = ATmega328P Flash memory size = 32768 bytes. LFuse = 0xFF HFuse = 0xDE EFuse = 0xFD Lock byte = 0xEF Clock calibration = 0xCA Type 'L' to use Lilypad (8 MHz) loader, or 'U' for Uno (16 MHz) loader ... Using Uno Optiboot 16 MHz loader. Bootloader address = 0x7E00 Bootloader length = 512 bytes. Type 'Q' to quit, 'V' to verify, or 'G' to program the chip with the bootloader ... Erasing chip ... Writing bootloader ... Committing page starting at 0x7E00 Committing page starting at 0x7E80 Committing page starting at 0x7F00 Committing page starting at 0x7F80 Written. Verifying ... No errors found. Writing fuses ... LFuse = 0xFF HFuse = 0xDE EFuse = 0xFD Lock byte = 0xEF Clock calibration = 0xCA Done. Programming mode off. Type 'C' when ready to continue with another chip ...

Sollte beim bootloader brennen nicht alles gelöscht sein?

Warum brennst du den Bootloader nicht mit der Arduino IDE?

Serenifly: http://www.gammon.com.au/bootloader

Habe es hiermit gemacht, wenn ich es mit der IDE mache kommt ein Fehler:

D:\Programme\Arduino\hardware\tools\avr/bin/avrdude -CD:\Programme\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM5 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is "D:\Programme\Arduino\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.05s

avrdude: Device signature = 0x000000 (retrying)

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

avrdude: Device signature = 0x000000 (retrying)

Fehler beim Brennen des Bootloaders. Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0x000000 avrdude: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check.

avrdude done. Thank you.

Lock byte = 0xEF

Da ist ein Lock-Bit auf "Sperre" gesetzt. (0)

Bin nun kein Experte, aber nach meinen "Forschungen" sollte das "Bootloader Schreiben" verhindern. Keine Ahnung, aber das scheint Absicht zu sein, obwohl die IDE definitiv was anderes macht ( -Ulock:w:0x3F ) ...

wenn ich es mit der IDE mache kommt ein Fehler

Ist da der angegebene Programmer Typ richtig? stk500v1 ? (Ich denke du nimmst einen 2. Arduino als ISP )