Kommentar von mir: Das ist ziemlich abgedrehter Code, die Pixelparameter sind in einem Pseudo-Zufallszahlengenerator gespeichert.
Die Lösung vom letzten Jahr war ja schon cool (Fadingrichtung im niederwertigsten Rot-Bit ablegen und mit 23Bit Rest-Farbtiefe klarkommen), aber diese Implementierung braucht praktisch gar keinen extra RAM (und sieht noch besser und weicher aus)...
Fazit: Plug&Play Code und ein ziemlich innovatives Konzept dahinter. Sehenswert. Lesenswert.
"Colored Twinkling Holiday Lights" sollte mein Thema für dieses Wochenende werden! Endlich sind die 150 LEDs auf 5 m (keine falschen Assoziationen, aus Schwalmstadt) eingetroffen, die Netzteile liegen bereit, ich bin gespannt, was mein Nano dazu sagt.
Also danke für den Link, ich werde mal die Kreativsprache cut&paste probieren
Eigentlich wollte ich APA102, nun sind es wegen Preis und Beschaffbarkeit WS2812B. DemoReel100 funktioniert bis auf das Muster sinelon, da werden LEDs ausgelassen. Leider habe ich mich noch nicht intensiv damit auseinandersetzen können, aber bisher fehlt mir noch die richtige "Schraube", damit es funktioniert. Solltest Du einen Tipp aus dem Ärmel schütteln können, wäre ich natürlich nicht böse. Denn ich fürchte, ich müßte auch "Colored Twinkling Holiday Lights" entsprechend anpassen. Sonst muß der teensy einspringen, aber den würde ich gerne noch zum "Spielen" mit 32 Bit nutzen.
DemoReel100 funktioniert bis auf das Muster sinelon, da werden LEDs ausgelassen.
Solltest Du einen Tipp aus dem Ärmel schütteln können, wäre ich natürlich nicht böse.
Ja, gern: Da wird bei höheren LED Zahlen die (sauschnelle) 8 Bit Sinus Approximaltion sichtbar. Fällt bei einer Installation nicht auf, solange man sich nicht konkret auf eine einzelne LED konzentriert.
Kannst es ja auf das 16 bittige sin16() umschreiben. Braucht dann aber ein bissl mehr RAM für die Lookup Tabelle.
Denn ich fürchte, ich müßte auch "Colored Twinkling Holiday Lights" entsprechend anpassen.
Nur Pinnummer, NUM_LEDS und LED Typ, das wars. Danach noch Parameter und Paletten nach Deinem Geschmack. Oder auch nicht. Aber man kann die Animation weiträumig individualisieren, wenn man mag.
Marks Code benutzt übrigens keine einzige (!) Sinusfunktion.
Läuft jetzt auf einem ProMini mit einem Netzteil 5V/4A einseitig eingespeist.
Wer hat delay( 3000 ); //safety startup delay da eingebaut? Das war eine gefühlte Ewigkeit, bis es losging und ich schaute schon nach Rauchwolken!
Ja, so stelle ich mir amerikanische Weihnachten vor! Meinen weihnachtlichen Geschnack trifft es eher nicht.
Aber für Sylvester, Geburtstag und Party ist das echt klasse! Solltest Du also Kontakt zu Mark Kriegsman haben, so richte ihm bitte meinen allerherzlichsten Dank für die Bereitstellung und meine Bewunderung für die Kreativität aus!
Ich denke, wir machen eine Fensterdeko daraus. Meine Oszi-Fotos durftest Du ja schon bewundern, ob ich die LEDs vernünftig "auf Platte" gebannt bekomme, muß ich mal probieren.
Solltest Du ein schönes cut&paste Beispiel haben, das meinen weihnachtlichen Geschmack - wenig Farbe, wenig Blinky Blinky, mehr fließend - trifft, wäre ich nicht abgeneigt, es zu testen. Aber denk dran, daß ich nächstes Jahr dann anfange, Fragen dazu zu stellen!
Wer hat delay( 3000 ); //safety startup delay da eingebaut? Das war eine gefühlte Ewigkeit, bis es losging und ich schaute schon nach Rauchwolken!
Hab ich auch noch nie verstanden, wozu das gut sein soll. Vielleicht für Leute mit mistigen Spannungsversorgungen - um sicherzustellen, dass die LEDs keine Daten bekommen, bevor die korrekte Betriebsspannung anliegt.
Ich selbst habe das immer rausgeschmissen.
Solltest Du also Kontakt zu Mark Kriegsman haben, so richte ihm bitte meinen allerherzlichsten Dank für die Bereitstellung und meine Bewunderung für die Kreativität aus!
Done.
Solltest Du ein schönes cut&paste Beispiel haben, das meinen weihnachtlichen Geschmack - wenig Farbe, wenig Blinky Blinky, mehr fließend - trifft, wäre ich nicht abgeneigt, es zu testen.
die Farbbreite einschränken. Wenn Du dort einen Offset addierst, kannst Du die (HSV) Grundfarbe einstellen, falls Dir mein rot/orange/gelb nicht gefällt.
Da hast Du was losgetreten! Eigentlich sollte die LED-Streifenspule unter dem Tannenbaum liegen, damit für Weihnachten 2016 was damit gemacht wird. Dann habe ich die Funktion getestet, dann kam "Colored Twinkling Holiday Lights". Drei "Uiiihs" später stand fest, daß der Streifen keine Chance hat, aufgewickelt zu werden. "Wieso soll ich solange warten?"
Du wolltest ein Foto, ich habe eins geknipst:
Wer die Animation gesehen hat, weiß, daß es sehr schwierig bis unmöglich ist, die Faszination mittels Foto einzufangen. Ich bin gespannt, ob jemand eine bessere Idee hat.
Mit etwas Ruhe habe ich dann mal die Reihenfolge der Farben überprüft und mußte feststellen, es ist GRB anstelle RGB. Na prima, habe ich dann mal geändert. "Meinen weihnachtlichen Geschnack trifft es eher nicht." bezog sich auf RGB, jetzt mit GRB ist die Farbmischung schon eher meins. Es wurden von Besuchern auch schon Polarlichter gesichtet ...
Wer seine Nachbarn kennenlernen möchte, sollte das Farbspiel am Fenster laufen lassen, klappt prima.
Nur die fotografische Sicherung des Eindrucks will mir nicht gelingen, auch ein Video gefällt mir nicht wirklich.
Weil ich sehe, dass hier die fastLED Experten am diskutieren sind, wage ich als newbie hier eine echte Grundlagenfrage zu stellen.
Wie und wo kann man die "Laufrichtung" ändern? Im rainbow Beispiel laufen die Farben von Led[0] hoch zu Led[NUM_LEDS]. Das möchte ich ändern.
In sinelon wird das wohl so gemacht, habe aber den code, zum spickel darin, nicht gefunden.