Otevře se na nové kartě

Vlastní Arduino kód pro ovládání chytré zásuvky Sonoff S20 s ESP8266

Rozebraná zásuvka Sonoff S20 připojená k počítači s otevřeným sériovým monitorem

Před lety jsem si koupil chytrou Wi-Fi zásuvku (vypínač) k televizi + Raspberry Pi + repro atd. Při používání mě ale hrozně štvala nutnost mít aplikaci ewLink, který se strašně dlouho připojoval na server, celá aplikace byla zbytečně nepřehledná a aplikace mě neustále odhlašovala. Teď, po letech, jsem zásuvku rozebral a přeprogramoval pro spínání pomocí služby The IoT Guru Cloud.

Zásuvku Sonoff S20 řídí populární a známý čip ESP8266 – ten najdete ve všech levných zařízeních.

Přeprogramování je velmi jednoduché, výrobce nebrání přeprogramování – třeba zamčená paměť pro nahrání, nedostupné programovací konektory atd.

Po otevření zásuvky (3 křížové šrouby) se před vámi otevře jednoduchý plošňák rozdělený na 2 části – silová, napájecí se spínacím relé a druhá ovládací s ESP8266.

Na té ovládací je čip ESP8266, externí paměť, stabilizátor a nějaké další smetí jako kondíky, rezistory.

A také tam najdete místo pro konektor se čtyřmi dírami s roztečí 2.54 mm. To je programovací konektor, kam musíte přivést 3.3V, GND, TX a RX.

!!! Přeprogramování musí probíhat bez zapojené zásuvky !!! Na vlastní nebezpečí !!!

Na stránce tasmota jsem našel obrázek s rozložením pinů, protože moje verze už je bez popisků, ale pinout se shoduje.

Celá domácnost mi běží na službě The IoT Guru Cloud, proto jsem nechtěl použít Tasmota.

Deska plošných spojů chytré zásuvky Sonoff S20 s modulem ESP8266
Zdroj: https://tasmota.github.io/docs/devices/Sonoff-S20/#serial-connection

K zásuvce je dostupné i schéma zapojení, které je najdete na wiki iteadstudio – https://wiki.iteadstudio.com/File:S20_EU.SCH.pdf

Ze schématu je vidět, že LED – zelená je připojena přímo na pin ESP8266, GPIO13.

Modrá LED je zapojena přes tranzistor společně s relátkem na GPIO12. Tedy když svítí modrá LED, je sepnuto i RELÉ. Nelze vypnout modrou LED bez toho, aby stále spínalo relé.

Tlačítko je zase připojeno na GPIO0. A tento GPIO0 právě potřebujeme pro nahrání našeho programu.

!!! Přeprogramování musí probíhat bez zapojené zásuvky !!! Na vlastní nebezpečí !!!

Postup je následující:

Propojíme USB-UART převodník k zásuvce (ale nezapojujeme do počítače):
3.3V – 3.3V

GND – GND

TX – RX

RX – TX

Zmáčkneme tlačítko a držíme, zasuneme USB převodník do počítače, poté tlačítko uvolníme. ESP je v bootloader módu a čeká na přichozí pakety z UARTu.

V Arduino IDE programujeme jako „General ESP8266“. Po nahrání restartujte zásuvku odpojením od 3.3V napětí.

A teď přejdeme ke službě The IoT Guru Cloud.

Celý koncept zařízení – nódů a fieldů ukazuje obrázek níže.
Schéma propojení zařízení ESP8266 s nody a poli pro teplotu, vlhkost a tlak

Po registraci na stránkách si vytvoříme nové zařízení – třeba s názvem smartplugs.
Seznam zařízení na stránce Devices cloudové služby The IoT Guru

Vytvoříme nový Node – třeba sonoffs20
Webové rozhraní The IoT Guru zobrazuje zařízení SMARTPLUGS a uzel sonoffs20

A vytvoříme nový Field – třeba general_plug
Webové rozhraní The IoT Guru zobrazuje uzel Sonoff S20 a pole general_plug

Každý Node a Field má unikátní název, identifikátor a klíč. Některé z těchto dat potřebujete k připojení na server – jaké jsou popsány v jednotlivých příkladech.

