Hello and welcome to Lol Shield Theatre – Behind the Scenes!
This is a project that I put together after wondering what I could do with the blinky, shiny, wonderful Lol Shield. Who couldn’t love an Arduino covered in tons of leds? (Rhetorical question, the answer is people who hate fun.)
The Lol Shield Theatre is a combination of software and hardware, a web site and an arduino Lol Shield.
If you’d like to jump right into the fun without lots of boring exposition, head straight to: https://falldeaf.com/lolshield/.
Otherwise, let me take you through the steps that made this project possible. First I built a web app that allows you to create and view animations using 9 x 14 pixels, the same amount of pixels on the Lol Shield. The interface is pretty much all javascript, no crazy flash and Jquery was an enormous help in this project. The site builds an xml file that is stored in a database and can be reached through a rest API. There’s two feeds, one for humans and one that is read by my Lol Shield code.
This site looks a bit (exactly) like this:
Next, I wrote two pieces of software, one is an Arduino sketch that uses the Lol Shield library, downloadable here. The other is a python program that communicates with my site and then to the Arduino through the usb or serial port.
Here is all my code: LolShieldtheatreProject-update
The Arduino sketch just needs to be uploaded to any shield compatible Arduino. Check out Lady Ada’s lovely tutorial if the previous sentence frightened or confused you.
The python program connects to the Lol Shield Theatre site and downloads animations using an API with the following options:
API: https://falldeaf.com/lolshield/robot_xml.php?
- feed= ( pop, new, all, user ) – for the most popular, the newest, all/random animations or animations from a specific author, respectively
- user= ( ‘author name here’ ) – Set the feed to pull from a specific author (you?); feed must be set to user
- items= ( int ) – The maximum number of animations to pull down
It’s run from the command line and needs three arguments, or use -h to get help:
- -u : This is the url of the xml feed that has the animations. (https://falldeaf.com/lolshield/robot_xml.php is the default)
- -t : The amount of time to wait before updating from the next with new animations, it will default to 30 minutes
- -d : This the device to try and use i.e. ‘/dev/ttyUSB0’
Have a look at the shield in action:
I felt a bit like George Washington Carver on this project. He worked hard to invent uses for the peanut in an attempt to make them more valuable; which helped poor southern farmers. Lady Ada, Sparkfun and Jimmie P Rodgers aren’t poor *or* farmers, they’re all cool people. And while, just like the peanut, the Lol Shield is awesome on it’s own merits, hopefully I’ve just made it more valuable! :)
And just to make sure I overdo it with media, here’s a link to the overlong video showing how it all works! :)
Update: Holy cow I made it on Lady Ada’s blog! http://www.adafruit.com/blog/2011/03/02/the-lol-shield-theatre/
Check out these cool animations that her readers have made :)
- Cannibal – by Flickerfly
- Fireworks Animation – by Fireworks
- SMD LOL – by Solarbotics
Update 2: Jimmie Rodgers got a chance to see my project, neat! Even cooler he had a pro-tip for me to fix my LED ghosting problem. “Oh, and if you want to get rid of the ghosting LEDs, just cut out either the resistor or LED connected to pin13 on your Duemilanove Arduino.”
References
- Lol Shield Theatre, hosted here at falldeaf.com : https://falldeaf.com/lolshield/
- Pagination Code : http://www.strangerstudios.com/sandbox/pagination/diggstyle.php
- Icons on Lolshield pages : http://www.iconfinder.com/
- The Lol shield : http://jimmieprodgers.com/kits/lolshield/
π