Documentos

Descrições técnicas, especificações e notas para programadores e administradores de sistemas.

Para utilizadores

  • Guia do usuário — instalação da aplicação, carregamento do programa no controlador, emparelhamento, chaves de convidado, automação e segurança.
  • Configurador de controladores — a escolha de como o telemóvel e o controlador falam entre si.
    • Controlador BLE — recebe comandos por Bluetooth sem internet, funciona a pilhas e só dispara quando o telemóvel está por perto (ESP32 / S3 / C3 / C6).
    • Controlador pela internet — sempre online, abre o objeto de qualquer sítio (ESP32 / ESP8266 — Shelly Plus 1, NodeMCU, Wemos D1; Raspberry Pi Zero W / 3 / 4 / 5, Python e GPIO).
  • Integrações sem substituir o programa — Tasmota, ESPHome, Home Assistant e Shelly ligam-se através de um webhook do Entrixy.

Arquitetura e protocolos

  • Arquitetura v2 — o esquema geral cliente-servidor-controlador, os fluxos de dados e os formatos de mensagem.
  • Arquitetura E2EE — cifra de ponta a ponta: o que é cifrado e onde (AES-256-GCM no aparelho).
  • BLE — modelo de ameaças — o que um atacante à escuta do rádio pode e não pode fazer (ECDH X25519 com HMAC-SHA256).
  • BLE — sincronização da hora — como o controlador fica a saber a hora atual, para verificar a janela de validade das chaves de convidado.

Código-fonte do firmware e dos scripts

  • /esp32-example/ — o programa BLE (NimBLE, sono profundo). O modelo para o configurador /esp/ble/.
  • /esp32-ws-example/ — o programa Wi-Fi para o ESP32 (cliente WSS e relé). O modelo para o configurador /esp/socket/ em modo ESP32.
  • /integrations/esp8266/ — o programa Wi-Fi para o ESP8266. O modelo para o configurador /esp/socket/ em modo ESP8266.
  • /integrations/raspberry-pi/ — o script Wi-Fi em Python para o Raspberry Pi. O modelo para o configurador /esp/socket/ em modo Pi.
  • /integrations/nodejs/ — um cliente Wi-Fi em Node.js para servidores sem ecrã e routers OpenWRT. O configurador ainda não o compila, mas o protocolo é compatível.

Design e interface

  • Guia de design — a paleta, a tipografia e os componentes da aplicação.

Operação do servidor

Testes

  • Plano de testes — 191 cenários, 37 deles críticos para o servidor de produção. Cobre o emparelhamento BLE, a presença por WebSocket, as chaves de convidado, as condições geo/Wi-Fi/horário, os webhooks (telemóvel e servidor), a recuperação após reinício e a localização.