Digitale Weihnachtsbeleuchtung selbst gebaut – Teil 2

Bevor es an die richtige Weihnachtsbeleuchtung geht, machen wir einen Testaufbau um die Hardware auf ihre Funktionalität zu prüfen.

Die Vorbereitung teilt sich in zwei Bereiche auf. Einerseits müssen wir die Software vorbereiten um den Teensy 3.1 Mikroprozessor anzusteuern. Damit der Teensy von Vixen Lights angesteuert werden kann, muss eine entsprechende Software auf das Board geladen werden. Danach muss man am Teensy nichts mehr ändern. Hardwareseitig müssen wir den Adapter mit dem Teensy zusammen löten und das Ganze mit Spannung versorgen.

Digitale Weihnachtsbeleuchtung selbst gebaut Teil 1
Digitale Weihnachtsbeleuchtung selbst gebaut Teil 3

Vorbereitung Hardware

Da all meine Teensy’s bereits zusammen gelötet sind kann ich diesen Schritt nur beschreiben ohne Fotostrecke.
Zuerst lötet man links und rechts von der Längsseite des Teensy (die kleinere der beiden Platinen) je einen 14 Pin-Steg (Schwarzer Steg mit Pins) an. Die Pins schauen dabei gegen unten! Verlötet wird der Steg zuerst auf der Oberseite des Teensy.

Teensy 3.1 verlötet mit dem Adapter OctoWS2811

Teensy 3.1 verlötet mit dem Adapter OctoWS2811. Der USB Stecker darf nicht gegen den schwarzen Adapter schauen sondern muss frei liegen.

 

Danach wird der Teensy auf den OctoWS2811 Adapter aufgesteckt. Die USB Anschlussbuchse vom Teensy muss dabei so ausgerichtet werden, dass man ein USB Kabel einstecken kann. Der kleine Reset Taster befindet sich entsprechend auf der Seite der schwarzen RJ-45 Buchse. Nun wird das ganze umgedreht und auf der Unterseite verlötet.

Rückseite des OctoWS2811

Rückseite des OctoWS2811

 

Wichtig beim löten: Nicht zu lange an einem Pin ‚herum-löten‘, dadurch könnte sich die Elektronik überhitzen. Ich löte immer über das Kreuz und lasse jeweils einen Pin aus. Danach löte ich die restlichen Pins wiederum abwechselnd übers Kreuz.

Vorbereitung Software

Der Teensy 3.1 basiert auf der Architektur von Arduino. Darum wird zur Programmierung die Software von Arduino benötigt. Es muss eine Arduino Version herunter geladen werden welche die Teensyduino Software unterstützt.
Ich entscheide mich für die aktuellste Version Arduino 1.6.5 > Download
Über den ‚Button‘ „Just Download“ lade ich den rund 80 MB grossen Windows Installer herunter. Das Setup lässt sich problemlos unter Windows 10 installieren. Nach erfolgreicher Installation das Programm einmal kurz starten und wieder beenden.

Danach lade ich die Software Teensyduino 1.25 (ca. 52 MB) für den Teensy 3.1 herunter und installiere diese wie in der Anleitung beschrieben. Wichtig, das Installationsprogramm muss mit der Option „Als Administrator ausführen“ gestartet werden. Ansonsten gibt es eine Fehlermeldung! Weitere Infos zum Teensy Loader >>>

Bei der Frage nach den Libraries, welche man installieren möchte, klicke ich einfach auf „All“. So kann man bei Bedarf auch andere Anwendungen mit dem Teensy Mikroprozessor ausprobieren.

Testaufbau

Jetzt können wir den Teensy mittels USB Kabel bereits mit dem Computer verbinden. Dabei sollte Windows den Mikroprozessor automatisch erkennen und den passenden Treiber installieren.

