Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Vad är Sonoff?
Sonoff är en enhetslinje för Smart Home utvecklad av ITEAD. En av de mest flexibla och billiga enheterna från den linjen är Sonoff Basic och Sonoff Dual. Dessa är Wi-Fi-aktiverade switchar baserade på ett bra chip, ESP8266. Även om Sonoff -infrastrukturen kan fungera ganska bra för grundläggande användare, kanske andra vill hacka in den hårdvaran och köra sin egen kod på den. Hårdvaran för Sonoff Smart Switches är fantastisk, med tanke på dess låga pris:
- ESP8266 med 1 MB blixt
- 220V AC integrerad nätadapter
- 10A -relä (eller två i Sonoff Dual)
- Inbyggd LED (eller två i Sonoff Dual)
- Knapp ombord
Om du vill ta full kontroll över denna hårdvara med ditt favorit programmeringsspråk, är den här självstudien för dig.
Steg 1: Hacka hårdvaran
ESP8266 programmeras via serieporten. Både Sonoff Basic och Sonoff Dual har det på PCD.
Du kan behöva löd en stifthuvud på kretskortet för att enkelt ansluta en USB-UART-adapter.
Steg 2: Förbereder att hacka programvaran
Jag älskar Python, så jag kommer att använda MicroPython -firmware. Du kan också använda alla SDK som stöds. Låt oss fortsätta att blinka MicroPython istället för den proprietära Sonoff -firmware:
Installera esptool python -paketet som gör det lättare att blinka ESP8266:
pip installera esptool
Ladda ner den senaste stabila MicroPython -firmware från MicroPython -nedladdningssidan. Anslut en USB-UART-adapter till kortet. Av säkerhetsskäl rekommenderas att man driver kortet från adaptern istället för 220V AC -uttaget. Observera att du bara får använda 3,3V, om du ansluter ESP8266 -chipet till en 5V -strömkälla kommer det att dö.
Starta ESP8266 i blixtläget. Du kan göra det genom att dra ner GPIO0 -stiftet medan du sätter på enheten:
- På Sonoff Basic är GPIO0 helt enkelt knappen. Anslut USB-UART-adaptern till din dator medan du håller knappen intryckt och du är i blixtläge.
- På Sonoff Dual är det lite svårare. Du måste kortsluta två kuddar på kretskortet medan du driver kortet. De obligatoriska kuddarna visas på bilden ovan. Använd en pincett eller löd en liten tråd mellan dem.
När ESP8266 är i blixtläge bör kortets lysdiod inte blinka.
Se till att du har åtkomst till den seriella porten som öppnades med USB-UART-adaptern. På Linux är det förmodligen / dev / ttyUSB0, på Mac ska du söka efter något som "usbserial" eller "usbmodem" i kommandoutgången ls / dev / cu.* Eller ls / dev / tty.*, I Windows bör det vara COM3 eller högre. Installera USB-UART-adapterdrivrutinerna om det behövs.
Radera blixten med esptool. Byt ut /dev /ttyUSB0 för din port om det behövs:
esptool.py --port /dev /ttyUSB0 erase_flash
Du kan behöva köra esptool.py som en superanvändare för att komma åt den seriella porten.
Steg 3: Blinkar
Om raderingen lyckades, skär av strömmen, starta ESP8266 i blixtläget igen och blinka din inbyggda programvara:
esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash --flash_size = detect 0 esp8266-20170823-v1.9.2.bin
Om blinkningen lyckades, koppla bort kortets ström, anslut den igen utan att trycka på knappen och öppna den seriella porten i en terminal. På Linux och Mac kan du använda screen /dev /ttyUSB0 115200 (byt ut /dev /ttyUSB0 för din port om det behövs), i Windows kan du använda PuTTY (standardöverföringshastigheten är 115200). När du har anslutit trycker du på Enter, och om du ser tre vinkelparenteser i Python -skalet fungerar allt!
>> >>> help () Välkommen till MicroPython! Besök https://docs.micropython.org/en/latest/esp8266/ för online -dokument. Kör "importport_diag" för diagnostisk information som ska inkluderas i felrapporter. Grundläggande WiFi -konfiguration: importera nätverk sta_if = network. WLAN (network. STA_IF); sta_if.active (True) sta_if.scan () # Sök efter tillgängliga åtkomstpunkter sta_if.connect ("", "") # Anslut till ett AP sta_if.isconnected () # Kontrollera om anslutningen lyckades # Ändra namn/lösenord för ESP8266: s AP: ap_if = nätverk. WLAN (nätverk. AP_IF) ap_if.config (essid = "", authmode = nätverk. AUTH_WPA_WPA2_PSK, lösenord = "") Kontrollkommandon: CTRL-A-ange råa REPL-läge CTRL- på en tom rad B-på en tom rad, ange normalt REPL-läge CTRL-C-avbryt ett pågående program CTRL-D-på en tom rad, gör en mjuk återställning av kortet CTRL-E-på en tom rad, skriv in klistra in läge För ytterligare hjälp om ett specifikt objekt, skriv hjälp (obj) >>>
I nästa instruktioner kommer vi att beskriva hur man interagerar med Cloud4RPi -plattformen via ett MQTT -protokoll.
Rekommenderad:
Hur man laddar ner MicroPython -kod till XBee 3: 18 steg (med bilder)
Hur man laddar ner MicroPython -kod till XBee 3: MicroPython är ett programmeringsspråk inspirerat av Python 3.0 som fungerar på mikrokontroller, till exempel XBee 3. MicroPython kan hjälpa till att minska mängden leveranser och övergripande bulk i ditt projekt och göra saker mycket enklare . Jag tycker dock
Hur man använder MQTT med Raspberry Pi och ESP8266/sonoff: 4 steg
Hur man använder MQTT med Raspberry Pi och ESP8266/sonoff: Hej alla! Idag ska jag visa dig hur du konfigurerar en hallonpi och ESP8266 -baserad sonoff wifi -reläbrytare för att styra dina hushållsapparater från var som helst i världen. av denna instruerbara, om du noggrant har följt min instruktion,
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen
Hur man gör fjärrstyrd Spike Buster eller Switch Board med fristående Atmega328P: 6 steg (med bilder)
Hur man gör fjärrstyrd Spike Buster eller Switch Board med fristående Atmega328P: I det här projektet kommer jag att visa hur man bygger fjärrstyrd Spike Buster eller Switch Board med fristående Atmega328P. Detta projekt är byggt på ett anpassat kretskort med mycket få komponenter. Om du föredrar att titta på video har jag inbäddat samma eller
Hur man gör en touch -switch med One Mosfet: 4 steg (med bilder)
Hur man gör en beröringsbrytare med en Mosfet: HUR man gör en beröringsbrytare med bara en MOSFET -TRANSISTOR På många sätt är MOSFET bättre än vanliga transistorer och i dagens transistorprojekt kommer vi att visa hur man gör en enkel pekbrytare som kommer att ersätta normal omkopplare med h