Bastelprojekt WLAN RGB Controller für ca. 6€

Begonnen von Samsi, 28 Februar 2015, 13:16:07

Vorheriges Thema - Nächstes Thema

mrpj

Zitat von: kadettilac89 am 14 Februar 2016, 08:59:45
Hallo,

ich verfolge das Projekt schon eine Weile. Hört sich sehr gut an und ich finde es auch sehr gut dass du eine Sammelbestellung auf die Beine stellst.

Wie  ich lese ist aktuell noch nicht implementiert das Modul in eine bestehendes Wlan mit WPA2 Verschlüsselung zu hängen. Die Einschränkung ist aber nur softwareseitig oder? Dann ist es nur eine Frage der Zeit.

Die Anbindung an WPA2-psk (die Verschlüsselung die in den Routern für den Heimgebrauch vorzufinden ist) ist schon vorhanden - jediglich funktioniert WPA2-enterprise (Radius) nicht/eingeschränkt.

kadettilac89

Zitat von: mrpj am 14 Februar 2016, 12:30:50
Die Anbindung an WPA2-psk (die Verschlüsselung die in den Routern für den Heimgebrauch vorzufinden ist) ist schon vorhanden - jediglich funktioniert WPA2-enterprise (Radius) nicht/eingeschränkt.

Perfekt, dann hab ich wahrscheinlich nicht alles gelesen. Danke dir!

mrpj

#242
Moin,

im anderen Thread hatte ich es ja schon kurz das update gepostet.

Ich habe nun HSV Transitions implementiert - (Video Hue 1 - 1 in 20s)

Funktioniert einwandfrei mit 50fps - (PWM ist 200hz)


Aktuelle dev version der Library ist hier zu finden
https://github.com/patrickjahns/RGBWWLed/tree/dev-v0.2
PS: der Code ist noch ziemlich roh - Feinschliff kommt wenn die Funktionalität gegeben ist

Den Demosketch hab ich auchmal upgedated
https://github.com/patrickjahns/esp_rgbww_firmware


- Die Grundzüge für die Farbtemperatur (Kelvin) sind auch schon im code geschaffen - nun bräuchte ich mal Hilfe mit dem Algorithmus für den Weissabgleich für RGB, RGB+WarmWeiss, RGB+KaltWeiss, RGB+WarmWeiss/KaltWeiss.

Im anderen Thread hab ichs schon angekündigt - die weitere Entwicklung am Code muss ich in meiner Priorität bis Anfang April runter schrauben.

Bapt. Reverend Magersuppe

Funktioniert das eigentlich auch noch mit dem umfunktionierten IR-Controller?
--
If I was born in 1453, Leonardo da Vinci would be jealous of me.
Reverend Paul Egon Magersuppe
Aus versicherungstechnischen Gründen sind sämtliche Beiträge von mir rein spekulativer und theoretischer Natur und sollten nicht in die Tat umgesetzt werden!
Bin hier selten DRIN. AUS GRÜNDEN!

mrpj

Die Library kann man in allen ESP(LED) Projekten einsetzen, welche Modifikationen an der Firmware/Arduino Sketch nötig sind und welche Frequenz der Mod mitmacht, kann ich dir aber nicht sagen.

Trial and Error  ;)



Offtopic: Der Benutzername hat mich gerade begeistert  ;D

kadettilac89

Hallo mrpj,

deine Platine bzw. die ESP müssen ja inital befüllt werden. Reicht hier ein billiger USB to serial wie dieser hier ...

http://de.aliexpress.com/item/1pcs-USB-to-TTL-USB-TTL-STC-microcontroller-programmer-PL2303-in-nine-upgrades-plate-with-a/696402213.html?spm=2114.010208.3.133.brHx3D&ws_ab_test=searchweb201556_2,searchweb201644_5_505_506_503_504_10020_502_10001_10002_10017_10010_10005_10011_10006_10003_10021_10004_10022_10009_10008_10018_10019,searchweb201560_2,searchweb1451318400_-1,searchweb1451318411_6451&btsid=b0e79818-8167-4636-b50f-bc9d9de60d79

Ich möchte mir diesen jetzt schon bestellen damit ich nicht im Anschluss nochmal 1 Monat warten muss.

