AZ-Delivery Nano V3 - Bootloader flashen - AZ-Delivery

Bienvenido a nuestra entrada de blog hoy. Hoy nos gustaría responder a una pregunta frecuente de nuestro departamento de soporte: ¿cómo puedo volver a flashear el cargador de arranque en el Nano?

Los microcontroladores como el NanoV3 se entregan con un cargador de arranque que ya se ha aplicado. Diser permite que el módulo se describa con programas a través del IDE de Arduino.

Así que si el módulo deja de funcionar, puede ser porque el cargador de arranque está defectuoso. Además, este método permite a los módulos parpadear con el gestor de arranque original actualizado, por lo que no tiene que seleccionar "antiguo gestor de arranque" cada vez con "Procesador".

Para reprogramar el chip, necesitamos un dispositivo de programación. Hay dispositivos de programación especiales para esto, pero la mayoría de ellos ya tienen una solución adecuada en el cajón.

Es por eso que hoy te mostramos cómo convertir el microcontrolador, compatible con Arduino Uno R3 en un programador, y así suministrar un nano con un nuevo cargador de arranque.

Para ello, conectamos el microcontrolador al PC e iniciamos el ArduinoIDE. En el menú "Archivo vamos a "Ejemplos" -> "11. ArduinoISP" -> "ArduinoISP".

 

Ahora nos aseguramos de que hemos seleccionado como placa "Arduino/Genuino Uno" y establecemos el puerto COM correcto, y cargamos el boceto en nuestro microcontrolador, compatible con Arduino Uno R3.

Ahora conectamos nuestro Uno con nuestro NanoV3 como se ve aquí en la imagen:

 

Es posible que pueda agregar un condensador de 10 micras al controlador de programación entre GND(-) y RESET(+).

Después de haber conectado todo correctamente, tenemos que hacer algunos ajustes más en el IDE de Arduino para que podamos poner el nuevo gestor de arranque en las nano botellas.

Para ello, vamos a "Herramientas" en el menú y seleccionamos el "Arduino Nano" como la placa. Como com-port dejamos seleccionado el Uno, y como programador establecemos "Arduino como ISP".

Atención: las opciones ArduinoISP y ArduinoISP.org no funcionan, sólo la entrada "Arduino como ISP"

Después de que hayamos comprobado todos los ajustes de nuevo, podemos iniciar el proceso de flash a través del menú "Herramientas" a través de "Escribir gestor de arranque". Después de sólo unos momentos, el proceso está completo y nuestro Nano V3 ya está listo para su uso de nuevo.

 

Für arduinoGrundlagen software

13 comentarios

Vincie

Vincie

I followed instruction (but used Mega 2560 board) and my Nano still dead. You missed important part: once you “and load the sketch on our microcontroller”(UNO), you have to disconnect it, right? (to make proper wiring). Then you connect again and make settings in IDE. But anyway after I selected “Burn bootloader” (not “WRITE”!) IDE complains:

“avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0×03
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.

Error while burning bootloader.
"
Where is the problem – Mega or Nano?

Jack

Jack

I had bought the 5 pack AZ-Delivery Nano V3, but did not work with upload under Arduino IDE 1.8.9. immediately. There is an new option under tools → Board: “Arduino Nano”, you have to select Processor: "ATmega328p (Old Bootloader). Then it works fine. Anyhow I have changed all the bootloaders to the Arduino UNO one.
The bootloader is shifted at the back of the flash memory, so you gain more flash memory to program (32256 bytes instead of 30720 bytes) . Fuses were also programmed like an Arduino UNO: E=0xFD, H=0xDE, L=0xFF. Works fine with LOCKBIT=0xFF.
When working with Arduino IDE 1.8.9 choose Board: “Arduino/Genuino UNO”, then you get the extra flash memory as well.

Hans W

Hans W

Als Aruino IDE habe ich auf Ubuntu 64it laufen, Erkennt Ubuntu den USB Stick ohne weiteres?
Der USbasptreiber ist ja nur für Windows notwendig….
weiß das jemand weiter?
Und wie sieht das alles bei den Anderen Cotrollern hier bei AZ aus? muss man die nun alle auf nen Neuen Bootlader Flaschen?
danke für die Antwort

Bernd Albrecht

Bernd Albrecht

@ Hans-W: Sie haben doch schon die Lösung gefunden. Bei unseren Nanos wird unter Werkzeuge der Old Bootloader vorgewählt.

Hans W

Hans W

Moin!
wasmacht man wenn man nur einen Nano hat?
ich habe da noch einen Stick kann man diesen auch benutzen? ,wenn ja wie?
danke für die Rückantwort….(bin noch grün!) habe gerade angefangen damit.
Die IDE meldet Fehler beim Hochladen, so ballt ich geändert habe auf OLD Bootlader Funktioniert es!
ich habe einen UsB -Stick (war mal für die Franzis Wetterstation mt bei).
Könnte auf die 6er Stift leiste am ende des Nanos Passen.
Danke für eurer Rückantwort

