Would you do with a massive full color animated LED display? How about…
- Read your Tweets in giant 140 char gulps from a block away
- Add English sub-titles to the Eiffel Tower
- Display a live-updating, 45 digit long countdown of the number of atoms left in the known universe
What if you could build the display however long you needed it, for only about $15/foot?
What if it was really easy to build and used everyone’s favorite low cost micro-controller so you could easily change the software to do whatever you wanted?
Well you can! Read on for details and perfunctory video!
We’ve already seen that it is possible to drive thousands of WS2812B NeoPixels with a lowly Arduino using careful bit-banging. But what if we could bang out 8 bits at a time rather than sending them single file? Could it be possible to drive 8 times as many strings (or get 8 times the refresh rate) from our Arduino by processing bits in parallel? It would be like having a tiny pipelined GPU render engine inside our Arduino!
Read on to find out the results of a quick proof-of-concept test!….
Making a smart color-changing light bulb is not that hard, but making one that is cheap to mass produce is hard. At $10 per bulb (delivered!), the new GE C-Sleep bulbs are amazingly cheap, especially considering they include a Bluetooth radio.
For Part #1, let’s look at the physical design and construction of these fancy bulbs!
The canonical way to set the interrupt bit on AVR is the
sei (enable interrupt) instruction, but there are many creative and devious ways to set a bit.
Before you click more, see if you can think of every possible way to set the
I bit in
SREG, then read on to see if I missed any!
Last time, we experimented with spiritual blind-sending as a way to theoretically speed up SPI on AVR. While there were lots of fancy oscilloscope traces and impressive demo code, there is nothing like an actual, real, practical application to get people excited. Read on to see how much faster we can make the already highly optimized AdaFruit DotStar library with a little blind-sending action… (spoiler alert – the answer is lots more faster!)
Constantly checking to see if the coast is clear feels responsible, but it wastes cycles. Sometimes it is better to leap (or load) without looking. With a little hand-coded assembly, we can run our AVR processor lock-step with the SPI hardware and blindly dump new bytes into it at precisely the right moment. Because we don’t spend any time reading and testing status bits, we can increase the maximum throughput by more than 20%. If the prospect of screamingly fast yet perfectly safe SPI turns you on, read on…
Normally fingers provide the force needed to set a guitar’s strings vibrating, but with some simple electronics we can make a self-strumming guitar that plays itself without any moving parts at all. It is better than magic- its physics! Click on for a full explanation of how it works and a video of the ghost guitar rocking itself out (it really does make some creepy and spooky sounds)…
But what about capacitive power transmission?
How come I’ve never seen a product that uses plates rather than coils? Is capacitive power transfer possible? Practical? Let’s break out a roll of tinfoil and find out!
Last time, we made one-shot pulses using the AVR’s built in hardware timer module. Today we are going to dive deep into the datasheets to see how this technique is able to coax the normally free-running timer into generating a single pulse. Along the way, we will learn about the low level rules that govern the operation of the timer, and use a trick or two to get around those rules. Read on!…