Projects‎ > ‎Programming‎ > ‎


While I am definitely still learning, I have become pretty good at programming with AVR microcontrollers.  Feel free to use any of these programs as a jumping point for your own project... or a laughing point at your ultimate programming master inner circle get togethers.

Why Atmel AVR?

This is a brief description of why I have chosen to work primarily with AVR chips over something else such as PIC or PSoC. I also go over a few things you need to get started!

Makefile and Custom Directories

After constantly using the same few header files in almost every project, I decided to put them in a single directory that can be accessed by any project... custom header files for download!

Breadboard Header for In-System Programming

Most guides are very thorough in explaining how to get set up and blink an LED, but they do so by shoving wires into the programming cable to connect to a breadboard. Here, I illustrate how to create a simple ISP header perfect for breadboard use.


This is the program used in the CycleLux Controller for the CycleLux Project. It receives input from a group of buttons through a USI connected I/O expander and turns on strings of LEDs.


This is the program used in the Tough Light Controller for the Illuminate Project. It waits in sleep mode, then turns an LED string on to low or high mode when a sensor is touched.

Custom AVR ISP Breadboard Header