Ein Led-Pixel Controller

…the led-tab

Pssst….“WIP“

LedTab from Mediaman2000 on Vimeo.

Potentieller Einsatzzweck und angestrebte Features:

  • Anzeige von Statusmitteilungen der Homematic (z.B. Temperaturwerte, Hinweise,…)
  • Lauftext
  • Moodlight (wie immer ;-))
  • Wiedergabe von Animationen (Einzelbild-Sequenzen, animierte GIFs)
  • dynamisch erzeugte Bildeffekte wie Spectrum Analyzer und andere Visualisierungen zu Musik
  • nahezu freie Skalierbarkeit – es kommt nur auf die Menge an lpd8806 gestützen LED Stripe an
  • Anordnung als X mal Y oder linear
  • freie Ansteuerung über universelle (leicht verständliche Web-Schnittstelle)
  • Basis: (momentan) Raspberry-Pi und Arduino

Ziel des Projekts:

Keine Konkurrenz zu den vielen Led-Pixel Projekten und Startups in Kickstarter und co, vielmehr Anpassungen an die Belange der Homematic-User.
Komerzielles Produkt: Einzelanfertigung / Elektronik ohne Gehäuse für eigene Skalierung der LEDs

Der Prototyp im Detail:

 

 

 

 

 

Aktuelles Stadium: Alpha
Zeitpunkt bis zu einem salonfähigen Softwarestand: keine Ahnung 🙂
Fragen: erwünscht, Belehrungen über viele andere Produkte ähnlicher Natur am Markt brauche ich allerdings nicht – dessen bin ich mir bewusst.

Bitte bekundet euer persönliches Interesse zu dieser Idee – je mehr Feedback ich bekomme, desto mehr kommt die Motivation das Teil weiter zu entwickeln.

VN:F [1.9.22_1171]
Rating: 4.9/5 (17 votes cast)

Umbau „Toillettenfernseher“

…trotz Timeshift nahtlos im Bad weitergucken

Etwas kryptisch sich jetzt was darunter vorzustellen – ich habe seit Jahren im Bad einen kleinen TFT Monitor (vor kurzem durch das ehemalige Wand-Touchscreen im schwarzen Rahmen ersetzt) um bei laufendem Fernsehprogramm den Luxus zu ermöglichen, dem oder der „mal Austretenden“ das Programm im Bad weitersehen zu  können. Die Aktivierung passierte bisher über den Bewegungsmelder im Bad in Verbindung der Information, dass der Fernseher bzw. Satradio läuft. So wurde einfach der kleine Monitor + einen alten Tschibo Aktivlautsprecher im Bad eingeschaltet (über einen Homematic Funk-Stecker) und ging dann nach einer Totzeit von ca. 15 Minuten wieder aus, wenn sich niemand mehr im Bad befand.
Da der reine Holzrahmen, der ja vorher an der Wand montiert war, nicht gut steht, musste eine Erweiterung des Gehäuses her. Der Lautsprecher sollte allerdings auch mit untergebracht werden, damit der hässliche Plaste-Lautsprecher verschwinden kann.

So wurde es mal wieder Zeit Holz zu kaufen und die Proxon Minikreissäge auszupacken.

Aus Gründen der Faulheit, habe ich diesmal keine Bilder vom Sägen und Zusammenleimen gemacht 😉

Man sieht das Gehäuse im grob zusammengestecktem Zustand:

Wie man sieht befinden sich links und rechts Nuten, in die später die Lade mit der Elektronik eingeschoben wird.

Schön sauber anzeichnen und einpassen…
Verstärkerplatine mit Lautstärkeregler, Bass-Boost Schalter und Power-LED.

Chinchbuchsen stammen aus einem alten DVD Player

Ein 4 Kanal Homematicaktor, der später separat Monitor, Verstärker und den Powertaster am Monitor steuern kann. Der 4. Kanal wird vielleicht später noch mit einer LED Beleuchtung belegt.

Die DC-Buchse findet auch Ihren Platz, eingepasst mit Dremel und Schlüsselfeile…

Alles soweit fertig und schonmal zusammengeschoben.

Bauphase soweit abeschlossen.
Was nicht zu sehen war: der Lautsprecher ist innen im oberen Teil des Gehäuses auf 2 an die Grundplatte geleimte Klötzchen geschraubt worden. Das Kabel wurde nach hinten (hinter dem schwarzen Monitorgehäuse) weggeführt in die Schublade. Der Klang ist mindestens genäuso gut wie vorher im Plastikgehäuse.

