Das WS2812-Shield ist von Wemos und kann direkt auf den Wemos D1 Mini aufgesteckt werden.

Man steckt das Shield auf und verbindet über das USB-Kabel den PC.

 

Verbindung

Wemos D1 Mini WS2812 RGB-Shield
5V 5V
GND GND
D2 (GPIO4) D2 (GPIO4)

 

Tasmota-Anpassung

Der Quellcode von Tasmota muß nicht geändert werden.

 

Tasmota-Konfiguration

Nach dem Flashen ist die Webseite des Wemos D1 Mini aufzurufen und das Modul zu konfigurieren:

Als Gerätetyp wird 'Generic' ausgewählt. Nach dem Speichern kann der gelb markierte Eintrag für den Datenbus des WS2812 konfiguriert und gespeichert werden.
Ein Zeitplan wird hier nicht vergeben.
Bei den WLAN-Einstellungen kann man einen neuen Hostnamen vergeben (hier 'WEMOSD1B') und wiederum speichern.
Bei den MQTT-Einstellungen wird der Host, das Topic und Full Topic angepasst und gespeichert.
 
Hier kann der 'Friendly Name' eingestellt werden.
In der Konsole überprüft man, ob das Modul die Daten ordnungsgemäß an den MQTT Host sendet.
Auf der Hauptseite des Moduls befindet sich der Schieberegler, mit dem zwischen 0% und 100% gedimmt werden kann.
Den Dimmer auf 100% gestellt und schon strahlt die WS2812 superhell. Da es sich nur um eine LED handelt, wird sie aus dem Wemos D1 und damit dem USB-Interface gespeist. Hängt man WS2812-Stripes mit vielen LED an, muß eine externe Spannungsversorgung mit 5V und einigen Ampere verwendet werden!

 

OpenHAB Items

Folgende Items werden definiert:


//=======================================================================================//
// File: item/WS2812.items  Rev. 11.10.2018 / 14:15                                      //
// (C) 2018 IoT-Systems, D-83043 Bad Aibling                                             //
// Author: Andreas Kriwanek                                                              //
//=======================================================================================//
// Project: Generic WS2812 Items                                                         //
//=======================================================================================//

// Groups for charting Pow:
Group gChartWS2812     "WS2812"     

// chart time range Basic:
Number chartPeriodWS2812  "Auswahl"

// Items for WS2812:
//=======================================================================================//
// WS2812 (Tasmota) measurement data:
Dimmer dataDimmerWS2812 "Dimmer [%s]" 
    { mqtt=">[mosquitto:Test/WS2812/cmnd/Dimmer:command:*:default],
            <[mosquitto:Test/WS2812/stat/RESULT:state:JSONPATH($.Dimmer)]" }
Color dataColorwheelWS2812 "Color Wheel" 
    { mqtt=">[mosquitto:Test/WS2812/cmnd/HSBColor:command:*:default],
            <[mosquitto:Test/WS2812/stat/RESULT:state:JSONPATH($.HSBColor)]" }
Number dataColorWS2812 "Color Selection [%s]" 
    { mqtt=">[mosquitto:Test/WS2812/cmnd/Color:command:*:default],
            <[mosquitto:Test/WS2812/stat/RESULT:state:JSONPATH($.Color)]" }

// WS2812 (Tasmota) administration data:
String bootModuleWS2812 "Modul [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO1:state:JSONPATH($.Module)]" }
String bootVersionWS2812 "Version [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO1:state:JSONPATH($.Version)]" }
String bootFallbackWS2812 "Fallback Topic [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO1:state:JSONPATH($.FallbackTopic)]" }
String bootGroupWS2812 "Group Topic [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO1:state:JSONPATH($.GroupTopic)]" }
String bootWSModeWS2812 "Webserver Mode [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO2:state:JSONPATH($.WebServerMode)]" }
String bootHostnameWS2812 "Hostname [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO2:state:JSONPATH($.Hostname)]" }
String bootIPAddressWS2812 "IP-Adresse [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO2:state:JSONPATH($.IPAddress)]" }
String bootRestartReasonWS2812 "Restart Grund [%s]" 
    { mqtt="<[mosquitto:Test/WS2812/tele/INFO3:state:JSONPATH($.RestartReason)]" }
String parUpdateWS2812 "Letzter Update [%s]" 

 

OpenHAB Sitemap

Die minimale Sitemap zum Aufbau:


//=======================================================================================//
// File: sitemaps/WS2812.sitemap  Rev. 11.10.2018 / 14:15		                         //
// (C) 2018 IoT-Systems, D-83043 Bad Aibling                                             //
// Author: Andreas Kriwanek                                                              //
//=======================================================================================//
// Project: Wemos D1 Mini mit WS2812 Shield         		                             //
//=======================================================================================//

sitemap WS2812 label="WS2812"
{
	Frame {
		Text item=actDate icon="time"
	}
	Frame label="WS2812 LED" {
		Slider item=dataDimmerWS2812
		Colorpicker item=dataColorwheelWS2812
		Selection item=dataColorWS2812 mappings=[1="Red", 2="Green", 3="Blue", 4="Orange", 
			5="Light Green", 6="Light Blue", 7="Amber", 
			8="Cyan", 9="Purple", 10="Blue", 11="Pink", 
			12="White"]
	}
	Frame label="Status Wemos D1 Mini" {
		Text label="Wemos D1 Mini" icon="ak_info" {
			Frame label="Wemos D1 Mini" {
				Text item=bootFallbackWS2812
				Text item=bootGroupWS2812
				Text item=bootWSModeWS2812
				Text item=bootHostnameWS2812
				Text item=bootIPAddressWS2812
				Text item=bootRestartReasonWS2812
				Text item=parUpdateWS2812
				Text item=parUptimeWS2812
				Text item=parVccWS2812
				Text item=parWiFiAPWS2812
				Text item=parWiFiSSIDWS2812
				Text item=parWiFiRSSIWS2812
				Text item=parWiFiMacWS2812
			}
		}
	}
}

// vim: syntax=Xtend
Auf der Hauptseite befindet sich der Dimmer-Regler, mit dem die Helligkeit zwischen 0% und 100% gesteuert werden kann. Um die Farbei einzustellen, gibt es die "Color Selection" mit 12 verschiedenen Farben und das "Color Wheel" mit frei einstellbaren Farben.
Bei der "Color Selection" klickt man auf den kleinen Pfeil nach unten und die Auswahl erscheint. Jetzt kann man die gewünschte Farbe anklicken.
Bei "Color Wheel" erscheint das Farbrad und man klickt mit der Maus auf den gewünschten Farbton. Je weiter außen am Durchmesser man klickt, desto intensiver werden die Farben. Mit "OK" wird das Farbrad wieder verlassen.
Über 'Status Module' erhält man eine Übersicht der Wemos D1 Parameter.