Gibt es auch eine Möglichkeit den ESP initial mit einem Arduino nano zu flashen? Von denen hätte ich ein paar rumliegen. Frage nur mal in den Raum gestellt.


AxelSchweiss

Zitat von: kadettilac89 am 26 Februar 2016, 09:37:04
Hallo mrpj,

deine Platine bzw. die ESP müssen ja inital befüllt werden. Reicht hier ein billiger USB to serial wie dieser hier ...

http://de.aliexpress.com/item/1pcs-USB-to-TTL-USB-TTL-STC-microcontroller-programmer-PL2303-in-nine-upgrades-plate-with-a/696402213.html?spm=2114.010208.3.133.brHx3D&ws_ab_test=searchweb201556_2,searchweb201644_5_505_506_503_504_10020_502_10001_10002_10017_10010_10005_10011_10006_10003_10021_10004_10022_10009_10008_10018_10019,searchweb201560_2,searchweb1451318400_-1,searchweb1451318411_6451&btsid=b0e79818-8167-4636-b50f-bc9d9de60d79

Ich möchte mir diesen jetzt schon bestellen damit ich nicht im Anschluss nochmal 1 Monat warten muss.

Gibt es auch eine Möglichkeit den ESP initial mit einem Arduino nano zu flashen? Von denen hätte ich ein paar rumliegen. Frage nur mal in den Raum gestellt.

Du musst aufpassen das dein USB2Seriell auch die 3,3 Volt an den RX/TX hat  .... ich glaube zu wissen das der ESP an die IO nicht 5 Volt tolerant ist.

kadettilac89

Zitat von: AxelSchweiss am 26 Februar 2016, 09:58:48
Du musst aufpassen das dein USB2Seriell auch die 3,3 Volt an den RX/TX hat  .... ich glaube zu wissen das der ESP an die IO nicht 5 Volt tolerant ist.

Aber der geponstete Usb2Ttl würde passen wenn ich die RX-Spannung ggf. mit Widerständen auf 3,3 reduziere?



mrpj

Sorry ich hab die Nachrichten jetzt erst gelesen -

AxelSchweiss hat es genau richtig beschrieben - der ESP verträgt nur 3.3V

Die Platinen mit "FT232L" sind meist zwischen 3.3V und 5V mit einem jumper umstellbar.
Günstiger als der link von Alex ist hier: http://www.aliexpress.com/wholesale?SearchText=FTDI+FT232RL+USB+to+TTL+Serial+Converter&opensearch=true

Sind auch meist in 2-3 Wochen da

kadettilac89

Zitat von: mrpj am 27 Februar 2016, 15:08:53
Sorry ich hab die Nachrichten jetzt erst gelesen -

AxelSchweiss hat es genau richtig beschrieben - der ESP verträgt nur 3.3V

Die Platinen mit "FT232L" sind meist zwischen 3.3V und 5V mit einem jumper umstellbar.
Günstiger als der link von Alex ist hier: http://www.aliexpress.com/wholesale?SearchText=FTDI+FT232RL+USB+to+TTL+Serial+Converter&opensearch=true

Sind auch meist in 2-3 Wochen da

Danke, hab mir gestern schon einen bei Ali bestellt.

ext23

Moin,

nochmal wegen dem PWM (Für die Statistik). Hab eben mal mein Oszi an diesen UFO WiFi LED Controller gehangen, der arbeitet mit 431 Hz.

/Daniel
HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

mrpj

Da sich sicherlich einige nur für die RGBWW Bibliothek und nicht für den Controller interressieren, hier mal ein Querpost zu dem aktuellen Stand der Entwicklung der Bibliothek. Mithilfe bei den ToDos ist sehr erwünscht ;-)


RGBWW

Die Basis Funktionalität ist erstellt und gestetet. Eine Berechnung und Animation eines Farbwechsels funktioniert auf dem Controller flüssig und zuverlässig.

Die verschiedenen Ideen um die Farbausgabe des Controllers zu verändern wurden implementiert, so ist es möglich ähnlich wie im FHEM wifilight Modul die "Grundfarben" (Rot, Gelb, Grün, Cyan, Blau, Magenta) zu verschieben um die Wiedergabe von den Farben anzupassen.
Weiterhin ist es möglich, einzelne Farbkanäle in der Helligkeit von 0-100% zu regeln. Es ist eine zusätzliche Möglichkeit die Farben und Helligkeit anzupassen.