Nun steht er an seiner Wirkungsstätte…

Bild und Ton liefert die Dreambox aus dem Wohnzimmer umgeleitet über meinen Sourround Verstärker, der auch Videosignale beherrscht. So kann man den Monitor bzw. den Lautsprecher sogar für die Tonumleitung vom AppleTV nutzen, welches über HDMI und SPDIF angeschlossen ist.

Zum Schluss gabs noch eine Beizung und Klarlackung des Holzes in einem annehmbaren Farbton:

Das war zwar ein kleines Projekt aber immerhin passiert hier mal wieder was 😉

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)

Homematic Klapp-Statusanzeige

…absolut überflüssig aber irgendwie lustig

Und vorallem habe ich diesmal einen Anwendungszweck: mein Schild am Büro ob jemand da ist oder unterwegs 🙂

Aber vorher muss es zusammengebaut werden:

Tadaa…

Insgesamt aufzulötende Bauteile: 2
Anzuschließende Kabel: 4

Taster mit integrierter LED…

Ob das der gleiche Motor ist wie beispielsweise in den Heizungsstellern?

Mechanik zusammenbauen…

Die üblichen kleinen Torx-Schrauben kommen zum Einsatz

Das Klappschild-Plättchen

Auf an die Elektronik…

Taster und Quarz

Transreceiver

Kabel der Batteriehalterung einfädeln

Kabel Motor…

Fädel, fädel – Antenne am Rand oben

Super spektakulärer Zusammenbau der nun auch schon abgeschlossen ist…
Die Technik kommt in eines der neu designten Halbschalengehäuse zum zusammenschieben, wie es auch in einer kleineren Bauweise beim Webradio zum Einsatz gekommen ist.

Yeaahhh

Ohhhh…

Abschließend noch ein kurzes Video in Aktion:

Das Einbinden in der Homematic zeige ich diesmal nicht – ist genauso wie bei einem normalen Schaltaktor. Als Geräteoption besteht die Möglichkeit die interne LED zu aktivieren oder eben nicht. Diese leuchtet dann im Zustand „Ein“. Ansonsten gibt es nicht viel zu berichten. Eine Möglichkeit den Motor anders anzusteuern bietet die Firmware und Homematic WEB UI nicht (schade aber wie sollte es anders sein – zweckentfremden nicht erwünscht).

Fragen dürfen gerne gestellt werden – wenn mein neues Schild fertig ist gibts ein Foto 😉

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)

Homematic LED-Statusanzeige

 … lange drauf gewartet aber leider etwas mager von der Funktion

Aufgrund dessen, dass einer meiner Kunden so ein Teil haben wollte und die Lieferzeiten so lange sind, habe ich 2 Bausätze bestellt und Ihn heute zusammengebaut.

Im Lieferumfang – viele Kleinteile aber wenig notwendige und zu bestückende Bauteile. Manchmal stellt sich die Frage, warum die wenigen Bauteile nicht auch gleich vom ELV bestückt werden…

Von der Platine müssen diese, mit einer Sollbruchstelle befestigten Anstandhalter abgetrennt werden. Die Grate habe ich dann mit einer Nagelfeile abgeschliffen…

Die Abstandshalter werden dann in die beiden vorgesehen Schlitze in der LED Maske eingesteckt.

Die Abstandshalter halten später die Diffusorfolie in Position und ergeben die Kammer für das Beschriftungsblättchen was der Anwender später zur Beschriftung einlegen kann. (was heißt kann, ohne macht das Teil vielleicht nur noch als Binäruhr Sinn ;-))

Nun geht es ans Bestücken der überschaubaren Anzahl an Bauteilen.

Zuerst die Kondensatoren…

Dann der Transreceiver, bei dem zuerst die Pinleiste eingelötet werden muss…

Auf der Oberseite wird nun die Transreceiverplatine augesteckt und angelötet…

Jetzt fehlt nun noch die Stromversorgungsbuchse.

Sitzt…

Das war der ganze „Zusammenbau“ der Platine. Nun müssen nur noch die ganzen Gehäuseteile zusammengefriemelt werden.

Im Deckel des Gehäuses werden nun links und rechts die Diffusorfolien eingelegt.
Darauf wird dann die LED-Maske gelegt, die Abstandshalter halten nun die Diffusorfolien in Position.