Jetzt kann man die Arduino Software erneut starten und unter „Werkzeuge > Platine > Teensy 3.2 / 3.1“ auswählen. Danach bei „Werkzeuge > Port > COMx“ anwählen. x entspricht dem USB Port an welchem der Teensy erkannt wurde. Im Normalfall steht nur ein COM Port zur Auswahl, welcher gleich der richtige ist.
Achtung: Wird der Teensy an einem anderen Port eingesteckt, muss man den COM Port wieder anpassen.

Softwareseitig sind wir dem ersten Test schon ganz nah.

Wir wählen „Datei > Beispiele > OctoWS2811 > BasicTest“
Es wird nun ein einfaches Programm geladen mit welchem wir unsere LED Pixel testen können. Um gleich zu Beginn alle angeschlossen LED zu testen geben wir dem Programm noch die exakte Anzahl an LED an, welche wir anschliessen werden. Dazu suchst Du die Zeile „const int ledsPerStrip = 120“ Hier kannst Du die Zahl 120 auf die Anzahl deiner LED anpassen. Mehr braucht es nicht.

Nun laden wir dieses Programm auf den Teensy. Dazu klickt man entweder auf den Pfeil der nach Rechts zeigt oder „Sketch > Hochladen“. Nun öffnet sich ein zusätzliches Fenster (der Teensy Loader 1.25 von Teensyduino). Dort steht, man soll auf den Knopf vom Teensyboard drücken.

Arduino Software

Arduino Programmier software V 1.6.3 und rechts davon der Teensy Boot Loader

 

Nachdem man auf den Knopf gedrückt hat, hört man ein paar Töne und die Anzeige im Teensy-Fenster wechselt kurz auf „Reboot“.

Jetzt haben wir den Teensy erfolgreich programmiert. Um das zu ‚beweisen‘ müssen wir jedoch erst noch ein paar GRB LED anschliessen. 🙂

LED anschliessen

Wichtig: Während der Verkabelung und bei jeder Änderung unbedingt immer das USB Kabel vom Teensy und das Netzteil ausstecken. Nimm Dir diese kurze Zeit, denn die WS2811/WS2812 RGB LED sind empfindlich gegen Spannungsschwankungen und  statische Entladungen.

Wichtig 2: Die 5 Volt Spannungsversorgung kann man von beiden Seiten der LED Kette anschliessen. Das Datensignal geht jedoch nur in einer Richtung. Daher muss man beim verbauen der LED Stripes oder Pixel darauf achten wo das Datensignal hinein und wo hinaus geht (Ergänzende Infos unten im Bericht).

Wie werden die LED verkabelt? Die LED benötigen eine 5 Volt Speisung und das Datensignal vom Teensy. Der Minus Pol vom Teensy und vom externen Netzgerät werden miteinander verbunden. Die Plus Leitung hingegen nicht.

Für das Datensignal nimmt man am besten ein altes Netzwerkkabel wo man auf der einen Seite einen Stecker abschneidet. Das Kabelende wird abisoliert und die Drähte werden freigelegt. Für unseren Testaufbau benötigen wir nur zwei Drähte (Stecker und Kabelbelegung sind weiter unten beschrieben). An einem Strang kann man bis zu 1024 LED anschliessen. Insgesamt hat ein OctoWS2811 acht solcher Datenstränge. Total sind daher 8192 LED pro Teensy möglich. Für mehr nimmt man einfach einen weiteren Teensy dazu. Aber Vorsicht, bei so vielen LED gibt es bei der hier beschriebenen Lösung via USB Kabel Probleme mit dem Datendurchsatz.

Teensy WS2811 mit OctoWS2811

Netzteil mit Teensy 3.1 und WS2811 LED Stripe verbinden

 

Funktionstest

Nun verbinden wir vorsichtig den Teensy mit der LED Kette. Am besten nochmals kurz alle Verbindungen überprüfen. Besonders bei den chinesischen LED bedeutet Rot nicht zwingend Plus oder Schwarz Minus! Haben wir die Datenleitung auf der richtigen Seite angeschlossen? Nach dem Check schliessen wir das USB Kabel an den PC. Zuletzt geben wir noch Strom auf das externe Netzteil.