Volker Aumann

Volker Aumann

Verwendet man die Datei Beispiele=> 11.ArduinoISP => ArduinoISP ist der Hinweis in der Datei zu beachten:
// On some Arduinos (Uno,…), pins MOSI, MISO and SCK are the same pins as
// digital pin 11, 12 and 13, respectively. That is why many tutorials instruct
// you to hook up the target to these pins. If you find this wiring more
// practical, have a define USE_OLD_STYLE_WIRING. This will work even when not
// using an Uno. (On an Uno this is not needed).

Die Anweisung ’ #define USE_OLD_STYLE_WIRING’ ist in der Programmzeile 81 auskommentiert zu finden.

Maik

Maik

Nach meiner Recherche ist nichtmal unbedingt zu empfehlen den Bootloader zu ändern. Beim neuen Bootloader für den nano haben Arduino Leute scheinbar eine Option vergessen sodass der Bootloader 2k statt 0.5k.
Die hier angegebene Anleitung flasht einen Uno Bootloader, der nur 0.5k benötigt, allerdings muss man meines Wissens nach in Zukunft in der IDE dann auch Arduino Uno als Board auswählen wenn man den Nano programmieren will.
Der Bootloader fixed “nur” ein spezielles Problem in Verbindung mit Watchdog und erlaubt eine etwas höhere hochladegeschwindigkeit.
https://arduino.stackexchange.com/questions/51866/arduino-nano-atmega328p-bootloader-difference

Moerto

Moerto

Top Anleitung!
Funktioniert bei mir einwandfrei. Danke!

losknossos

losknossos

Hallo Volker, ich glaube ich habe den Fehler gefunden.
Das rote Kabel für die Stromversorgung muss vom 3,3V Augang des Programmers zum SEITLICHEN 3,3V-Eingang des Nanos gehen statt zu dem Pin auf dem Bild.
Das hat das Problem bei mir gelöst.

Volker Holst

Volker Holst

Bei meinen Versuchen kommt immer wieder nach wenigen Sekunden die Meldung:

“Arduino: 1.8.5 (Windows 10), Board: “Arduino Nano, ATmega328P (Old Bootloader)”

avrdude: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.
Fehler beim Brennen des Bootloaders."

und der Bootloader wird nicht auf den Nano gebrannt (weder alter noch neuer BL).
Reset direkt oder mit 10µ gegen GND bleibt egal.

Was kann die Urlache sein?

Auf den Uno R3 läßt sich das “Arduino as ISP” problemlos laden, ageschlossen nach Skizze / Tabelle oben.

Danke für die eventuelle Antwort.

Foobar

Foobar

Bei mir kommt der Fehler:
Arduino: 1.8.8 (Linux), Board: “Arduino Nano, ATmega328P”

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0×00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0×00
Fehler beim Brennen des Bootloaders.

Wie gehe ich nun weiter vor?

Gunther Knierim

Gunther Knierim

Die folgende information von den Arduino Seiten ist hilfreich wenn ander Boards als der UnO als Programmer benutzt werden sollen.

The programming process uses VCC, GND and four data pins. Three pins connect MISO, MOSI and SCK between the programming micro and the target micro, the fourth pin from the programming micro goes to the reset pin of the target.
How to wire your boards
The following table display on which pins the MOSI, MISO and SCK are broken out on the different Arduino boards:
Arduino / Genuino Board MOSI MISO SCK Level
Uno or Duemilanove 11 or ICSP-4 12 or ICSP-1 13 or ICSP-3 5V
Mega1280 or Mega2560 51 or ICSP-4 50 or ICSP-1 52 or ICSP-3 5V
Leonardo ICSP-4 ICSP-1 ICSP-3 5V
Due ICSP-4 ICSP-1 ICSP-3 3,3V
Zero ICSP-4 ICSP-1 ICSP-3 3,3V
101 11 or ICSP-4 12 or ICSP-1 13 or ICSP-3 3,3V
MKR Family 8 10 9 3,3V
The SPI interface – and therefore these pins – is the interface used to program the AVR microcontrollers. Note that MISO, MOSI, and SCK are available in a consistent physical location on the ICSP header; this connector is used also by shields that rely on the SPI interface allowing the design of shields that work on every board.

Michael Reichelt

Michael Reichelt

Bitte mehr Hintergrundinformationen: z.b. Was passiert generell bei dem Vorgang? Warum der Umweg über den Nano? Die Ardurino IDE kann das doch auch direkt über USB. mfg

Deja un comentario

Todos los comentarios son moderados antes de ser publicados