Automação residencial é bem simples – basta comprar um smart alguma coisa e controlar pelo aplicativo do fabricante ou pelo Google Home ou Alexa. Mas caso não queira depender de um servidor internet na Europa pra acender a luz da sala, você vai querer uma solução 100% local. Fazer isso ‘na unha’ com o ESPHome e Home Assistant é divertido, mas às vezes tudo que você precisa é um dispositivo compacto, barato e bem construído que já existe – tipo o Sonoff Mini R2 – mas rodando seu firmware customizado do ESPHome ao invés do software padrão.
Neste artigo vamos ver como instalar o firmware do ESPHome no Sonoff Mini R2 sem precisar abrir e soldar nada. Ao terminar você terá um dispositivo ESPHome nativo que pode se integrar ao Home Assistant ou funcionar independentemente, sem depender do app eWeLink ou da internet.
Importante: Se você está lendo até aqui deve saber por que quer o ESPHome e como ele vai se conectar no seu Smart Home. Se não sabe, não continue! Uma vez atualizado o firmware o Sonoff não vai mais funcionar no aplicativo eWeLink e você vai precisar reinstalar o firmware original pra continuar (e não vou explicar aqui como fazer isso). Também, saiba que embora seja super seguro etc., etc., etc., oficialmente seu Sonoff não vai estar mais sob garantia depois da troca do Firmware. Espera-se que você já tenha uma instalação de ESPHome funcionando antes de seguir estes passos.
Enquanto os dispositivos compatíveis com o ecossistema Tuya não facilitem em nada a vida de um Maker, a Sonoff foi na linha oposta e até encoraja que seus dispositivos sejam reprogramados. Tanto que a nova série de dispositivos, entre eles o Mini R2, suportem o Modo DIY – um jeito simples de aplicar firmware customizado sem precisar soldar pinos no microcontrolador.
1. Configure a rede Wi-Fi
- Pra começar, Ligue seu dispositivo à rede (110 ou 220v) usando os pinos Nin e Lin. Os cuidados de sempre se aplicam: cuidado com choques, não me responsabilizo, etc.

- Faça o reset do seu dispositivo – pra isso basta apertar o botão do Sonoff por 5 segundos até perceber a luz interna piscando.
- Usando um Notebook ou celular, conecte-se à rede ITEAD-xxx (onde XXX varia segundo cada aparelho). A senha é 12345678. Se receber um aviso de que não há conexão à Internet, ignore e mantenha a conexão Wi-Fi.
- Abra o navegador e digite o endereço: http://10.10.7.1
- Clique em Wifi Setting

- Informe o SSID e senha de uma rede Wi-Fi 2.4Ghz que o dispositivo consiga acessar. Não importa se a rede será diferente da rede final uma vez no ESPHome.
- Clique em Save. Depois de alguns segundos o dispositivo deve se conectar à rede informada e você vai receber uma mensagem de sucesso. Em caso contrário, revise os dados e repita.
2. Ative o modo DIY
Esta parte não é difícil, mas tem uns macetes pra dar certo. Para enviar um novo firmware OTA (Over the Air, ou seja, sem soldar) precisamos ligar o modo DIY do Sonoff, mas infelizmente essa configuração não está na interface gráfica. Vamos ter que mandar um comando http para isso.
- Descubra qual o endereço IP que o Sonoff está usando. Você pode descobrir isto olhando a lista de clientes DHCP no seu roteador.
- Crie uma conta no Postman e faça o login.
- No quadrante inferior direito da página do Postman, procure Start with Something New e clique em Create New, e daí em HTTP Request.

- Verifique na barra de status do Postman na parte inferior direita do Browser se o Desktop Agent está instalado. Se é sua primeira vez usando o Postman, você deverá instalá-lo clicando no link.

- Mude o método padrão de GET para POST, e no campo Enter a request URL digite:
http://192.168.xxx.yyy:8081/zeroconf/info
Ajuste o endereço IP acima conforme o IP que o Sonoff westá usando em sua rede. - Clique na aba Body, selecione raw, e cole o seguinte texto na caixa de texto:
{
"deviceid": "",
"data": { }
}
- Você deveria receber uma resposta do dispositivo informando a configuração atual, por exemplo:

Agora que confirmamos que conseguimos falar com o Sonoff pela interface Restful do modo DIY, vamos dar o comando que destrava a opção de subir um firmware OTA.
- Mude o endereço para http://192.168.xxx.yyy:8081/zeroconf/ota_unlock (lembre de atualizar para o IP correto).
- Em Body, cole o seguinte:
{ "deviceid": "", "data": { "otaUnlock": "on" } }
- Clique em Send. Depois de uns instantes, você deve receber a resposta com error: 0. Isto quer dizer que funcionou.
- Para confirmar que o modo OTA está habilitado, repita os passos acima para o zeroconf/info e verifique que a linha otaUnlock agora está true:

Agora estamos prontos para fazer o upload do firmware do ESPHome. Mas primeiro, precisamos prepará-lo!
3. Preparando o firmware no ESPHome
Como em qualquer firmware ESPHome, é possível fazer a atualização com facilidade pela interface gráfica usando o wi-fi. No entanto, para instalar o firmware do ESPHome pela primeira vez é necessário fazer usando uma ferramenta própria, como veremos à frente.
Nesta seção vou mostrar um firmware básico para o Sonoff Mini que me atende muito bem – mas você poderá ajustar conforme sua necessidade.
Você pode usar o firmware daqui ou daqui. O primeiro link é minha configuração – o segundo são exemplos do site do ESPHome.
- Crie um novo dispositivo na interface do ESPHome – não se preocupe em digitar o SSID e senha corretos.
- Após a mensagem de Configuration Created, clique no botao Edit

- Cole o código do firmware desejado.
- Modifique o código para sua necessidade. Por exemplo, você precisará editar o SSID e senha na seção wifi, além de escolher um nome adequado para o dispositivo.
- Clique em Save e em seguida em Install.
- Selecione a opção Manual Download para a instalação inicial. Aguarde a compilação terminar.

- Caso o arquivo não baixe automaticamente no término da compilação, clique em Download e salve o arquivo .bin localmente.

4. Fazer upload do firmware ESPHome
Chegou a hora de fazer o upload do firmware do ESPHome no Sonoff Mini R2! É possível fazer o upload diretamente pela interface REstful, mas eu gosto mais de como vamos fazer aqui.
- Faça o download da ferramenta Sonoff DYI tool
- Abra a ferramenta. O seu dispositivo deve aparecer na lista.
- Clique nos botões On e Off e confirme que o Relê no Sonoff opera normalmente.

- Clique em Firmware Flash. Daí clique em Import Firmware e selecione o arquivo .bin que foi gerado no passo anterior.
- Verifique se o ID do device é o correto, daí clique em Flash device list.
- Leia o aviso, medite no que você está a ponto de fazer lembrando que a partir daqui seu Sonoff não vai mais funcionar pelo aplicativo eWeLink. (Você foi avisado. Mas coragem! Dos covardes a história não fala!)
- Clique em Ok
- Esta telinha é meio chata – talvez você tenha que tentar mais de uma vez. Se a barra de progresso não começar a se mexer em poucos segundos, feche a janela DIY Flash Firmware Tool, selecione novamente o dispositivo e tente mais uma vez.

- Uma vez que o formware tenha sido instalado, você verá esta mensagem:

- Verifique que o dispositivo aparece online no dashboard do ESPHome. Parabéns! Seu Sonoff agora é um dispositivo ESPHome nativo!
5. Adicionando o dispositivo ao Home Assistant
A esta altura tudo que falta é adicionar o dispositivo ao Home Assistant. Se ele não detectar automaticamente o dispositivo e lhe mostrar uma notificação para que você o adicione com um clique, faça o seguinte:
No Home Assistant:
- Abra Configurações
- Abra Dispositivos e Serviços
- Selecione o dispositivo descoberto clicando em Configurar

Prontinho! Agora você pode usar as entidades da mesma maneira como faria com qualquer outro dispositivo.

Seguem algumas das referências consultadas para preparar este guia:
- Referência de API DYI da Sonoff
- Meu repositório de scripts ESPhome
- https://www.randomdiyprojects.it/flash-esphome-on-a-sonoff-r2-mini-using-ota-diy-mode/
- https://www.esphome-devices.com/devices/Sonoff-Mini-Relay
- https://blog.lukaskukacka.com/smarthome/2020/09/09/sonoff-mini-firmware-3.6-flashing-tasmota.html