Mündəricat:

ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar: 3 addım (şəkillərlə)
ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar: 3 addım (şəkillərlə)

Video: ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar: 3 addım (şəkillərlə)

Video: ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar: 3 addım (şəkillərlə)
Video: Обзор панели умного дома NSPanel от компании Sonoff. Dashboard для устройств Sonoff. 2024, Iyul
Anonim
ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar
ESP8266 əsaslı Sonoff Smart Switch -də MicroPython Firmware -ni necə yandırmaq olar

Sonoff nədir?

Sonoff, ITEAD tərəfindən hazırlanmış Smart Home üçün bir cihaz xəttidir. Bu xəttin ən çevik və ucuz cihazlarından biri Sonoff Basic və Sonoff Dual -dır. Bunlar əla bir çip olan ESP8266 əsasında qurulmuş Wi-Fi açarlarıdır. Sonoff infrastrukturu əsas istifadəçilər üçün olduqca yaxşı işləsə də, digərləri bu aparatı sındırmaq və öz kodlarını işə salmaq istəyə bilər. Sonoff Smart Switch -in aparatı, aşağı qiyməti nəzərə alınmaqla heyrətamizdir:

  • 1MB flaşlı ESP8266
  • 220V AC inteqrasiya edilmiş güc adapteri
  • 10A Relay (və ya Sonoff Dual -da iki)
  • Yerüstü LED (və ya Sonoff Dual -da ikisi)
  • Daxili Düymə

Sevdiyiniz proqramlaşdırma dilindən istifadə edərək bu qurğunun üzərində tam nəzarət etmək istəyirsinizsə, bu dərs sizin üçündür.

Addım 1: Hardware Hacking

Avadanlıq Hacking
Avadanlıq Hacking
Avadanlıq Hacking
Avadanlıq Hacking
Avadanlıq Hacking
Avadanlıq Hacking

ESP8266 serial port vasitəsilə proqramlaşdırılmışdır. Həm Sonoff Basic, həm də Sonoff Dual PCD -də var.

USB-UART adapterini asanlıqla bağlamaq üçün PCB-də pin başlığını lehimləməyiniz lazım ola bilər.

Addım 2: Proqramı sındırmağa hazırlaşırıq

Proqramı sındırmağa hazırlaşır
Proqramı sındırmağa hazırlaşır

Pythonu sevirəm, buna görə MicroPython firmware -dən istifadə edəcəyəm. İstənilən dəstəklənən SDK -dan da istifadə edə bilərsiniz. Xüsusi Sonoff firmware əvəzinə MicroPython -un yanıb -sönməsinə davam edək:

ESP8266 -nın yanıb sönməsini asanlaşdıran esptool python paketini quraşdırın:

pip esptool qurun

MicroPython yükləmə səhifəsindən ən son sabit MicroPython firmware -ni yükləyin. USB-UART adapterini lövhəyə qoşun. Təhlükəsizlik üçün lövhəni 220V AC prizindən yox, adapterdən gücləndirmək məsləhətdir. Unutmayın ki, yalnız 3.3V istifadə edə bilərsiniz, ESP8266 çipini 5V güc mənbəyinə bağlasanız, öləcək.

ESP8266 -ı Flaş Moduna yükləyin. Cihazı açarkən GPIO0 pinini aşağı çəkərək bunu edə bilərsiniz:

  • Sonoff Basic -də GPIO0 sadəcə düymədir. USB-UART adapterini düyməni basıb kompüterinizə qoşun və Flaş rejimindəsiniz.
  • Sonoff Dual -da işlər bir az daha çətindir. Lövhəyə enerji verərkən PCB -də iki yastığı qısaqapanmaq lazımdır. Lazım olan yastıqlar yuxarıdakı şəkildə göstərilmişdir. Cımbız istifadə edin və ya aralarında kiçik bir tel qoyun.

ESP8266 Flaş Modunda olduqda lövhənin LED -i yanıb sönməməlidir.

USB-UART adapteri tərəfindən açılan serial portuna daxil ola biləcəyinizə əmin olun. Linuxda ehtimal ki / dev / ttyUSB0, Mac -da ls / dev / cu.* Və ya ls / dev / tty.* Əmrində "usbserial" və ya "usbmodem" kimi bir şey axtarmalısınız, Windows -da COM3 olmalıdır və ya daha yüksək. Gerekirse USB-UART adapter sürücülərini quraşdırın.

Esptool istifadə edərək flaşı silin. Gerekirse portunuz üçün /dev /ttyUSB0 dəyişdirin:

esptool.py --port /dev /ttyUSB0 erase_flash

Serial porta daxil olmaq üçün esptool.py faylını super istifadəçi olaraq işə salmalı ola bilərsiniz.

Addım 3: Yanıp sönmə

Yanıp sönür
Yanıp sönür

Silmə müvəffəqiyyətli olarsa, lövhənin gücünü kəsin, ESP8266 -nı Flaş rejimində yenidən yükləyin və proqram təminatını yandırın:

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

Yanıp sönmə müvəffəqiyyətli olarsa, lövhənin gücünü kəsin, düyməyə basmadan yenidən bağlayın və terminalda serial portunu açın. Linux və Mac -da ekran /dev /ttyUSB0 115200 -dən istifadə edə bilərsiniz (lazım olduqda portunuz üçün /dev /ttyUSB0 -u əvəz edin), Windows -da PuTTY -dən istifadə edə bilərsiniz (standart baud dərəcəsi 115200). Bağlandıqdan sonra Enter düyməsini basın və Python qabığının üç açılı mötərizəsini görürsünüzsə, hər şey işləyir!

>> >>> yardım () MicroPython -a xoş gəldiniz! Onlayn sənədlər üçün https://docs.micropython.org/en/latest/esp8266/ ünvanına daxil olun. Səhv hesabatlarına daxil edilməli olan diaqnostik məlumatlar üçün 'import port_diag' icra edin. Əsas WiFi konfiqurasiyası: idxal şəbəkəsi sta_if = network. WLAN (network. STA_IF); sta_if.active (True) sta_if.scan () # Mövcud giriş nöqtələrini axtarın sta_if.connect ("", "") # Bir AP -yə qoşulun sta_if.isconnected () # Uğurlu əlaqəni yoxlayın # ESP8266 -nın AP -nin adını/şifrəsini dəyişdirin: ap_if = network. WLAN (network. AP_IF) ap_if.config (essid = "", authmode = network. AUTH_WPA_WPA2_PSK, parol = "") Nəzarət əmrləri: CTRL-A-boş sətirdə xam REPL rejiminə daxil olun CTRL- B-boş bir sətirdə normal REPL rejiminə daxil olun CTRL-C-işləyən proqramı kəsin CTRL-D-boş bir sətirdə, lövhənin yumşaq sıfırlamasını edin CTRL-E-boş bir sətrə yapışdırıb daxil edin mode Müəyyən bir obyektlə bağlı əlavə yardım üçün help (obj) >>> yazın

Növbəti təlimatda, Cloud4RPi platforması ilə MQTT protokolu ilə necə qarşılıqlı əlaqə quracağımızı izah edəcəyik.

Tövsiyə: