Firmware Sonoff Basic via Raspberry Pi

Este manual não pretende ser novo. O texto acima é bastante google (embora em inglês), mas durante muito tempo eu estava procurando por onde começar e decidi ajudar aqueles que embarcam no caminho da comunicação com Sonoff.

Existem muitas análises do Sonoff Basic na Internet, inclusive em russo, e também há artigos sobre como conectá-lo aos sistemas locais Smart Home após a atualização.
Portanto, se você não possui o USB-UART (ainda não é da China) e a unidade Sonoff já está lá e existe um Raspberry Pi, este artigo é para você.

Aqui, se você já tentou encontrar informações sobre como atualizar esta unidade chinesa, percebeu que não pode ficar sem um ferro de soldar. Para começar, é necessário soldar o pente para conectar nossa unidade ao Raspberry Pi.



Em seguida, conectamos o Sonoff Basic (depois de desconectá-lo de 220V) ao Raspberry Pi, como é mostrado na figura (tirei a foto, assim como as informações aqui , e dou aqui, consequentemente, uma breve tradução).



A primeira coisa a fazer é verificar se você possui uma porta ttyS0.

ls /dev/ 

Se não estiver lá, mas houver ttyAMA0 (como no artigo acima), isso não significa que está tudo bem com você (lembro que estamos falando sobre o Raspberry Pi 3 b +), porque ttyAMA0 - responsável pelo bluetooth. Isso significa que precisamos entrar nas configurações:

 sudo raspi-config 

e em "Opções de interface", ative "Serial" e reinicie.

Em seguida, prepare a framboesa:

 sudo systemctl stop serial-getty@ttyS0.service sudo systemctl disable serial-getty@ttyS0.service 

E edite cmdline.txt, a saber, exclua "console = serial0,115200":

 sudo cp /boot/cmdline.txt /boot/cmdline.bak sudo nano /boot/cmdline.txt 

Além disso, é recomendável atribuir "enable_uart = 1" logo abaixo (é claro, sem aspas). Para ser sincero, não sei o que acontecerá se isso não for feito.

Em seguida, instale o pip (se necessário) e o esptool.py:

 sudo apt-get install python-pip sudo pip install esptool 

Reinicie o Raspberry.

Faça o download do firmware (usei o ESPEasy build 120 como uma versão estável, mas em geral tudo também é verdadeiro para outros firmware):

 wget http://www.letscontrolit.com/downloads/ESPEasy_R120.zip 

Depois de verificar se você está na pasta em que deseja baixar e descompacte o firmware.

 unzip ESPEasy_R120.zip 

E deve obter uma lista de arquivos:

 ESPEasy_R120_1024.bin ESPEasy_R120_512.bin esptool.exe Source ESPEasy_R120_4096.bin ESPEasy_R120.zip flash.cmd 

Em seguida, desconecte o Sonoff de 3,3V, segure o botão na placa (existe apenas um botão - não misture), conecte-o a 3,3V.

Fazemos um backup do firmware (e de repente queremos retornar mais tarde, e o firmware é exclusivo para cada bloco).

 sudo esptool.py --port /dev/ttyS0 read_flash 0x00000 0x100000 Sonoff_backup_01.bin 

Desconecte Sonoff de 3,3V, segure o botão na placa, conecte-se a 3,3V. Nós apagamos a memória:

 sudo esptool.py --port /dev/ttyAMA0 erase_flash 

Desconecte Sonoff de 3,3V, segure o botão na placa, conecte-se a 3,3V. Firmware (levamos o firmware a 1 MB, a menos que você tenha soldado novamente a memória do seu bloco):

 sudo esptool.py --port /dev/ttyS0 write_flash -fm dout 0x0 ESPEasy_R120_1024.bin 

Bem, em geral, e isso é tudo, você teve que atualizar seu dispositivo.

Quando o módulo é iniciado pela primeira vez, a rede wifi “ESP_0” e a senha da rede “configesp” aparecerão. Você precisa se conectar a ele, após o qual será redirecionado automaticamente para a página de configurações, onde precisará inserir informações sobre sua rede wifi existente, à qual o sonoff deve ser conectado como um cliente.

Você também pode configurar o wifi com o comando:

 sudo miniterm.py /dev/ttyS0 115200 -e 

É necessário entrar (sem prestar atenção ao terminal, que ficou furioso depois de entrar no SSID, ou depois de esperar 3 segundos até Sonoff se acalmar):

 ssid yourSSID password yourPassword 

Source: https://habr.com/ru/post/pt442310/


All Articles