08 Charlieplexing RGBs

NOV 15, 2015 ||| Skills: Eagle, ShopBot ||| Material: Copperboard, RGB LEDs

Since my final project will involve LED lights, this week I decided to try charlieplexing RGB LED lights. I started out looking at Thrasyvoulos Karydis's example from a previous year and simplified it to use an ATTINY44 and only 4 lights. The method uses the tri-state logic capabilities of microcontrollers in order to gain efficiency over traditional multiplexing. By changing the directionality of a single pin, it can act both as an anode and a cathode for an LED. After designing my schematic, I realized that I would either need to mill it as a double sided board like Thrasyvoulos, or solder wires as retrofits. I decided with the latter solution, which ultimately caused the instability of the final result. The tricky thing with soldering extra wires to the lights is that it's very either for the solder to make extra connections underneath the light because the amount of solder involved to connect extra wires. Also, the LEDs can be easily melted or damaged by the solder, and I think that's why my second light never turned out. After writing the code in arduino, I found that the lights were turning on incorrectly, which partially is due to the different data sheet of the lights in stock and the one in the eagle fab library. As you can see from the data sheet, the R and B are switched. Also, for some reason the Blue ones won't turn on at all. After using a voltmeter to check every single connections, I've concluded that it's probably the messy construction of the board that made the connections inaccurate. Because charlieplexing relies on using the lights themselves to transfer the current to one another, it's very easy for one misconnection to affect multiple lights. Overall, this week has been a half-success, half-failure learning experience. The final product didn't work out exactly like I wanted it to, but going through the process really helped me understand what each part was doing.

Eagle File // Arduino Code


Update: I made a second attempt at this week's assignment because I need to understand how RGB LEDs work for my final project. So first I replicated Neil's board design of the RGB light and then I attached an RGB LED light strip on it to figure out how that can work. While RGB light requires connections to three pins each with their own resistors. The light strip only needs to connect to one pin (but this pin has to have the ability of carrying out serial functions).