Obsah:

Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266: 3 kroky (s obrázky)
Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266: 3 kroky (s obrázky)

Video: Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266: 3 kroky (s obrázky)

Video: Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266: 3 kroky (s obrázky)
Video: Jak flashnout BIOS, aktualizovat firmware základní desky (aby šel použít třeba Ryzen 3. generace) 2024, Listopad
Anonim
Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266
Jak flashovat firmware MicroPython na inteligentním přepínači Sonoff na bázi ESP8266

Co je Sonoff?

Sonoff je řada zařízení pro Smart Home vyvinutá společností ITEAD. Jedním z nejflexibilnějších a nejlevnějších zařízení z této řady jsou Sonoff Basic a Sonoff Dual. Jedná se o přepínače s podporou Wi-Fi založené na skvělém čipu ESP8266. Zatímco infrastruktura Sonoff může fungovat docela dobře pro základní uživatele, ostatní mohou chtít nabourat tento hardware a spustit na něm vlastní kód. Hardware Sonoff Smart Switches je úžasný, vzhledem k jeho nízké ceně:

  • ESP8266 s 1 MB flash
  • Integrovaný napájecí adaptér 220 V AC
  • 10A relé (nebo dvě v Sonoff Dual)
  • Integrovaná LED (nebo dvě v Sonoff Dual)
  • Palubní tlačítko

Pokud chcete převzít plnou kontrolu nad tímto hardwarem pomocí svého oblíbeného programovacího jazyka, je tento návod pro vás.

Krok 1: Hackování hardwaru

Hackování hardwaru
Hackování hardwaru
Hackování hardwaru
Hackování hardwaru
Hackování hardwaru
Hackování hardwaru

ESP8266 se programuje přes sériový port. Sonoff Basic i Sonoff Dual to mají na PCD.

K snadnému připojení adaptéru USB-UART bude možná nutné připájet konektor na PCB.

Krok 2: Příprava na hacknutí softwaru

Příprava na hacknutí softwaru
Příprava na hacknutí softwaru

Miluji Python, takže použiji firmware MicroPython. Můžete také použít jakoukoli podporovanou sadu SDK. Přejdeme k flashování MicroPythonu místo proprietárního firmwaru Sonoff:

Nainstalujte balíček esptool python, který usnadní blikání ESP8266:

pip install esptool

Stáhněte si nejnovější stabilní firmware MicroPython ze stránky pro stahování MicroPython. Připojte k desce adaptér USB-UART. Z bezpečnostních důvodů doporučujeme napájet desku z adaptéru namísto zásuvky 220 V AC. Pamatujte, že můžete použít pouze 3,3 V, pokud připojíte čip ESP8266 ke zdroji napájení 5 V, zemře.

Spusťte ESP8266 do režimu Flash. Můžete to udělat stažením kolíku GPIO0 při zapnutí zařízení:

  • Na Sonoff Basic je GPIO0 jednoduše tlačítko. Podržte tlačítko a připojte adaptér USB-UART k počítači a jste v režimu blesku.
  • U Sonoff Dual jsou věci o něco těžší. Při napájení desky musíte zkratovat dvě podložky na desce plošných spojů. Potřebné podložky jsou uvedeny na obrázku výše. Použijte pinzetu nebo mezi nimi připájejte malý drát.

Když je ESP8266 v režimu blesku, kontrolka LED na desce by neměla blikat.

Ujistěte se, že máte přístup k sériovému portu otevřenému adaptérem USB-UART. V Linuxu je to pravděpodobně / dev / ttyUSB0, na Macu byste měli hledat něco jako „usbserial“nebo „usbmodem“ve výstupu příkazu ls / dev / cu.* Nebo ls / dev / tty.*, Ve Windows by to mělo být COM3 nebo vyšší. V případě potřeby nainstalujte ovladače adaptéru USB-UART.

Vymažte blesk pomocí esptoolu. V případě potřeby vyměňte /dev /ttyUSB0 za svůj port:

esptool.py --port /dev /ttyUSB0 erase_flash

Pro přístup k sériovému portu bude možná nutné spustit esptool.py jako superuživatele.

Krok 3: Bliká

Bliká
Bliká

Pokud bylo vymazání úspěšné, přerušte napájení desky, znovu spusťte ESP8266 v režimu Flash a proveďte aktualizaci firmwaru:

esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash --flash_size = detekovat 0 esp8266-20170823-v1.9.2.bin

Pokud blikání proběhlo úspěšně, přerušte napájení desky, připojte ji znovu bez stisknutí tlačítka a otevřete sériový port v terminálu. V systémech Linux a Mac můžete použít obrazovku /dev /ttyUSB0 115200 (v případě potřeby nahraďte /dev /ttyUSB0 za svůj port), v systému Windows můžete použít PuTTY (výchozí přenosová rychlost je 115200). Jakmile se připojíte, stiskněte Enter a pokud uvidíte tři úhlové závorky prostředí Python, vše funguje!

>> >>> help () Vítejte v MicroPythonu! Online dokumenty najdete na adrese https://docs.micropython.org/en/latest/esp8266/. Diagnostické informace, které mají být zahrnuty do hlášení chyb, spusťte 'import port_diag'. Základní konfigurace WiFi: import sítě sta_if = network. WLAN (network. STA_IF); sta_if.active (True) sta_if.scan () # Vyhledat dostupné přístupové body sta_if.connect ("", "") # Připojit k AP sta_if.isconnected () # Zkontrolovat úspěšné připojení # Změnit jméno/heslo přístupového bodu ESP8266: ap_if = network. WLAN (network. AP_IF) ap_if.config (essid = "", authmode = network. AUTH_WPA_WPA2_PSK, heslo = "") Řídicí příkazy: CTRL-A-na prázdný řádek zadejte surový režim REPL CTRL- B-na prázdný řádek, vstup do normálního režimu REPL CTRL-C-přerušení běžícího programu CTRL-D-na prázdný řádek, měkký reset desky CTRL-E-na prázdný řádek, vložení režim Pro další nápovědu ke konkrétnímu objektu napište help (obj) >>>

V dalším pokynu popíšeme, jak komunikovat s platformou Cloud4RPi prostřednictvím protokolu MQTT.

Doporučuje: