At Tinker London we frequently built large interactive projects using Arduino, often to tight timescales. We frequently use libraries that give us lots of functionality, but code space in Arduino can be tight, and it always feels like programming takes too long.
The open source nature of the tools we use gives us flexibility to customise them to suit us better. I had a delve into the Arduino source code to see what could be done. Hours went into code examination, tweaking, restructuring and compiler optimisation, and a lot was learnt along the way. The result of these labours is Optiboot, a replacement bootloader for Arduino platforms.
Optiboot gives us:
Faster sketch uploading. Optiboot has improved serial port handling and programming algorithms which speeds up uploading.
More space for sketches. Optiboot is a quarter of the size of the normal Arduino bootloader, giving 1.5K of extra space to use for our sketches.
Adaboot enhancements. Optiboot has extra logic that makes sure that our application runs as soon as possible after programming.
Better maintainability. Optiboot is written in C without large blocks of assembly language, so alterations will be easier in future
Changing the bootloader on an Arduino requires some form of device programmer – we use the AVRISP Mk II programmer, but you also use another Arduino as a programmer.
Adafruit has had paid day off for voting for our team for years, if you need help getting that going for your organization, let us know – we can share how and why we did this as well as the good results. Here are some resources for voting by mail, voting in person, and some NY resources for our NY based teams as well. If there are additional resources to add, please let us know – adafruit.com/vote
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.