Welcome to the Blinkenlight Experiments. Here I document experiments that I did with the Blinkenlight shield for Arduino. The experiments range from simple beginner level light effects to completely unexpected surprises. The goal of my experiments is always to learn something about science and/or technology.
No matter if you are a beginner or advanced you may want to have a look at the Basic Sketches experiments. The basic sketches investigate what happens if all pins are “high Z“, “pulled up“, “low” and “high“. Unless you know the Arduino in depth there probably will be something interesting to learn for you.
If you are interested in visual effects you may want to start with the Basic Effects section. The first effect is a bouncing ball demo. Then there is the well known Larson scanner aka Knight Rider effect. After some more scanning effects I will go into persistence of vision effects.
Although these effects are simple from a technical point of view they already deliver visually stunning results. I then throw in some generator that will directly generate Arduino POV sketches from pictures. The basic effects section is finished with some simple VU meter and a helipad experiment.
There is an intermezzo sketches that fit nowhere else. They are to investigate one of the most basic aspects of every computer – counting. As it turns out this topic gives some unexpected insights.
In the next set of experiments I will investigate the issue flicker and go on to remove it. There are several different solutions and my experiments are by no means complete. My first solution is to provide a sketch generator written in Python to provide a flicker free version of a glowing bounce. In the next step I get rid of Python by pushing all of the computations into the macro processor and the compiler to achieve a flicker free Knight Rider effect. Just to investigate the limits of this technique I push it one more step further.
If you are more technically inclined then definitely you want to check out the Measurements experiments. The Blinkenlight shield is used to establish a low fidelity camera. Only 20 pixels but think about it for a second — LEDs are supposed to be light emitters. The surprise is not that this is a very good camera but that it detects anything at all.
The shield will also help to investigate Arduino crystal deviations. The unexpected result is that my simple hardware setup can detect crystal deviations. It even works for deviations below 1ppm although this seems quite impossible at first glance. Give it some thought how you would even try with two Arduinos and one Blinkenlight shield before you look up my solution. Actually large deviations are harder to detect but I fix this with an improved setup.
With some cheap externals part I will then push it so far as to use the Blinkenlight shield to monitor the power grid. That is THE electrical power grid.
The experiments were designed in succession. So some of them might be slightly easier to follow if you read them “front to back”. However I took some care that most of them can be understood without reading the preceding experiments.
If you like my experiments recommend them to a friend. If you do not like my experiments recommend them to a foe.
Thanks, looking to do an animated led-based art installation and this is very useful.
Great. Tell me details / post a link once you are finished. I love to hear how others benefit from my work 🙂
Are there any plans to sell them in europe as well as USA?
This is a very good question indeed. Selling them in Europe is much more complicated than in the US. The reason being RoHS and WEEE regulations. Since I am making almost no money out of the shields the impact of these regulations would imply that I would either lose money (by complying), have ridiculous hight prices (by complying), risk to lose a lot of money (by not complying) or that I need a distributor who is willing to sell them and leave some money for me. Right now this implies also that I will not sell in Europe. I will also not offer to import a batch of them because it would have the same regulatory implications. My only recommendation is to team up with some other hackers and order 5 at a time. Thus you get them at 5% lower price and can split the shipping costs.
Do you want to mount this on a rotation stage and make these 20 little buggers into awesome POV texts and images? Would be more consistent if you have another arduino control the rotation speed since you used up all the pins.
Well, I would not really need another Arduino since I own an ISP. I could switch to external clock freeing one pin. Or I could switch to RC clock giving me one more pin in addition for a total of two pins. However before I will go into this direction I would rather create a dedicated POV from scratch. It would be definitely cheaper/ easier to mount to create a dedicated POV board.
While we are at it: do you know of a reasonable good way for power transmission to the rotating board? I am always wondering what would be a really good solution. All the solutions I found on the internet so far do not look really convincing or are not really easy to build.
The best idea for simple, DIY rotational power transfer is using a headphone jack. These are very cheap/salvageable, reasonably low friction and last surprisingly well. You could also use laptop-style power adapters, but I have found these to generally be much higher friction.
The other way I have done it is using a small metal bearing set inside a larger bearing, then soldering leads to both sides. This provides a very long-lasting solution, but can take considerable effort to find a large enough bearing to make the outer conductor.
just my 2 cents
I think I will try the bearing approach. This sounds definitely better.
I would love to see your finished rotating power transfer with bearings, I understand the concept but making one from scratch seems a bit daunting yet.
I did some measurements with old bearings from my inlines skates. They are very lousy as connectors. Probably I need to get hold of unlubricated bearings.
This is what you may need for your POV project:
Boah – yeah. Now that I have the proper search term Google delivers lots of options. Thanks for this great hint 🙂
Hey this is a really great project!
Do you have the Eagle files or any other format available? I live in South Africa and shipping here is painful and just not worth it/
I decided to not publish the CAD files to avoid copyright / licensing complications. If you want to copy my shield you have to layout it on your own. Sorry for that. In the hardware section you find the schematics and the layout. If you are etching your own boards the graphics published there are sufficient to do so. You might want to edit them slightly with the GIMP or any other graphics program. Please notice that you must neither copy my logo nor the RC logo.
So in the case of manually copying the board design, are there any right that you still hold, or can I essentially use it for any purpose I see fit?
My license conditions are stated here: about. So the board is released under Creative Commons NC-BY-SA 3.0.
The idea behind this licensing is that I do not want any commercial use without my consent.
What this implies in your legislation is something that I can not answer. My understanding is that as long as you are not using it for commercial purposes and refer to my original work and release it under CC-BY-NC-SA 3.0 you are always OK. If you do not want to follow these terms I can not tell you what this implies for you. If you just do some private copies nobody will care anyway.
If you finish your copies send pictures. If you come up with cool experiments on your own please share!
Rugged Circuits says to go to the product page or assembly instructions; I’m sorry I can’t find them. Please help me. Thanks’ Dick
If you purchased the shield there is nothing to assemble. You can just plug it into your Arduino and that’s it. If you purchased the kit then you need to assemble it of course. I will add a page on assembling the kit ASAP. Click here to learn about assembling the kit.
Ich habe mir ein Shield von Franzis gekauft und bin hoch zufrieden damit. Habe aus Spaß mal den Sketch fuer die Binaer Uhr vom Lillypad installiert (www.arduinoevilgenius.com). Sie funktioniert genial. Pin 18 auf +5V stellt die Uhr. Viel Spaß damit…
Das freut mich. Dumme Frage meinerseits: woher hast Du das Shield? Bei Amazon steht das Shield immer noch auf nicht lieferbar. Meine Autorenexemplare habe ich auch noch nicht bekommen. Du hast folglich eins der allerersten abgegriffen. Aber wo?
Ich habe es bei http://www.reichelt.de gekauft. Ist gleich um die Ecke von mir.
Wie praktisch 🙂 Dann bin ich ja mal gespannt wann ich meine Exemplare bekomme.
I have an Arduino Leonardo (New) and Blinkenlight Shield (New too) and a IMAC
I try all the basic sketches and some basic effects but the first 4 LEDs (Over Reset)
doesn’t works. What’s wrong ?
Thank you for help
I moved your comment from the privacy/data protection page to the experiments page because I think it fits better here.
With regard to your question: did you try the all high experiment as well? If so: does this issue show up with it as well? If the Blinkenlight Shield is positioned such that you can read the “Blinkenlight” from left to right, do you talk about the 4 leftmost LEDs?
Does it make any difference if you wiggle the shield? If you have a voltage meter: which voltage can you measure at the corresponding pins? Which at the LEDs?
Hi. Nice board, got mine from a local book shop in Germany (Franzis package).
First simple blinken tests show that LEDs 14 to 19 do not light up on an Mega2560 board. That would be the pins A0 to A5. Is that normal on that board that these pins are not useable as digitalout?
As I have no Mega2560 board I can not test this. However looking at the pin mapping I would expect that this is normal. I would also expect that you can still use all LEDs of the shield. You would have to adapt the sketches slightly though. Have a look here for the details: http://www.arduino.cc/en/Tutorial/AnalogInputPins.
Hi, yes, figured that out a while later. Remapped pins 14 to 19 to A0 to A5 and all is fine now. Thanks again for the nice piece of HW and the examples.
Hi, I don’t recognize this well on the picture: does this blinkenlight shield cover all the analog inputs or can you still easily connect a pin? I would like to use this LED bar as a voltmeter (e.g. 10V -> all LEDs on, 5V -> half of them on, 0V -> all dark). Would that be possible?
You can not measure 10V with an Arduino without some conversion in between. With regard to the layout you might want to have a look at the layout and the schematics.
Since the LEDs put additional load on the analog pins they can not be easily used for voltage measurement. Either you need an opamp to decouple the load or you need to cut one of the traces to on of the analog pins. Or you desolder one of the analog pins from the shield which is easy and easy to revert.
How do you make a regualal Led Flash Light that can be adapted a chase sequence ?
You need to be more specific. My chaser experiments cover the software side of creating chasers. What exactly are you missing?
Where would I be able to buy a sheild like this in Australia?
Right now the shield is distributed by Franzis (Germany). They have exclusive rights for selling it. If you can find anything from “Franzis Verlag” in Australia then ask them if they can order one. Otherwise I have no idea where you could get one. Of course you could order one from Germany (Amazon) but shipping might be expensive. Amazon charges 7 Euro plus 4 Euro / kg for shipping from Germany to Australia.
I found a Reseller in Eutin, Germany who sells via E*** and also would ship to Australia. But You must contact the seller for the costs. Here the Item Number: 361346768351
Just a big THANKs to you, Udo! When starting to tinker with Arduinos, your experiments where the first code examples I studied. And I understood nothing at the beginning. I could not believe how little code can create such stunning effects.
And now arround 2 years later I am doing things like this with leds myself:
Cool stuff. Did you also publish your code somewhere?
Everything based on the Simplex/Perlin noise functions I will publish within the next days.
Beside that everything else I showed in the videos is somewhere in here already:
For now the code for some noise examples is available here:
Hi, I am wondering if this would be able to control 150-300 lights, such that a dot would crawl from one end to the other?
Yes, you can control 200-300 lights. But not with this approach. There are not enough IO lines. For this amount of lights there exist dedicated driver chips (aka. multiplexers).
Hallo Herr Klein, ich nutzen einen Uno und kann Sketches uploaden. Sobald ich den Blinkenlight aufgesetzt haben, funktionieren die Uploads nicht mehr. Woran kann das liegen?
Möglicherweise ist bei den neueren Unos der Ausgang des USB-serielle Schnittstellenwandlers nicht mehr stark genug. Aus diesem Grund gibt es eine Steckbrücke die man für die Dauer der Programmierung entfernen kann. Alternativ kann man auch mit einem ISP (externes Programmiergerät programmieren). Das in der Regel sowieso besser als die billige Lösung mit dem Bootloader.
I want to make a project wherein when motion is detected in pir the lights turn on and theses lights continue to stay on until i switch it off using my android phone…can u please help me with it..
Of course I will be happy to help. However take notice that this will not be part of my open source efforts. What you want is something called “consulting”. As a consequence I will charge it at a professional rate. If you want consulting please contact me by email.