Skip to content

experiment4.com

Middle age musings and assorted geekery

Archive

Category: Arduino

The bootloader built/used in Part 1 and Part 2 is based on the traditional “Atmega”code. This is an older bootloader, which works very well, but it’s fairly large: it takes up close to the maximum 2048-byte limit.

The newer “Optiboot” bootloader is a bit more on the bleeding edge but it is also much slower. It looks possible to compile it down to 512 bytes, but for some reason my build system is allergic to the -mshort-calls directive (avr-gcc gives me a “Internal error”) so I need to remove it to get things to compile, which yields code that is just over 512 bytes. Drats.

Still, reclaiming 1K of space over the traditional bootloader is not bad.

continue reading…

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

Part 1 of this little series includes a ready-to-use bootloader. But, for the curious, here is how to compile a bootloader, from scratch.

continue reading…

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

So, a bunch of the ATMega AVRs have the ability to work on very low voltage (down to 1.8V) and also, to require extremely low current – less than 1mA! This is 1/10th of what the typical Arduino setup uses, so, for extremely low power applications (such as a super-minimalistic solar setup), it’s worth considering.

But of course, there is a catch. Current is a function of both Vcc voltage and clock rate. The lower the active current, the slower you have to go – but as a side benefit you can also lower the voltage:

A low-voltage, low-frequency Arduino requires a special bootloader build – since the default bootloaders are made for substantially faster clock rates, and 3.3V/5V voltage.

continue reading…

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)