Der Controller besitzt die Möglichkeit mit verschiedenen Ausgabeverhalten zu arbeiten (nur RGB, RGB+Warmes Weiss, RGB+KaltesWeiss, RGB+Warm& Kalt Weiss)

Es ist möglich die Farbtemperatur des WeissKanals (bei der Nutzung von Warm und Kaltweiss) anzupassen

Derzeit sind "nur" 2 Animationen/Effekte vorhanden:

  • Farbwechsel von Farbe A nach Farbe B im Zeitraum X (kurzer/langer Weg)
  • Zeige Farbe A für den Zeitraum X  (X kann dauerhaft/unendlich bedeuten)

Ich denke jedoch, das diese beiden Animationen 95% dem Nutzungsverhalten entsprechen ;-)

Intern arbeitet die RGBWWLed Bibliothek mit einer Queue/Warteschleife - das bedeutet es ist möglich auch komplexere Animationsketten an den Controller zu schicken und diese werden dann nach und nach abgearbeitet.

Beispiel:
Farbwechsel von Farbe A zu Farbe B in 30 Sekunden; zeige Farbe B fur 60 Sekunden, Wechsel zu Farbe C in 10 Sekunden; Wechsel zu Farbe D in 180 Sekunden, Zeige Farbe D für 3600 Sekunden

RGBWW ToDos

Es gibt noch einige ToDos um die Bibliothek "komplett" zu machen bzw zu erweitern:


  • Die Farbtemperatur kann im Moment nur zwischen den Warm/Kaltweissen Led Streifen verschoben werden
Eine Erweiterung wäre es, die Farbtemperatur durch Berechnung weiter zu verschieben bzw. auch zu verschieben, wenn nur ein Weisskanal / RGB vorhanden ist
Ich habe schon einige Ansätze gefunden - jedoch bisher aus Zeitnot nicht die Möglichkeit gehabt es mir genauer anzuschauen und die Berechnung letztendlich zu implementieren. Eine Mithilfe wäre hier sehr gewünscht

Mehr Informationen/Hintergrund Informationen
http://www.tannerhelland.com/4435/convert-temperature-rgb-algorithm-code/
http://www.cree.com/~/media/Files/Cree/LED-Components-and-Modules/XLamp/XLamp-Application-Notes/LED_color_mixing.pdf
https://web.archive.org/web/20131224221243/http://pidome.wordpress.com/2013/08/21/working-with-heating-and-cooling-light-colors
http://www.research.ed.ac.uk/portal/files/17162678/published_paper.pdf



  • Implementierung von 2 weiteren Berechnungsmodelle um vom HSV Raum zum RGB+W Farbraum zu gelangen
Im Moment wird die Wandlung vom HSV zu RGB Farbraum mit dem "Standard" Algorithmus durchgeführt - dabei wird die Helligkeit insgesamt verschoben (z.B. sind bei Gelb Rote und Grüne Leds auf 100%) bzw. die Komposition entspricht nicht der natürlichen Wahrnehmung des Menschen 

Mehr Informationen dazu:
https://github.com/FastLED/FastLED/wiki/FastLED-HSV-Colors
http://www.fourmilab.ch/documents/specrend/
http://stackoverflow.com/questions/5162458/fade-through-more-more-natural-rainbow-spectrum-in-hsv-hsb



  • Implementierung von weiteren Effekten/Animationen
Die Bibliothek hat schon ein abstraktes Interface für Animationen/Effekte, welches bereits für den Farbwechsel genutzt wird. Weitere Effekte können dadurch auf einfache Weise hinzugefügt werden


Sourcecode befindet sich hier:
https://github.com/patrickjahns/RGBWWLed

Kuzl

Was hältst du davon, die möglichkeit einzubauen, so eine selbst definierte Queue automatisch zu loopen. Dann braucht man nicht jedes mal neu die Befehle schicken, wenn man so ein dauerhaftes überblenden etc. will.

Viele Grüße,
Kuzl