Dienstag, 9. Oktober 2012

Bug in BlinkM

Ab und zu vergessen die BlinkM's Ihre Adresse oder haben eine Adresse über 50. Hier die Lösung von folgender Seite:

You should be able to just change the hfuse and that's it. I tend to do everything ("nuke it from orbit, it's the only way to be sure") :-)
To make adjust the BOD-level by just changing the lfuse, the avrdude line becomes: 
avrdude -P usb -c avrispmkII -p attinyXX -v -U hfuse:w:0xDD:m
That sets the BOD to 2.7V. I think for BlinkM going any lower wouldn't be of much use since the lowest voltage the Red LED in BlinkM needs to turn on is around 2.5V (the Blue and Green need around 3.4V & 3.0V respectively) BlinkMs are designed to run at 5V (i.e. the colors are most balanced around that voltage)
The way the BOD works is you want it's detection level to be as high as possible so it triggers (and thus puts the chip in reset) as soon as the chip's power source gets too low. In theory, having no BOD enabled is fine, but as we're seeing with the current run of these ATtiny chips, we want to put the chip in reset as soon as possible to avoid the EEPROM getting scrambled.

Freitag, 5. Oktober 2012

Stairlight 1.0

Es hat ein wenig gedauert, aber endich kann ich sozusagen Vollzug melden ;) 

Das erste Stairlight war wirklich nur ein Prototyp, da an diesem ja nur einfache RGB LED angeschlossen waren die den Effekt einfach nicht zur Geltung bringen konnten.

Um jetzt mehr leistung schalten zu können, habe ich mir als erstes ein entsprechendes Lichtband bei der Bucht besorgt:

http://www.ebay.de/itm/5m-RGB-5050-LED-SMD-Strip-Streif-Controller-Trafo-DC12V-Neu-/270962831006

Das Netzteil sollte man vielleicht gleich mitbestellen, da so ein Strip doch schon einiges an Power braucht. Nun geht es an die Schaltungen, ihr ahnt es sicher schon. Alle Slaves müssen durch eine Version ersetzt werden die höhere Ströme schalten kann, in unserem Fall 12V mit max. 0.5A.

Da diese SMD RGB LED's wirklich sehr hell strahlen (bei 60 Leds/m) , hatte ich mich entschieden, nur 2 Segmente a 5cm für eine Stufe zu benutzen. Ich hatte mir auch schon eine Schaltung ausgesucht:

http://protofusion.org/wordpress/2011/06/tinyrgb-an-i2c-led-driver/

Problem an dieser Schaltung war aber, das diese nur mit 5V betrieben werden kann, da die LED und der Attiny85 an der gleichen Versorgungsspannung hingen.Hier ein Video von meinem ersten Entwurf:



Also selber an das virtuelle Reissbrett (DIPTrace) gesetzt und eine eigene Schaltung entworfen:
https://dl.dropbox.com/u/46359709/Stairlight_2_0_gerber.zip
https://dl.dropbox.com/u/46359709/StairlightDipTrace.zip


Gerber ansicht ATTiny Slave


Klar man kann an der Schaltung noch einiges verbessern, besonders die Größe der leiterplatte gefällt mir nicht. Aber für den 2. Versuch ist es ganz ordentlich geworden. Die Schaltung wurde so entworfen, das an dem I2C Anschluss in folgender Reihenfolge:


 [+12V, +5V, SDA, SCL, GND]

Der zweite Anschluss für den RGB LED Anschluss, sollte auch klar sein:

[+12V, Rot, Grün Blau ]

Ich habe dann an dem 10 adrigen kabel einfach noch zusätzlich die Spannung der 12V Leitung angeschlossen. Der Arduino (UNO) mit dem Stairlight Master Programm wird direkt über diese 12 betrieben und der Spannungsteiler auf dem UNO stellt die 5V zur verfügung, da an dieser Leitung nur 14 Attinys sitzen, die maximal 20-30mA brauchen kann man die Spannungsversorgung dem wackeren UNO überlassen.