Using my headphones with my computer is frustrating. Whenever I want to use my headphones, I have to move my computer so I can access the back panel, unplug my computer speakers, and plug-in my headphones. Okay, maybe it isn’t *that* difficult, but it should be easier. How about a device that allows you to select between headphones or computer speakers? Continue reading

# Catalan numbers

Recently I was trying to count the number of n-bit numbers that have an equal number of 1′s and 0′s. For example, there are 6 such numbers for 4-bit long numbers (0011, 0101, 0110, 1001, 1010, 1100). I wrote a simple program to count such numbers for arbitrarily long numbers. However, the program was computationally complex and it took a long time to compute the result for large values of n. After spending some time trying to figure out the equation myself, I searched the internet and stumbled upon Catalan numbers. I determined that the equation is related to Catalan numbers. I included the equation below because I couldn’t find it anywhere else. Also, I don’t have a formal proof, but it seems to work. Enjoy!

Number of n-bit numbers that have an equal number of 1′s and 0′s = (m+1) * Cm, where m = n/2 and Cm = mth Catalan number

# How to make your own Arduino shield

After many months of working on my Arduino based project, I decided to finalize my project by making my own custom PCB. At first I wanted to design a PCB that connected to the Arduino through a series of cables. After some thought however, I realized that a shield would be better because it would eliminate the need for cables. This tutorial assumes an understanding of Cadsoft Eagle. For more information about Eagle, see the Eagle Tutorials section below. Here are the steps to make your own Arduino shield: Continue reading

# Fun with FFT

This is a project that I threw together one weekend. The FFT is calculated using Processing. The FFT is then sent to the Freeduino via the serial port. The Freeduino displays the FFT on the dot matrix display using shift registers and a Darlington transistor array.

# How to un-clutter your desk with fluorescent lighting

If you have limited room on your desk, the last thing you need is a bulky desk lamp taking up space. I recently replaced my desk lamp with an under-cabinet fluorescent light fixture. This works well if you have shelves over your desk. If not, you might want to consider another alternative. This project involves wiring so please be careful. Continue reading

# Fun with RGB LEDs

I recently connected an Arduino to a Tri-Color LED Light Bar that I bought from SparkFun Electronics. I used pulse width modulation to control the brightness of each color. The individual colors combine to make the desired color. Download the code here and see the schematic below. Continue reading