
ESPectre - Sistema de detecção de movimento baseado na análise do espectro Wi-Fi (CSI), com integração com o Home Assistant.
Transforme um ESP32 num sensor de movimento Wi-Fi privado e local.
Quando alguém se move por uma sala, altera a forma como os sinais Wi-Fi a atravessam. O ESPectre lê essas alterações e reporta movimento em tempo real. Sem câmara, sem microfone, sem wearable e sem hardware de radar dedicado: apenas um ESP32 suportado e a rede Wi-Fi já existente na sala.
ESPectre é uma plataforma de código aberto que reúne firmware pronto a gravar, um SDK C++ incorporável, uma implementação em MicroPython, ferramentas de browser, um CLI de anfitrião, um conjunto de dados aberto, pesos de modelo abertos e o fluxo de trabalho de investigação utilizado para construir e validar os detetores.
Grave a partir do browser · Veja as ferramentas ao vivo · Leia a documentação · Explore o SDK
O ESPectre pode ligar um ecrã ou luzes quando deteta movimento, ajustar aquecimento e arrefecimento em resposta à atividade na sala, acionar um alarme ou notificação quando ocorre movimento numa área que deveria estar vazia, e conduzir outras automações de sala. Liga-se ao Home Assistant através de ESPHome ou MQTT, expõe um sensor de ocupação Matter padrão e uma API HTTP Direta local, e pode ser incorporado em firmware ESP32 personalizado através do SDK C++.
O ESPectre processa CSI no dispositivo e reporta um estado de movimento e uma pontuação de movimento. As aplicações podem reagir sem enviar dados brutos de deteção para um serviço na nuvem. Uma placa cobre uma área de deteção; a cobertura ao nível da sala normalmente requer uma placa por sala.
O ESPectre deteta alterações no ambiente de rádio. Não identifica pessoas, não as conta, não prova que uma sala está vazia, nem substitui um sistema de segurança, médico ou de emergência certificado.
Nativo, ESPHome e Matter podem escolher entre um detetor lightweight, que aprende um limiar específico da sala no arranque e deixa mais recursos para o resto da aplicação, e um detetor high_accuracy, que executa o modelo treinado incluído no repositório. O seu comportamento e os compromissos medidos estão documentados em SETUP.md, ALGORITHMS.md e no relatório de desempenho.
O caminho mais rápido usa o browser e não requer ambiente de compilação local. Use Chrome 151 ou posterior no desktop para o fluxo de trabalho hospedado completo. O Edge suporta gravação via browser, mas a compatibilidade com Device settings e Monitor não é garantida:

Estado do Matter: O frontend Matter ainda está a ser validado em ecossistemas de controladores. Um controlador pode suportar sensores de ocupação Matter padrão sem ter sido testado com o firmware atual. Consulte Compatibilidade de controladores Matter para a matriz atual.
Para compilações locais, gravação a partir deste repositório e o resto do caminho de operador, comece com SETUP.md. O wrapper do repositório expõe os fluxos de trabalho disponíveis através de:
./espectre --help
O ESPectre publica os ativos de investigação e as evidências de validação por detrás dos seus detetores:
Um sensor que pode revelar presença não deveria ser uma caixa negra. A deteção Wi-Fi evita imagens e áudio, mas os dados de movimento e ocupação podem ainda assim revelar rotinas, sono ou ausência de casa. O ESPectre trata esse risco como parte do trabalho de engenharia:
Use o ESPectre apenas em espaços e redes onde tenha o direito de o implantar. Informe as pessoas afetadas, obtenha consentimento quando exigido, proteja o acesso ao dispositivo e aos seus dados e cumpra as leis de privacidade aplicáveis.
network.WLAN principal.O código de primeira parte do ESPectre está disponível sob GPLv3, e partes elegíveis também estão disponíveis sob um acordo comercial separado:
Os termos de terceiros e os artefactos de conformidade específicos da compilação estão descritos em THIRD_PARTY_NOTICES.md.
| Caminho | Melhor para | Comece aqui |
|---|
| Nativo | Sensores autónomos, integrações MQTT, incluindo Home Assistant MQTT Discovery, e aplicações personalizadas | Frontend nativo |
| ESPHome | Utilizadores de Home Assistant que pretendem entidades nativas, aprovisionamento ESPHome e atualizações Device Builder | Frontend ESPHome |
| Matter | Controladores Matter com suporte para sensor de ocupação; a validação de controladores ainda é limitada | Frontend Matter |
| Micro-ESPectre | Deteção leve em MicroPython com monitorização HTTP Direta local e só de leitura | README Micro-ESPectre |
| Tópico | O que cobre | Guias |
|---|
| Instalar e operar | Configuração do dispositivo, fluxos de trabalho CLI e ajuste do detetor | SETUP.md, CLI.md, TUNING.md |
| Compreender e integrar | Arquitetura de runtime, API, descoberta, algoritmos e o SDK C++ | ARCHITECTURE.md, API.md, DISCOVERY.md, ALGORITHMS.md, SDK.md |
| Recolher e treinar | Recolha de CSI, treino de modelos, histórico de características, desempenho e literatura | ML_DATA_COLLECTION.md, ML_TRAINING.md, FEATURES.md, relatório de desempenho, LITERATURE.md |
| Investigação e direção | Roadmap, decisões de arquitetura e histórico de lançamentos | ROADMAP.md, índice ADR, CHANGELOG.md |
| Referência de frontends | READMEs de caminhos de firmware para ESPHome, Nativo, Matter e Micro-ESPectre | ESPHome, Nativo, Matter, Micro |
| Contribuir | Como contribuir e onde discutir o projeto | CONTRIBUTING.md, GitHub Discussions |
| Ativo | O que lhe dá | Comece aqui |
|---|
| Conjunto de dados CSI | Gravações reais para salas vazias, presença estática e movimento, com catálogo e proveniência em dataset_info.json | data/ |
| Pesos de modelo | Pesos treinados em C++ e Python, além do fluxo de trabalho de treino, exportação e validação | ML_TRAINING.md |
| Registo de características | Características que foram testadas, promovidas ou rejeitadas, incluindo experiências sem sucesso | FEATURES.md |
| Algoritmos e relatórios | Comportamento do detetor, o relatório de desempenho gerado e o relatório de qualidade do conjunto de dados | ALGORITHMS.md |
| Literatura e direção | Investigação externa, registos de decisão de arquitetura e o roadmap público | LITERATURE.md |