Darauf wird die Platine eingelegt und mit Hilfe der Kunststoffzapfen arretiert. Die Antenne des Transreceivers verschwindet hinter den Stegen an der Innenseite links oben. Die Platine wird nun noch an den vorgesehenen Stellen mit den kleinen beigelegten Torx Schrauben am Gehäuse befestigt.

Nun werden noch die Kunststoffknöpfe auf die Taster gelegt, dann kann die Untere Hälfte des Gehäuses aufgesezt und verschraubt werden.

So sollte das dann von Oben ausschauen…

Jetzt noch die beiden Standfüsse reinklicken und den Stromstecker einstecken und das Kabel in die Kerbe (der verstümmelten Batteriehalterungen ^^) als Schlaufe einstecken.

Deckel drauf und das wars…

Selbsttest nach Einstecken der Stromversorgung…
grün-rot-gelb aus… Bereit zum anlernen.

Ab ins CCU Interface und den Anlernmodus aktiviert…

Nun noch hinten and er Anzeige auf Pfeil hoch / learn drücken und warten bis die LED 1 grün blinkt und dann schneller blinkt bis sie ausgeht und schon sollte die Anzeige im Geräte-Posteingang erscheinen…

Schnell ein Testprogramm zusammenklicken: Öffnungskontakt am Oberlicht – Status übermitteln; Oberlicht auf LED1 – rot, Oberlicht zu auf LED1 – grün

Und fertig und klappt..

Fazit: ich werd das Teil vermutlich nicht brauchen und nun irgendwo zusammengabaut an die Frau oder den Mann bringen 😉
Für mich wäre sowas erst interessant wenn es aus einem Oleddisplay bestehen würde, wo die Beschriftungen „draufstehen“ und evtl. noch mehr Möglichkeiten durch Anzeige von grafischen Elementen eröffnet werden. Für das was alleine der Bausatz kostet ist die Ausstattung mehr als Mager und das finde ich sehr Schade.

Fragen und Anregungen willkommen …

Achja hier noch ein kleines Beispiel wenn man „Scripten“ möchte:

var x = dom.GetObject("BidCos-RF.JEQXXXXXX:1.ALL_LEDS").State(255);

Diese Zeile schaltet die ersten 4 LEDs auf gelb… Sobald ich den Zyklus der Binärverschaltung raus habe teile ich das hier mit…

Hier noch ein Einfacher Zähler zum rumtesten:

integer statcounter = dom.GetObject("statcounter");
!var f = statcounter.State(0);
var f = statcounter.State(statcounter.State() + 3);

var x = dom.GetObject("BidCos-RF.JEQXXXXXXX:1.ALL_LEDS").State(statcounter.State().ToInteger());
WriteLine(statcounter.State().ToInteger());

!Bitte die Systemvariable statcounter anlegen...

Kleines Beispiel für das aufleuchten lassen von jeweils einer LED:

Im Prinzip geht es hier um das „kleine 1×1“ 😉
1 rot = 1
2 rot = 4 (1 * 4)
3 rot = 16 (4 * 4)
4 rot = 64 (16 * 4)
usw.

1 grün = 2
2 grün = 8 (2 * 4)
3 grün = 32 (8 * 4)
4 grün = 128 (32 * 4)
usw.

1 gelb = 3
2 gelb = 12 (3 * 4)
3 gelb = 48 (12 * 4)
4 gelb = 192 (48 * 4)
usw.

Auf diese weise lassen sich alle anzeigbaren Kombinationen auf der Statusanzeige darstellen. Auch der spasseshalber erwähnten Binäruhr stünde nichts im Wege 😛
Ich denke gerade über den Rechenfaktor für eine Balkenanzeige nach… Bestimmt keine hohe Wissenschaft, ich poste es trotzdem hier 😉

Noch ein paar Tests:

integer statcounter = dom.GetObject("statcounter");
!var f = statcounter.State(2);
var f = statcounter.State(statcounter.State() * 4);

var x = dom.GetObject("BidCos-RF.JEQXXXXXX:1.ALL_LEDS").State(statcounter.State().ToInteger());
WriteLine(statcounter.State().ToInteger());

!Bitte die Systemvariable statcounter anlegen und auf 2 initialisieren...

VN:F [1.9.22_1171]
Rating: 5.0/5 (4 votes cast)