SONOFF-Tutorial: Ein Wi-Fi Smart Switch für 5 $
In dieser Anleitung erfahren Sie, wie Sie dem SONOFF-Gerät von Itead 5 $ . Im Vergleich zu den $ -WiFi-Smart-Plugs auf dem Markt ist der SONOFF eine großartige Alternative für die Umsetzung von Smart-Home- und sogar industriellen IoT Projekten in größerem Maßstab. Darüber hinaus basiert es auf dem beliebten WLAN-Chip ESP8266 und ist daher mit der Arduino-Umgebung und anderen Ressourcen wie unseren ESP-Bibliotheken bei Ubidots .
Der SONOFF wird mit einer eigenen Firmware und einer eigenen mobilen App geliefert, aber wir glauben, dass sein Hauptwert tatsächlich in seinem Formfaktor und seinem niedrigen Preis liegt. Aus diesem Grund haben wir beschlossen, etwas zu hacken und seine volle Kraft freizusetzen!
Überblick
Seien Sie vorsichtig! Manipulieren Sie den SONOFF nicht, während er an die 110/240-V-Wechselstromleitungen angeschlossen ist
Der SONOFF enthält ein Relais, einen ESP8266-WLAN-Chip und die erforderlichen Schaltkreise, um ihn über die Wechselstromleitung einer Steckdose mit Strom zu versorgen. Außerdem ist es in einer schönen Verpackung erhältlich, die es professioneller aussehen lässt als ein durchschnittliches DIY-Projekt zu Hause.
Anforderungen
Aufstellen
- Zerlegen Sie das SONOFF-Gerät, um auf die SONOFF-TTL-Pinbelegung zuzugreifen, die wir zum Programmieren des integrierten ESP8266 benötigen. Sie müssen vier Pins anlöten, diese sind im Bild unten dargestellt.
- Verbinden Sie die UARTbee-Pins mit den SONOFF-Pins und folgen Sie dabei dieser Pinbelegung:
UARTbee | SONOFF |
---|---|
VC | CVCC |
TX | RX |
RX | TX |
GND | GND |
Gehen Sie zur Arduino IDE, klicken Sie auf Dateien -> Einstellungen und geben Sie diese URL ein, um auf die ESP8266-Bibliotheken für Arduino zugreifen zu können:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
in das Zusätzliche Boards-Manager-URLs . Dieses Feld unterstützt mehrere URLs und trennt sie durch Kommas, falls Sie bereits andere URLs eingegeben haben.
- Öffnen Sie den Boards Manager über „Extras -> Board“ und installieren Sie die ESP8266-Plattform. Wählen Sie nach der Installation Ihr ESP8266-Board im „Extras“ > „Board“ .
- hier die Ubidots ESPMQTT-Bibliothek .
- Klicken Sie nun auf Skizze -> Bibliothek einschließen -> .ZIP-Bibliothek hinzufügen.
- Wählen Sie die .ZIP-Datei von Ubidots ESPMQTT aus und klicken Sie dann auf „Akzeptieren“ oder „Auswählen“ .
- Schließen Sie die Arduino IDE und öffnen Sie sie erneut.
Erstellen Sie eine Ubidots Variable
- Ubidots Konto.
- Gehen Sie zu Quellen und klicken Sie auf das orangefarbene Plus-Symbol .
- Legen Sie den Namen der Datenquelle fest und überprüfen Sie die Bezeichnung
4. Erstellen Sie eine neue Variable für das Relais und überprüfen Sie die Beschriftung
Erstellen Sie ein Button-Widget
Um das SONOFF-Gerät zu steuern, müssen Sie nun ein Schaltflächen-Widget in Ihrem Ubidots -Konto erstellen. Dieses Widget setzt Ihre RELAY-Variable entweder auf „1“ oder „0“:
- Gehen Sie zum Dashboard und klicken Sie auf das orangefarbene Plus-Symbol .
- Klicken Sie auf Steuerung -> Wechseln und wählen Sie die zuvor erstellte Datenquelle und Variable aus, die Sie steuern möchten.
Codierung Ihres SONOFF
Hier ist der Code, der das SONOFF-Gerät ein-/ausschaltet. Um diesen Code zu verwenden, vergessen Sie nicht, den TOKEN durch den Token Ihres Ubidots -Kontos zu ersetzen. Ändern Sie WIFISSID und PASSWORD mit Ihren Netzwerkanmeldeinformationen.
Um den Code in SONOFF hochzuladen, müssen Sie:
- Schließen Sie den UARTbee an den USB-Anschluss Ihres PCs an.
- Drücken Sie die SONOFF-Taste und trennen Sie gleichzeitig den USB-Anschluss.
- Während Sie weiterhin auf die Taste drücken, schließen Sie den USB-Anschluss erneut an.
Diese Schritte dienen dazu, den SONOFF in den Programmiermodus zu versetzen.
Wenn Sie fertig sind, laden Sie den Code von der Arduino IDE hoch:
/**************************************** * Bibliotheken einschließen ****** **********************************/ #include „ Ubidots ESPMQTT.h“ /****** ************************************ * Konstanten definieren *********** ***************************/ #define TOKEN „…“ // Dein Ubidots TOKEN #define WIFINAME „…“ / /Ihre SSID #define WIFIPASS „…“ // Ihr WLAN-Pass #define MQTTCLIENTNAME „…“ // Ihr MQTT-Clientname, er muss eindeutig sein, wir empfehlen daher, einen zufälligen ASCCI-Namen zu wählen #define RELAY 12 #define LED 13 Ubidots -Client(TOKEN, MQTTCLIENTNAME); /**************************************** * Hilfsfunktionen ****** **********************************/ void callback(char* topic, byte* payload, unsigned int length) { Serial.print("Nachricht angekommen ["); Serial.print(topic); Serial.print("] "); für (int i=0;i <length;i++) { Serial.print((char)payload[i]); } Serial.println(); if ((char)payload[0] == '1') { digitalWrite(RELAY, HIGH); //On relay digitalWrite(LED, LOW); //On led } if ((char)payload[0] == '0') { digitalWrite(RELAY, LOW); //Off relay digitalWrite(LED, HIGH); //Off led } } /**************************************** * Main Functions ****************************************/ void setup() { // put your setup code here, to run once: Serial.begin(115200); client.wifiConnection(WIFINAME, WIFIPASS); pinMode(RELAY, OUTPUT); pinMode(LED, OUTPUT); digitalWrite(LED, HIGH); client.begin(callback); client.ubidots Subscribe("relay","sonoff"); //Datenquelle und Variablenbeschriftungen einfügen } client.loop(); }
Schließen Sie Ihren Smart Switch an und beginnen Sie mit der Steuerung
Jetzt ist es an der Zeit, die Dinge „intelligent“ zu machen, indem Sie Ihren SONOFF hinzufügen: Steuern Sie Ihre Lichter, öffnen oder schließen Sie Ihre Garage usw.
Einen Schritt weiter gehen…
Ubidots IoT zu erstellen , sowohl im Bildungsbereich als auch im Unternehmen. Um zu erfahren, wie Ubidots Ihrem Unternehmen helfen kann, schauen Sie sich unsere Funktionen oder hinterlassen Sie uns eine Nachricht.