Articles Code About

A Free ESP8266 Breakout Board

A Free ESP8266 Breakout Board

Just kidding. Bend the headers....

The Perfect Butter Chicken

The Perfect Butter Chicken

I first tried Indian cuisine in 2010 while living in the D.C. metro area. There was this Indian restaurant in Fairfax called Bombay Cafe, and I miss it dearly. Similar to a lot of westerners, I took to the chicken makhani, also known as butter chicken. A bit after...

USBRemote: An Open Source Infrared Remote Reciever using AVR

USBRemote: An Open Source Infrared Remote Reciever using AVR

After a few weekends of work, Ive finally finished usbremote, the replacement to my old avrremote project. The avremote project was a quick weekend project I did when I got sick of getting up and walking across the room to increase or decrease the volume or pause/resume Netflix (on...

I2C Slave Driver for ATTiny2313

I2C Slave Driver for ATTiny2313

In my last post I wrote about adapting Atmel's I2C Master driver. This time, I've done the same thing for the Slave driver, except it is designed specifically for the ATTiny2313, but can be very easily adapted to work with any AVR that has a Universal Serial Interface (USI) module....

Implementing an I2C Master with the Atmel ATMega Series

Implementing an I2C Master with the Atmel ATMega Series

I2C is a serial bus used for computer communications, developed by Philips. It's one of the most common ways of communicating between integrated circuits. For example, I2C is the defacto method of interacting with EEPROM chips. If you're developing firmware, you're going to run into I2C at some point. Luckily,...

Transmitting Data using an XBee and AVR using libavrxbee

Transmitting Data using an XBee and AVR using libavrxbee

A few days ago I posted about libavrxbee, a library for working with Digi XBee radio modules with the AVR line of microcontrollers. Since then, the first bit of code has been committed and is available for use. I thought it would be nice to give a quick introduction on...