Es ist ein um 50 % kleines dafür 50 % dickeres Board als das NodeMCU. Die beiden Boards sind durch Steckbrücken miteinander verbunden.
Das Board hat gegenüber dem NodeMCU einige Vor- oder Nachteile, je nachdem wie man es benutzt.
Hier nun erst mal die technischen Daten:
WLAN-fähig: mit einem ESP 8266-12F Chip (4 MB)
UART: CH340G mit Flash & Reset auf der unteren Huckepack – Platine
Micro-USB Anschluß (2 x). Unten zur Programmierung des Boards und oben später zum Anschluß der Spannungsversorgung
Auf dem oberen Board ist neben dem ESP12-F noch eine RGB-LED in 5050 SMD Bauweise, einen LDR (Foto-Widerstand) und unter der Platine ein LM1117 3,3 V Spannungsregler, welche die eingehende 5 V USB-Spannung runterregelt. Zu guter letzt ist auf der Platine noch ein Taster drauf.
Man sieht schon, dort ist auf der oberen Platine von Hause aus schon einiges beschaltet worden. Die Beschaltung der Bauelemente (RGB-LED, Taster, LDR) benötigen natürlich GPIOs, die später für andere externe Bauteile nicht mehr zur Verfügung stehen.
Nachfolgend die Beschaltung der auf der Platine angebrachten Bauelemente:
Taster: GPIO 4
Rote LED: GPIO 15
Grüne LED: GPIO 12
Blaue LED: GPIO 13
LDR: Analoger Eingang A0
Freie GPIOs:
GPIO 0
GPIO 2
GPIO 5
GPIO 14
Programmierung:
Das Witty-Board ist von Hause aus programmiert. Versorgt man es beim ersten mal mit 5 V USB-Spannung, leuchtet die RGB-LED in allen Farben nacheinander auf. Also schon mal ein gutes Zeichen, das das Board okay ist.
Ein ständiges Wechsellicht der RGB-LED ist zwar kurzzeitig interssant, aber wir wollen weitere lustige Sachen mit dem Witty-Board machen.
Zum Beispiel eine 16×2 LCD / 20×4 LCD Anzeige mit steuern, zu den Blog-Beiträgen Teil 1 und Teil 2
Wie wäre es wenn wir es via Fhem steuern können?
Hier könnten wir uns beispielsweise mit der Arduino-Software anfreunden und einen Sketch programmieren, diesen dann mit dem unteren Huckepack-Platine (dort wo der CH340 UART) drauf ist, die Daten rüberbeamen. Oder den ESP12-F mit LUA-Firmware betanken und mit der LUA-Software den Baustein flashen.
Aber die einfachste, nicht aber die flexibelste Möglichkeit ist die ESP Easy Software (-> siehe Blogbeitrag). Einmal aufgespielt, kann man via dem Administrations-Interface, die GPIOs, die ich oben benannt habe, direkt per Klick alles zuordnen. Das sieht dann so aus:
Jetzt kann man per MQTT den lichtabhängigen Widerstand abfragen und in Fhem verarbeiten. Ebenfalls kann man von Fhem aus die RGB-LEDs zum Leuchten bringen.
Anwendungs-Beispiel (Voraussetzung – MQTT-Broker):
# Device Lichtsensor und LED Schaltung Nachtlicht
define WittyBoard MQTT_DEVICE WittyBoard
attr WittyBoard IODev MyBroker
attr WittyBoard autoSubscribeReadings /Home/#
attr WittyBoard room MQTT
attr WittyBoard stateFormat Licht: Analog
attr WittyBoard subscribeReading_Analog /hooks/devices/1/SensorData/Analog
attr WittyBoard subscribeReading_Taster /hooks/devices/3/SensorData/Switch
WittyBoard:Analog.* {
if ( (ReadingsVal("WittyBoard", "Analog", "0")) > 1000.00 ){
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,15,1'");
}
else
{
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,15,0'");
}
if ( (ReadingsVal("WittyBoard", "Analog", "0")) < 1000.00 ){
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,12,1'");
}
else
{
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,12,0'");
}
}
Analog
|
338.00
|
2016-03-20 19:15:23
|
state
|
0
|
2016-03-19 23:56:36
|
transmission-state
|
incoming publish received
|
2016-03-20 19:15:23
|
Hier geht via MQTT der gemessene Helligkeitswert in Fhem rein. Über ein Notify wird entschieden, was mit dem Wert gemacht werden soll. Als Beispiel wird jetzt hier eine der RGB-LEDs leuchten, wenn ein gewisser Wert vom LDR unter- oder überschritten wird. Genauso kann natürlich alles andere geschaltet werden, beispielsweise eine Außenbeleuchtung ein- oder ausgeschaltet werden. Mit diesem Baustein, welcher schließlich nur noch 5 V benötigt, kann praktisch überall angebracht werden. Voraussetzung ist natürlich eine stabile Verbindung zum WLAN.
Weitere Anwendungs-Beispiele:
Mit dem Abfall-Plugin (siehe Blog-Beitrag) kann beispielsweise eine der RGB-LED leuchten, wann die Mülltonnen herausgestellt werden. Ich habe das bei meinem Bilderrahmen (-> siehe meinen Blog-Beitrag) so gelöst: gelbe LED – Müllabfuhr kommt morgen, rote LED Müllabfuhr kommt heute.
Mit dem Benzin-Plugin (-> eingebaut im Tablet-UI) kann man den günstigsten Tank-Zeitpunkt erkennen, gelb Preis ok, grün – jetzt Tanken gehen, Tagestiefstpreis.
Mit dem Taster kann man den Amazon-Dash-Button nachbauen: Taste gedrückt – Aktion wird Fhem gemeldet und führt dann weitere Aktionen aus. Vielleicht eine Türklingel? Nein, dafür finde ich den Chip zu schade.
Hier zum Spielen mal ein Snippet, Taste gedrückt, LED leuchtet blau:
define WittyBoard_taste notify WittyBoard:Taster.* {\
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,13,0'");;\
if ( (ReadingsVal("WittyBoard", "Taster", "0")) == 1.00 ){\
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,13,1'");;\
}\
else\
{\
system ("wget -q -O - 'http://192.168.178.45/control?cmd=GPIO,13,0'");;\
}\
}
Auto Amazon Links: Keine Produkte gefunden. http_request_failed: Es wurde keine gültige URL übermittelt. URL: https://ws-eu.amazon-adsystem.com/widgets/q?SearchIndex=All&multipageStart=0&multipageCount=20&Operation=GetResults&Keywords=B07X471RNC|B071VMBYB1&InstanceId=0&TemplateId=MobileSearchResults&ServiceVersion=20070822&MarketPlace=DE Cache: AAL_0cb2ee02a0f6092ea686a457f7f9ee70
Weitere Ideen? Ab in den Kommentaren damit!