Wenn alles richtig verkabelt wurde beginnen die LED nun zu leuchten und wechseln ihre Farbe.

Sollten die LED jedoch nicht leuchten nicht gleich verzweifeln. Am besten nochmals den ganzen Aufbau von Beginn an überprüfen. Die Versorgungsspannung mit einem Messgerät checken. Erst wenn alle Komponenten stimmen kann die LED Kette leuchten.

So sieht das erste Testergebnis aus.

So sieht das erste Testergebnis aus wenn alles richtig funktioniert.

 

Ein paar Detailinformationen

Das OctoWS2811 Board

Das OctoWS2811 Board enthält zwei RJ45 Buchsen. Jede RJ45 ist mit 4 Datenkanälen verdrahtet. Von der Unterseite betrachtet sind die Kanäle 1 – 4 Links oben, Links unten die Kanäle 5 – 8.

Je RJ45 Buchse können vier Datenleitungen angeschlossen werden.

Je RJ45 Buchse können vier Datenleitungen angeschlossen werden.

 

Für die Verdrahtung zwischen dem Teensy 3.1 und den WS2811/WS2812 RGB LED nimmt man am besten ein Netzwerkkabel das man zerschneidet.

Am einfachsten lässt sich der OctoWS2811 mittels Netzwerkkabel anschliessen.

Am einfachsten lässt sich der OctoWS2811 mittels Netzwerkkabel anschliessen.

 

Je nach verwendetem Netzwerkkabel werden folgende Adernpaare für den entsprechenden Kanal verwendet:

So sind die PINs am RJ45 Kabel belegt

So sind die PINs am RJ45 Kabel belegt. Pro Buchse werden 4 Kanäle übertragen.

 

In Tests habe ich erfolgreich bis zu 50 Meter lange Netzwerkkabel verwendet für die Ansteuerung. Grundsätzlich gilt jedoch, um so kürzer um so besser. Wenn man im Garten eine Beleuchtung ansteuern möchte, werden es schnell einige Meter.

Die Stromversorgung

Achtung, immer gut auf die Polarität achten! Einmal die Verdrahtung verpolen und im schlechtesten Fall geht die gesamte Steuerelektronik kaputt.

Die meisten RGB LED mit dem WS2811 oder WS2812 Digital Chip arbeiten mit 5 Volt. Im chinesischen Shop Aliexpress.com habe ich auch Versionen mit 12 Volt entdeckt. Für die Stromversorgung über lange Distanzen gilt, um so höher die Spannung um so besser. Denn bei 5 Volt fliesst ein beachtlicher Strom. Daraus erfolgen Probleme mit dem Spannungsabfall am Versorgungskabel. Entsprechend grosse Kabelquerschnitte werden benötigt.

Netzteile mit 30-50 Ampere bei 5 Volt kosten so um die 60 – 100 CHF.

Für einen Testaufbau reicht auch ein Netzteil mit ca. 3-4 Ampere Strom.

Für einen Testaufbau reicht auch ein Netzteil mit ca. 3-4 Ampere Strom. Hier ein 30 Ampere Netzteil

 

Dateneingang / Datenausgang – Die verschiedenen LED Typen

Wie bereits erwähnt muss unbedingt die Datenrichtung beachtet werden. Je nach LED Modell sind die Datenanschlüsse unterschiedlich beschriftet. Beim nachfolgenden Modell hat es Pfeile. Das Datensignal muss in der Richtung des Pfeiles geführt werden.

Wichtig: Bei chinesischen Produkten darf man sich niemals auf die Kabelfarben verlassen. Rot muss nicht zwingend Plus bedeuten genau so wenig muss Schwarz unbedingt der Minuspol sein. Hier ist zur Vorsicht geraten. Im Zweifelsfall zuerst im Internet nach Beispielen googeln. Und wenn immer noch Zweifel bestehen nur eine einzige LED Kette anschliessen und nicht gleich eine ganze Serie.

