A simple board with an ATTiny and 5 LED's intended as an intro to soldering and micro controller programming

Similar projects worth following
I initially made this board with the intent of using it for a course at the local Makerspace where I teach Arduino courses. It has a 2032 holder, an ATTiny85, 5x 1206 LED's, and a handful of passives. The idea was to solder up the board and program it in the course using the on-board TC-2030 connector. When the button is pressed, one of several different pre-programmed light shows starts. It's a simple introduction to soldering/programming/electronics, that's cheap enough to hand out as part of a course. I think this is a really practical way to start introducing a lot of the skills that we play with to new people.

If the student is inclined, they could populate the 6-pin ICSP header to then hook this up to an AVR programmer (or an Arduino) and play with making their own custom firmware, to learn more about programming the ATTiny. A big blank space is left on the front of the board, so a maker space or other organization running the course can put their logo on

The firmware doesn't have a whole lot to do: when power is applied, the micro pulls a variable out of a location in EEPROM and runs a switch/case on the value of that variable.  The switch case will run one of out of several different light shows, depending on the value of the variable.  After the light show, the variable is incremented and saved back to EEPROM, and the micro goes into deep sleep.  The button on the board is actually the micro's reset line.  Pressing it will reset the micro, where it will start the sequence over again.  

Different sequences take advantage of different Timers/PWM functionality.

With only 40 solder-joints total, this is a relatively un-intimidating introduction to SMT soldering.  There's enough stuff that it will be challenging for those new to SMT, but simple enough that a skilled solderer can replace/fix any errors quickly to keep a class moving. 


hex file for flashing the lights

hex - 2.36 kB - 09/09/2018 at 18:15


quicktime - 44.18 MB - 09/09/2018 at 18:14



BOM of board along with Mouser links to all components

sheet - 43.49 kB - 09/09/2018 at 15:49



PDF of MakerBoard Schematic

Adobe Portable Document Format - 18.09 kB - 09/09/2018 at 15:48


sch - 410.54 kB - 09/09/2018 at 15:48


View all 7 files

  • 1
    Assemble and Program

     Solder up the components, paying attention to the orientation of the LED's and the IC.  

    When programming, ensure to program the FUSE bits on the ATTiny so that the chip is running off of the internal 8Mhz oscillator and that the BOD is NOT enabled.  If BOD is enabled, the micro will draw small amounts of current even while sleeping, and this will drain the battery fairly quickly.  With the micro in deep sleep and BOD disabled, the circuit draws well under 1uA and the battery will last much longer.

    Use the following FUSE settings/avrdude commands.  Note that these commands are for an AVRISP2 programmer.  modify as needed for other programmers.  Ultimately the goal is to set the low, hi and extended fuses to 0xE2, 0xDF and 0xFF respectively.

    avrdude -c AVRISP2 -p ATtiny85 -U lfuse:w:0xE2:m

    avrdude -c AVRISP2 -p ATtiny85 -U hfuse:w:0xDF:m

    avrdude -c AVRISP2 -p ATtiny85 -U efuse:w:0xFF:m

    Program the FLASH with the supplied hex file or custom firmware.  An example of programming the hex file using avrdude is below:

    avrdude -c AVRISP2 -p ATtiny85 -U flash:w:main.hex


View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates