What Optiloader does is kinda of neat. Instead of having a computer that talks thru the Arduino to a chip for programming, instead the Arduino itself programs the chip. This means you can program chips without having a computer involved. The good news about this technique is that it is incredibly fast, you can program chips 10x faster than with a computer and without having to type anything in. The only downside is that its very specialized, once you set it up the programmer can only do one chip (in general) with one HEX file. If you want to update it, it can be a little effort to reconfigure.
However, if you are burning a lot of chips, this can be a real blessing. We can program and burn an Arduino bootloader chip in about 5 seconds. Normally with a computer you’re talking 40 seconds or so. Another nice thing is that you can make it very clear when a failure has occured. Instead of reading text on a computer screen – a piezo will beep once on success. We’ve found that audio feedback is way more likely to be noticed than visual feedback. While you dont need to use an Arduino for this, we have a lot of Arduino’s kicking around here so they make a handy base.
This code can be adapted for programming any AVR that can be ISP programmed (this is like 99% of AVRs) but in this example the wiring will be for the Atmega8/48/88/168/328 series and the code will be the Adaboot bootloader. If you have other chips you are programming, check the datasheet for how to wire VCC, Gnd, MISO, MOSI, SCK, RST and XTAL1 (if you need external clocking)
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.
Python for Microcontrollers — Python on Microcontrollers Newsletter: CircuitPython 8.1.0 and 8.2.0-beta0 out and so much more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi
Adafruit IoT Monthly — AI Teddybear, Designing Accessible IoT Products, and more!
;_;
forever standalone
Thanks, this allowed me to update the bootloader on my duemilanove board to the uno bootloader. Now, I have two viable uno boards.