💬 Various bootloader files based on Optiboot 6.2
-
@alexsh1 If you haven't touched the ATmega328p then it should be sitting with fuses of; L:0x62 H:0xD9 E:0xFF, which would run the uC at 1MHz
@samuel235 This is strange. The serial monitor was working only on 74880 - I do not think the AVR was running @ 1Mhz
-
@GertSanders Thanks for a detailed write-up!
@GertSanders said:
You can also use an external 8 mhz crystal, and combine this with clock division by 8 to get 1mhz operation.
And you can choose an external 1mhz crystal.
How is this influencing low power though? My understanding is that such setup (external crystal) takes more power.
-
@GertSanders Thanks for a detailed write-up!
@GertSanders said:
You can also use an external 8 mhz crystal, and combine this with clock division by 8 to get 1mhz operation.
And you can choose an external 1mhz crystal.
How is this influencing low power though? My understanding is that such setup (external crystal) takes more power.
Using a 1mhz crystal would not be the best thing for low power use, you are correct there.
But it gives a more accurate clock base for the timing functions.
-
Not sure what happened, but the following error returned:
Board atmega328p:avr:atmega328pO5M8c doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328PO5M8C Board atmega328p:avr:atmega328pO5M16c doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328PO5M16CI did not change anything so very strange why it comes up.
-
Actually, i have no proof but i've been informed from the arduino standalone microcontroller forums, that using a external 8mhz crystal is good for power consumption. ONLY if its a sleeping module though, it enables it to perform its tasks quicker and then sleep quicker, resulting in more time sleeping.
That error code is something i ran into, i'm guessing you're working inside of arduino IDE, if so its to do with your boards.txt entry. Its missing that entry that it speak about. Check that its there, if not enter it in manually.
-
Actually, i have no proof but i've been informed from the arduino standalone microcontroller forums, that using a external 8mhz crystal is good for power consumption. ONLY if its a sleeping module though, it enables it to perform its tasks quicker and then sleep quicker, resulting in more time sleeping.
That error code is something i ran into, i'm guessing you're working inside of arduino IDE, if so its to do with your boards.txt entry. Its missing that entry that it speak about. Check that its there, if not enter it in manually.
Thanks - yes you are right it is about boards.txt.
However, the problem is that I did not change anything. Two days ago I uploaded severa sketches and no errors were coming up and now two different boards are showing the same error. This is just odd... -
Thanks - yes you are right it is about boards.txt.
However, the problem is that I did not change anything. Two days ago I uploaded severa sketches and no errors were coming up and now two different boards are showing the same error. This is just odd... -
This message pops up since IDE 1.6.7
The new IDE expects this entry for all boards, just add it or ignore (it's more a warning then an error). -
And there you go, the forever informative @GertSanders has andwered your questioning ;)
-
@alexsh1, have you performed an Arduino IDE update? I had this exact issue simply because I updated my IDE.
@samuel235 Looks like you are right - without realising I did press update button thinking about a sketch rather than about the update :(
Corrected this issue aleady in the boards.txt
-
This message pops up since IDE 1.6.7
The new IDE expects this entry for all boards, just add it or ignore (it's more a warning then an error).@GertSanders Hello ! I am trying to upload a sketch without success for the moment.
Burning of the bootloader was done correctly (led on pin 8 lit three times) but impossible to load a sketch.
For easy deployment I choose to create a new folder to include your bootloaders:

But it seems that something is missing as upload is not possible:
Le croquis utilise 1 030 octets (3%) de l'espace de stockage de programmes. Le maximum est de 32 256 octets. Les variables globales utilisent 9 octets (0%) de mémoire dynamique, ce qui laisse 2 039 octets pour les variables locales. Le maximum est de 2 048 octets. /Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/cu.usbmodem1411 -b38400 -D -Uflash:w:/var/folders/2y/_n7gfzjx5_sgmtyh9t_lp0wc0000gn/T/build8919458311701309495.tmp/Blink.cpp.hex:i avrdude: Version 6.0.1, compiled on Apr 14 2015 at 16:30:25 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf" User configuration file is "/Users/carlierd/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/cu.usbmodem1411 Using Programmer : arduino Overriding Baud Rate : 38400 avrdude: ser_open(): can't open device "/dev/cu.usbmodem1411": No such file or directory ioctl("TIOCMGET"): Inappropriate ioctl for device avrdude done. Thank you. Problème de téléversement vers la carte. Voir http://www.arduino.cc/en/Guide/Troubleshooting#upload pour suggestions.Any suggestion ?
David.
-
@GertSanders Hello ! I am trying to upload a sketch without success for the moment.
Burning of the bootloader was done correctly (led on pin 8 lit three times) but impossible to load a sketch.
For easy deployment I choose to create a new folder to include your bootloaders:

But it seems that something is missing as upload is not possible:
Le croquis utilise 1 030 octets (3%) de l'espace de stockage de programmes. Le maximum est de 32 256 octets. Les variables globales utilisent 9 octets (0%) de mémoire dynamique, ce qui laisse 2 039 octets pour les variables locales. Le maximum est de 2 048 octets. /Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/cu.usbmodem1411 -b38400 -D -Uflash:w:/var/folders/2y/_n7gfzjx5_sgmtyh9t_lp0wc0000gn/T/build8919458311701309495.tmp/Blink.cpp.hex:i avrdude: Version 6.0.1, compiled on Apr 14 2015 at 16:30:25 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf" User configuration file is "/Users/carlierd/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/cu.usbmodem1411 Using Programmer : arduino Overriding Baud Rate : 38400 avrdude: ser_open(): can't open device "/dev/cu.usbmodem1411": No such file or directory ioctl("TIOCMGET"): Inappropriate ioctl for device avrdude done. Thank you. Problème de téléversement vers la carte. Voir http://www.arduino.cc/en/Guide/Troubleshooting#upload pour suggestions.Any suggestion ?
David.
@carlierd
I am almost certain that you are NOT using my boards.txt because you put the bootloaders outside the reach of the IDE (must be in the sketchfolder and within the hardware subfolder of the sketches folder). -
@carlierd
I am almost certain that you are NOT using my boards.txt because you put the bootloaders outside the reach of the IDE (must be in the sketchfolder and within the hardware subfolder of the sketches folder).@GertSanders
No doubt that I using your file as I got the same problem as @alexsh1 with the arduino pin file.Look at my board choice:

I find this method very good for deployment but only when it's working ;)
I check the bootloader with Nick Gammon sketch and it seems good.
David. -
@carlierd
I am almost certain that you are NOT using my boards.txt because you put the bootloaders outside the reach of the IDE (must be in the sketchfolder and within the hardware subfolder of the sketches folder).@GertSanders One more question on the LED connected on B0.
When you wrote that the LED lit on arduino reset, it's when the reset button is pushed ? when the arduino start ? or both ?
David.
-
@GertSanders One more question on the LED connected on B0.
When you wrote that the LED lit on arduino reset, it's when the reset button is pushed ? when the arduino start ? or both ?
David.
When the atmega328 is reset, the LED will flash three times if the boot loader is in memory. This also happens when you send a new sketch via the Arduino IDE to the atmega328.
So if you connect pin 1 shortly to GND, the led should flash.
The first time you load a boot loader, the atmega328 will "loop" between the startup procedure of the boot loader (and will flash the led), and then try to load the sketch. If there never is a sketch, it will start the boot loader again and again ...
-
When the atmega328 is reset, the LED will flash three times if the boot loader is in memory. This also happens when you send a new sketch via the Arduino IDE to the atmega328.
So if you connect pin 1 shortly to GND, the led should flash.
The first time you load a boot loader, the atmega328 will "loop" between the startup procedure of the boot loader (and will flash the led), and then try to load the sketch. If there never is a sketch, it will start the boot loader again and again ...
So it confirms that your bootloader was correctly burnt in the atmega as the first time I failed to upload a sketch the LED flash three time again and again !
Thanks !David.
-
Hello,
I tested two bootloaders today:
- optiboot_atmega328_08M_038400_B0.hex
- optiboot_atmega328_01M_009600_B0.hex
But I am pretty sure you already tested them.
I got some issue with 1MHz bootloader but probably because I am using signing feature.
I will check the forum to be sure.David.
-
Hello,
I tested two bootloaders today:
- optiboot_atmega328_08M_038400_B0.hex
- optiboot_atmega328_01M_009600_B0.hex
But I am pretty sure you already tested them.
I got some issue with 1MHz bootloader but probably because I am using signing feature.
I will check the forum to be sure.David.
@carlierd
Indeed I am using these two boot loaders already. The 1Mhz in my very slim nodes and the 8Mhz in the red board battery based nodes.
I also use the 16Mhz in my AC based board (as a repeater or as SMS gateway).
I will make an AC board with a 20Mhz crystal just to test the faster versions of the bootloader. -
@carlierd
Indeed I am using these two boot loaders already. The 1Mhz in my very slim nodes and the 8Mhz in the red board battery based nodes.
I also use the 16Mhz in my AC based board (as a repeater or as SMS gateway).
I will make an AC board with a 20Mhz crystal just to test the faster versions of the bootloader.Hello, as I got some issue with the 1MHz bootloader, I tried without the signing feature and I still got st=fail.
One question for you, perhaps stupid but I need to be sure ;)
Do you need to set the same serial speed on both node and gateway ?David.