Například:
/**

* Initialize the connection with the cloud.

*/

String userShortId = „xxxxxxxxxxxxxxxxxxxxxx“;

String deviceShortId = „yyyyyyyyyyyyyyyyyyyyyy“;

String deviceKey = „zzzzzzzzzzzzzzzzzzzzzz“;

IoTGuru iotGuru = IoTGuru(userShortId, deviceShortId, deviceKey);

/**

* Constants of the MQTT channel check.

*/

String nodeShortId = „nnnnnnnnnnnnnnnnnnnnnn“;

String fieldName = „relay“;

Device setting vypadá například takto.
Nastavení zařízení Smart Plugs v IoT Guru s identifikátorem a klíčem

Pro ovládání zásuvky potřebujete aplikaci IoT Guru Cloud. Tu najdete jak pro telefony Apple, tak i s OS Android.
https://play.google.com/store/apps/details?id=live.iotguru&hl=cs≷=US

Po příhlášení si v aplikaci můžete přidat různé prvky – grafy různých velikostí, zobrazení veličiny, tahadla, nebo i tlačítka ON / OFF. Což potřebujeme pro tento případ my.

Aplikace IoT Guru zobrazuje teploty a vlhkost, posuvník jasu a tlačítka spínače

Svůj kód jsem založil na jejich vzorovém kódu pro spínání
https://github.com/IoTGuruLive/theiotguru-arduino-library/blob/master/examples/05_mqtt_relay_android/05_mqtt_relay_android.ino

!!! Přeprogramování musí probíhat bez zapojené zásuvky !!! Na vlastní nebezpečí !!!

Kód jsem upravil pro mé potřeby, tedy:

– během připojování k Wi-Fi svítí zelená LED

– po připojení zhasne

– FW funguje s původním tlačítkem – pokud jej zmáčknu, relé se vždy vypne

– pokud svítí modrá LED, je sepnuto i RELÉ – jinak to kvůli HW nejde udělat.

– kód najdete na mém githubu https://github.com/petus/Sonoff_S20-Arduino-IoT_Guru_Cloud/tree/main

A závěrem, aplikace The IoT Guru Cloud se přihlásí během chvíle, reakce na událost – zmáčknutí tlačítka je téměř okamžitá.

Do IoT Guru Cloud neposílám jenom data pro zásuvku, ale i data z mé meteostanice, HomeMonitoru s čidlem CO2 a další.

Sdílejte článek:
Tričko Chiptron s potiskem Trust me, I'm a maker
Ukaž světu,
že jsi Maker!
Koupit tričko
Kafe pro Chiptrona
Dodej energii dalšímu článku
Buy Me a Coffee

Související články

Deska Wi-Fi spínače Sonoff s vyznačenými piny 3,3 V, RX, TX a GND

Produkty značky ITead známé jako Wi-Fi zásuvky Sonoff jsou neskutečně populární, mají však své nevýhody – jste závislý na cloudu firmy, na jejich aplikaci a aplikace nepatří mezi stabilní (občasnou nedostupnost zařízení a nutnost aplikaci ukončit a znovu spustit) a…

Správce knihoven Arduino IDE zobrazuje nainstalovanou knihovnu The IoT Guru Integration

Chtěl jsem po dlouhé době upravit svou venkovní meteostanici s ESP12F (ESP8266).

Logo CHIPTRON s grafickým motivem elektronické desky

Esparto, jak se framework pro Arduino nazývá, vyšel ve verzi 2.0 a slibuje velmi rychlý vývoj vašeho kódu pro stále populární ESP8266 v zařízeních jako je SONOFF.

Rozhraní chytrých hodinek s tlačítky pro zapnutí a vypnutí zásuvky

Delší dobu mě trápilo nespolehlivé spínání chytrého bazmeku Vocolinc přes cloud aplikaci Smart life.

Bílá chytrá zásuvka s modrým čelem a dvěma kolíky

Níže uvedený článek je článek přeložený ze stránek dfrobot.

Jednofázový měřič spotřeby Sonoff POW Elite s displejem a podporou ESP32

Pokud patříte mezi příznivce firmy Sonoff a používáte jejich produkty třeba ve spojení s Home Assistant, mám pro vás dobrou zprávu.

Trendy