APA102 LED strip on an ATMEGA328p


Having seen the work done by cpldcpu on the APA102 LED chipset, I thought I’d test out some of my strips using his code on an ATMEGA328p. A quick project using his driver routines with a HSV/RGB Converter class proved a success.


AVR Studio 6.2 C++ project available after the break.


Cylindrical LED Display



Phwoar. This one took some pretty crafty wiring! 1,920 Individually addressable LEDs, arranged in a cylindrical 32 x 60 matrix. Peak power consumption for this baby is ~580W of blinding glory. A few more photos after the break, I’ll try and get some build details up soon.


Next Project – Away with the fairies!


I was pretty pleased with how my last project turned out, so I’ve started working on another idea with a different friend, for her to wear to another party in late Jan. I’m glad to have a little more time on this one, because it’s looking like it will be a little more complex! The image below is the result of a few hours of brainstorming in SketchUp, and will also be one of the few electro-mechanical projects that I have done.

Some people have a passion for a certain something. Mine is building things. My friend’s passion is fairies… It’s an odd set to combine, but I think I can come up with something pretty cool here. She want’s a set of fairy wings to take to this party. Sure, you can buy wings from costume shops, but that’s no fun! I want to design something a bit more special then that! So, I sat down and thought of what would give that special something to the design.

I like LED lighting, so there will definitely be some of that involved. I had originally planned to use EL wire, for it’s unique appearance, but I got tired of looking for small-footprint solutions for reliably powering the EL strings. Besides, it’s somewhat fixed in it’s colour output, and that can be quite restrictive! I’ll explain what I’m using instead later on.

That’s not the final touch though. Shortly after the lighting, I got to thinking, can I get these wings moving? What you see above is the base of that idea. Using a couple of RC servos, and some ball bearings, it should be possible! I’m going to be working on finalizing the design over Christmas, which will leave me most of January to order and build.

I’ll be keeping track of the work here, so check back for more updates!


Star of the Ball – Results


 My friend rocking the finished dress. I didn’t manage to get many photos myself, and I’m still waiting to see others from the ball, so this will have to do for now. It looks a lot more purple in the photos, I think there’s a fair amount of UV light coming out of the blue LED elements.  I’ll stick more photos up when they arrive!

Star Of The Ball – Part 2



Well, that went quickly! I’m now at T-2 days until the night of the ball, and thankfully, all my eBay bits have arrived in time! (Aside from a mild nuisance of some wrongly delivered NPN transistors, more on that later…) Here’s what my test bench looked like yesterday, with some basic debugging going on.

Bench Testing The Controller with the LED strips.

As of this evening, I’ve gotten the controller PCB built and working, with a nRF24L01+ radio for user interaction, and I’ve prototyped a pretty solid menu structure for controlling the pattern and brightness. I say prototyped, as I’ve hit a little math (I think!) snag when moving the code over from my Atmega2560 dev platform, to the 328p-based controller, but I hope to have cracked it by tomorrow.


ATTINY2313 and vUSB


I have a university project going on at the moment, where the main goal is to learn something new, that hasn’t been, and won’t be, covered by our course material. Not too hard, given that my university is still pitching assembler for PIC’s as new and interesting. The module asks that we undertake a project, whereby we learn some new skills, and deliver an output that demonstrates them.

I’ve set out to get my head around the vUSB stack, and design a USB interfaced, 1-wire temperature sensor stick. Now so far I’ve only been used to serial communications, either over a RS232-TTL <-> USB interface, or using the on-board USB controller on the Arudino Leonardo. Reading and writing bytes directly to serial ports is a pretty easy system. USB adds a lot of overhead to that, but it’s too useful of a tool to pass up learning.

I’ve been following the well-doccumented vUSB tutorials from CodeAndLife, and I’ve managed to get a command-line controlled LED working (though you do have to read everything. Keep an eye out for the makefile for the command line exe!). Next up will be getting the DS1820 working, and modifying the LED switch code to handle data transfer. Watch this spot! Below is the hardware I’ve been using, it’s pretty damn simple! A few things to note are the 3V3 TO-92 regulator (USB speaks 3V3!), and the series + pull-up resistors on the USB connections, though they are barely visible in this photo!

ATTINY 2313 vUSB Stick

Star of the Ball..


I’m going to a masquerade ball with some friends this December, and one of these friends wants something special to wear. I’ve built her a colour changing necklace, and extended-battery life fairy lights for festivals and such before, but for a one-night-only affair  I think I can pull off something a bit more punchy and attention grabbing. So, what better to do, than to make her the star of the ball. And we all know stars are actually huge, burning super-novae, that output huge amounts of light.

So, here’s my shopping list;

  • 10m of “5050” 12V Red/Green/Blue LED strip (eBay)
  • I had wanted to use 5V HL1606-or-similar strips, to give animation capability, but the lead time in getting them shipped from China was too long. Even 5V straight RGB strips were only available from the US, which would also have taken too long to arrive. Rather than swap out thousands of current limiting resistors, I’ll just up the LED supply voltage. 

RGB LED Lighting Strip

  • 2 x 11.1V 20C 2300mAh Li-Po battery packs from eBay. These should provide enough juice to run the 12V LED Strips!

Lithium Polymer Battery Pack

  • Hand built 3 channel MOSFET controller, because of time constraints. Heck, I may even work in wireless control if I get time!

Updates on the Glowstaff project


Time sure seems to drag while you are waiting for something to happen! But after a good few weeks, the boards from OSHPark are finally here, and appear to be mostly functional! I only need to test the battery charging and protection circuitry, but everything else so far has worked with minimal effort! I’ve soldered up half of the circuitry on two boards, one with the uC, IMU and Radio modules, and one with just the power management circuitry, just to be safe.

Test Fixture for the 2nd Revision Controller PCB


Controller PCB Rev 2 Ordered!


Controller Rev 2

I’ve just put the above design into OSHPark (hat used be the dorkbotPDX PCB order) for manufacture, hopefully to go out on the Oct 5th 2-layer panel order. 3 copies of the board, 140mm x 20mm with Gold finish and a funky purple solder mask. Not bad for £16.50, including shipping from the US!

This design incorporates all the features I’ve wanted since I started pushing the capabilities of my hand soldered prototypes. I’ve got the battery protection and power path management worked in, along with separate regulators for the IMU and radio circuits, and an on-board booster as opposed to the fragile modules I’ve been putting this off for a while, as I have a bit of a phobia that I’ll miss something silly in the tracking, but I’ve re-done this layout 5 times now, so I’m happy to send it off for fab. Besides, can’t argue at those prices!

Now begins the waiting game…

Ghetto BlinkMs!



So this is my take on the BlinkM LED module, with instruction taken from the most excellent “Ghetto Pixels” instructable from jimthree . Not bad for 5 mins of tinkering and a few £’s worth of parts.


Go to Top

Social Widgets powered by AB-WebLog.com.