HA em RPI - "Caos" ao ficar sem internet

Boas tardes,

Recentemente comecei a criar a minha casa inteligente, com um RPI 4 (2GB), Raspbian, docker, home assistant, Mosquito, Zigbee2mqtt, …

Ainda tenho poucas coisas, pois comecei por controlar o aquecimento central através de um Xiaomi BLE Temperature and Humidity Sensor, um Sonoff Dual R2 com tasmota a controlar electro-válvulas (e dois ds18b20 a controlar temps do cilindro de AQS e da Caldeira), uma tomada Blitzwolf bw-shp2 para a resistência do cilindro de AQS, mais dois sensores de temperatura e humidade xiaomi zigbee e mais um sonoff basic com tasmota agora para as luzes de natal no exterior da casa!

Tudo a funcionar como deve ser (com algumas falhas do BLE temperature) até que este fim de semana fiquei sem internet! Como tenho tudo sem depender de servidores externos, pensei que não haveria falhas, mas a falta de um RTC no raspberry e restantes equipamentos deu barraca. Sem internet, eles não vão acertando o relógio e começou a haver diferenças entre equipamento não funcionando automatizações, e o pior de tudo, existindo uma falha de energia eles perdem a info do relógio, chegamos a casa e as luzes de natal estão desligadas e os filhos reclamam!

Dúvida:
É possível adicionar um RTC (tenho em casa um DS1302 disponível) ao Raspberry Pi e com isto mantê-lo sempre com o relógio certo e fazer os Tasmotas sincronizar com o RPI?

Alguma dica ou outra solução para poder funcionar totalmente offline?

Caso tenhas no RPi a timezone bem configurada
https://howchoo.com/g/njnlzjmyyjg/how-to-set-the-timezone-on-your-raspberry-pi como também a timezone no HA de forma correcta https://www.home-assistant.io/blog/2015/05/09/utc-time-zone-awareness/ isso não deveria acontecer. Tens isso bem configurado?

Tens aqui um tutorial, mas usa o DS1307:


Futuramente, um NUC é a melhor opção.

O rpi, partindo do princípio que não perdeu alimentação, não precisa de rtc para nada quando já arrancou… Provavelmente o que te aconteceu foi que os outros devices, por algum motivo, perderam as horas e, como não tens um servidor de NTP local configurado, deu barraca… Basta que configures servidor ntp local no rpi, por exemplo é, a menos que ele perca energia, tens o problema resolvido…

Mas atendendo ao problema, o que me parece é que o sistema teve uma falha de energia e reiniciou tudo, sem acesso ao NTP… Uma Ups e servidor NTP no rpi seriam uma excelente ideia! :wink:

1 Like

Bons dias!

No RPI tenho as Timezones bem configuradas e enquanto houve Internet não falhou (raio de camião alto que rebentou a fibra). Já nos Tasmotas, estava com uma hora de diferença, que só detectei usando o cmd: Status 7.

Problema mesmo deve ter sido o que o Nuno disse, e alguma falha de energia levaram que os outros dispositivos perdesses as horas. Fiquei também com a impressão que o RPI se desacertou alguns minutos, mas posso estar enganado. Na dúvida acertei todos manualmente.

Por 1€, acho que vou também seguir o tutorial que o Filipe partilhou e o RTC que tenho em stock volta para a gaveta. Este é mais pequeno, encaixa diretamente no GPIO e simples de configurar. Ao menos em caso de falha de energia o RPI não perde as horas.

Depois vou ter de configurar o servidor de NTP no RPI e nos Tasmotas configurar como clientes deste. Um simples pormenor que ficou esquecido e que faz diferença.

Obrigado pelas dicas! Fica também de exemplo para quem quer um sistema semelhante que funcione totalmente offline.

@Peixeiro quase todos os routers dos operadores (senão mesmo todos) funcionam como servidor de NTP para a rede interna. Podes testar o teu se mudares a hora a um equipamento com Tasmota e depois configurares o servidor de NTP com o IP do teu router.

1 Like