WS2811 / WS2812 LED haben nur drei Anschlüsse pro Seite. Plus 5V / Minus / Data In (und auf der anderen Seite Data Out)

WS2811 / WS2812 LED haben nur drei Anschlüsse pro Seite. Plus 5V / Minus / Data In (und auf der anderen Seite Data Out)

 

Beim folgenden WS2812  – 16 LED Ring steht „Data Input“ und „Data Output“. Hier ist die Richtung klar. Dazu gibt es noch die 5 Volt Spannungsversorgung (Power 5V DC) und der gemeinsame Ground (Power Signal Ground) der für das Datensignal und die Stromversorgung genutzt wird.

Hier sind die Anschlüsse deutlich angeschrieben.

Hier sind die Anschlüsse deutlich angeschrieben.

 

Etwas schwieriger ist es bei folgendem LED Pixel welcher mit dem WS2811 Chip gesteuert wird. Auf der einen Seite des Prints zeigen die Pfeile zur LED (DI = Data Input = Daten Eingang) und auf der anderen Seite (DO = Data Out = Daten Ausgang) von der LED weg. Nun muss man genau schauen welcher Draht an dieser Seite angelötet ist. Folgt man dem Draht, ist die Sache klar. Wiederum ist der Ground (GND) von Stromversorgung und Datensignal gemeinsam. Die +5Volt können nur an einer Seite angeschlossen werden, bei langen Kabellängen jedoch auch von beiden Seiten. Selbst wenn die LED nicht leuchten fliesst immer Strom. Einerseits wegen den IC’s welche die LED steuern und anderseits wegen den Kabelwiderständen. Also unbedingt einen Hauptschalter einplanen mit welchem bei Nichtgebrauch die komplette Speisung unterbrochen wird.

WS2811 LED Pixel - Zu beachten ist wo der Dateneingabe und der Datenausgang. Meistens hat es eine Markierung welche den Eingang anzeigt.

WS2811 LED Pixel – Zu beachten ist wo der Dateneingabe und der Datenausgang. Meistens hat es eine Markierung welche den Eingang anzeigt.

 

Der Testaufbau

Wir haben also ein Netzteil, ein Teensy 3.1 und eine LED Kette. Im hier beschriebenen Testaufbau kann man den Teensy 3.1 entweder über die USB Schnittstelle vom Computer oder durch ein eigenständiges Netzteil mit Micro USB Stecker und 5 Volt speisen. Das LED Programm ist in den Speicher des Teensy geladen, darum wird der Computer zum Betrieb nicht benötigt. Für die programmierbare Weihnachtsbeleuchtung muss jedoch der PC immer laufen und mit dem Teensy 3.1 verbunden sein.

 

So sieht der Testaufbau aus

So sieht der Testaufbau aus

 

Experimentieren

Wer nun Lust hat und sich in der Arduino Programmierung etwas auskennt kann nun bereits verschiedenste Lichtprogramme schreiben. Man kann z.B. die Farbe der LED im Takt der Musik verändern oder signalisieren wenn eine Mail eingetroffen ist. Die Möglichkeiten sind praktisch unbegrenzt.

WS2812 mit 144 LED in Action

WS2812 mit 144 LED in Action

 

Teil 3

Im Teil 3 starten wir dann endlich mit der Weihnachtsbeleuchtungssoftware Vixen Lights 3.2. Letztes Jahr arbeitete ich noch mit der Version 3.1. Darum muss ich mich zuerst wieder ein wenig in die Software einarbeiten. Ich hoffe ich schaffe es noch im Laufe des Oktobers darüber zu schreiben. Parallel dazu muss ich mich langsam um die eigene Anlage kümmern. 🙂

Farbwechsel - WS2812 mit 144 LED und Teensy 3.1

Farbwechsel – WS2812 mit 144 LED und Teensy 3.1

 

So sieht das erste Testergebnis aus.

So sieht das erste Testergebnis aus.