This is the schematic for my Arduino compatible board with integrated Blinkenlights. The “official” name for this board is the “Blinkenlighty”. The name was conceived after some proposal in the German Arduino Forum where forum member “Addi” proposed to call this board “Lighty”.
As you can see from the schematic the board is electrically equivalent to an Arduino with plugged in Blinkenlight Shield. If you want to “unplug” it you can just disconnect “SV2” by removing the shunt.
Notice that this schematic has some differences to the newer Arduino versions. I introduced them on purpose.
- The Blinkenlighty has integrated Blinkenlights – what else 😉
- The Blinkenlighty has a crystal instead of a resonator. Thus its clock is ~100 times more precise than a resonator based Arduino (e.g. the Uno).
- The Blinkenlighty has a FTDI USB – serial converter. This makes it more expensive to manufacture but I consider this a proven solution. The USB solution for the newer Arduinos seems motivated by cost cutting instead of providing more value. If you need USB support go for a board with “real” USB support, e.g. the Leonardo.
- The Blinkenlighty will not automatically select the supply voltage. Again this was on purpose. It allows to very easily measure current consumption. It also allows to bypass any internal regulator if necessary.
- The Blinkenlighty has two additional analog pins A6 and A7 which are easily accessible. However I did not put connectors on them on purpose. Whoever needs the two additional pins can solder to them whatever connector is desired.
There are some other details which you can only see from the layout. Most notable I moved the reset switch in such a way that it can be reached much easier if a shield is mounted.
Hi Udo – I like the Blinkenlight shield (and Blinkenlighty board), as well as your other projects. You have a very nice site.
I have some questions about total current in the Blinkelight(y) projects. Since you are driving the LEDs in a common cathode fashion (i.e. sourcing current from the ATmega to the LEDs which are connected to GND) the ATmega must provide all the current. In your description you made the following comments:
– The per LEDs must be limited as to not overdrive the LEDs.
– The current to the LEDs must be limited as to not overload the Arduino.
– The current to the LEDs shall be as high as possible in order to get good brightness.
These are 3 very important design parameters!
Based on +5Vcc, 1k resistors and assuming Vf = ~2V, it looks like each LED consumes about 3mA. Total current would then be 60mA. Is this correct?
I’m also curious if you could tell me which LED you used (or at least the specifications)? What is the actual Vf and what kind of mcd output do you get from the 3mA of drive current?
Finally, if I wanted to drive more current per LED (let’s say 15mA) by changing the resistor values to 200 ohms, then 20 LEDs would exceed the maximum rated current of the ATmega (which is only 200mA MAX). If I drove the LEDs in common-anode fashion, where the ATmega GPIOs are only sinking 15mA per pin (which is within their specifications) would the sourcing current come straight from Vcc and not have to go through the ATmega … in which case would I be safe driving 20 LEDs with higher current?
3 mA per LED was the design goal. I measured slightly less though https://blog.blinkenlight.net/experiments/measurements/supply-voltage-measurement/. With regard to the LEDs I told the manufacturer to use “high efficient orange” LEDs. Originally I designed with Kingbright APL3015SECK-F01 but they were substituted by something similar but cheaper (PC-1206YOXK-600H08).
With regard to sinking 300 mA I am pretty sure that this exceeds the SOA of the controller. As always the truth is supposed to be in the datasheet: http://www.atmel.com/Images/doc8161.pdf. Have a look into chapter 28 Electrical Characteristics. According to the datasheet GND must not sink more that 200 mA.
Hi Udo – thanks for your quick reply. I will check the data sheets for both ATmega and LEDs.