Converting The BlinkM Into The World’s Tiniest Arduino


The BlinkM “Smart LED” is a great little device on its own accord. It allows for complete control of its RGB LED using a built-in microcontroller, enabling the user to do a wide array of things that normally require PWM to accomplish. At just over half an inch square, this little device might also be the smallest Arduino on the market.

The BlinkM packs an ATiny85 micro controller, which allows it to be flashed with the Arduino bootloader thanks to the people over at the [High-Low Tech group at MIT]. They did some tweaking of the Arduino IDE configuration files and incorporated some core library code created by [Alessandro Saporetti] to get the job done – all of which is available on their site.

Once the code is uploaded to the BlinkM, you essentially have a micro Arduino running at 8MHz with a built in LED and 2 I/O lines (5 if you snip off the LED). It’s a great device to have on hand if you feel like a full-fledged Arduino would be overkill in your project.

Stick around to see a video tutorial of the reflashing process.


18 thoughts on “Converting The BlinkM Into The World’s Tiniest Arduino

  1. @kyle: Trash the arduino all you want, but it allowed me to get into the whole micro controller deal. By actually getting results before i spend 100’s of euro’s and days of learning. Now if i ever feel the need to switch (or do more), al least i have some kind of knowlage to start it…

  2. The smallest Arduino ever? Not for long, I guess – their ATtiny packages still have pins! A TQFN package, when placed diagonally, will probably fit right under the LED. Wouldn’t that be nice?

  3. Sicki, BlinkMs originally had ATtiny45s. For over a year now they have ATtiny85s.

    Lincomatic, your article is great! I’ve been using something similar for doing ATmega development.

    Besides the low memory issues, one of the other reasons why there isn’t an Arduino bootloader for the ATtiny85 is there is way to write-protect a memory block, like there is on the ATmega. Otherwise, you run the risk of nuking your bootloader.

  4. is it coincidence that i RT’d this from @todbot on twitter yesterday?

    i was looking into the sproutboard stuff and saw a blinkM used as a visual indicator for a network monitoring device, did a quick google and and ran across this article. Hmmmmmmm

    i want one.

  5. that’s stupid !
    There is not and never will be an arduino.
    An arduino is an arduino thanks to two features:
    1) the bootloader, to re-program the AVR chip quickly using a minimum of pins and without having to plug/unplug lots of things.
    2) the easy-to-use UART (rx/tx) to monitor values and debug when nothing act as expected (with serial.print, etc..).
    … the ATtiny doesn’t support bootloader and doesn’t have UART.
    this post should be named “using part of arduino API in the BlinkM’s ATtiny”

  6. Smaller, bah. How about someone try to make the biggest Arduino? 0.5 square meters, say, with so many step-up and step-down power regulators on board that the thing consumes 50 watts. Built into a custom CNC-milled aluminum enclosure “for EMI protection”. With not one but two USB-RS232 converters piggybacked (so the external connection is… RS232), with 5W LEDs on fan-cooled heatsinks as power/rx/tx indicators… all telling the time in morse code on a 3mm blue LED.

    Sadly, someone’s probably already done that. “Why does my Arduino draw five amperes? Because it can, of course!”

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.