Construindo um sensor de ocupação com um ESP32 de US$ 5 e um banco de dados serverless
Um sensor de ocupação construído por um estudante usando um microcontrolador ESP32 de US$ 5 e beacons Bluetooth Low Energy provoca reflexões amplas sobre confiabilidade de hardware DIY, projeto de energia e embalagem de projetos além de placas de desenvolvimento nuas. Os comentaristas comparam variantes de ESP32, fontes de alimentação e estratégias de deep-sleep, sugerem alternativas como LoRa, mmWave, câmeras ou estruturas já existentes como ESPHome e Home Assistant, e debatem quando PCBs customizadas ou ASICs fazem sentido. Muitos levantam preocupações de privacidade e ética sobre rastrear telefones via BLE — especialmente em espaços públicos ou para uso comercial — destacando randomização de MAC, pesquisa de fingerprinting e a falta de regras claras para sensoriamento passivo de dispositivos.
Confiabilidade do hardware e energia
- Vários relatos de que placas ESP32 e Raspberry Pi podem ser muito confiáveis por meses, desde que alimentadas corretamente.
- Muitos suspeitam que a instabilidade venha de ruído na alimentação, não de amperagem insuficiente: picos de corrente de WiFi/BLE podem causar quedas breves de tensão.
- Recomendações: adicionar capacitores grandes de baixo ESR nos trilhos de 3,3 V, usar fontes de alimentação e cabos USB curtos/de alta qualidade ou oficiais, e evitar placas baratas sem marca.
- Alguns mencionam falhas de cartões SD em Pis; as mitigações incluem Alpine Linux com tmpfs/commits explícitos ou sistemas de arquivos raiz somente leitura.
Comportamento da detecção de presença BLE
- Dispositivos podem continuar “vivos” mas cair da rede WiFi; sugerem-se indicadores visíveis de status e reconexão agressiva ou reinicializações completas.
- Ambientes de RF muito movimentados, com muitas redes, podem aumentar a chance de a pilha WiFi/BLE travar.
- Dispositivos Apple frequentemente se ocultam de varreduras, a menos que certas configurações estejam abertas; isso reduz a cobertura de crowd-sensing baseada em BLE.
Privacidade, ética e rastreamento
- Discussão sobre randomização de endereços MAC e seus limites. Ela complica vincular beacons a indivíduos, mas não torna isso impossível, especialmente com fingerprinting de RF e rastreamento de beacons baseado em apps.
- Alguns observam uma indústria existente, estilo “velho oeste”, de SDKs de rastreamento por Bluetooth/localização e o uso desses dados por órgãos de aplicação da lei.
- Para projetos universitários, sugerem consultar processos de pesquisa com seres humanos/IRB e as políticas de privacidade do campus.
- O comportamento individual varia: alguns mantêm o Bluetooth sempre ligado por causa de wearables, outros o desligam por privacidade e bateria.
Algoritmos e pilha de software
- Sugestões de usar estimadores de cardinalidade de tamanho fixo para contar dispositivos únicos em vez de armazenar todos os IDs.
- Outros propõem mapas baseados em TTL (renovar ao detectar, remover entradas expiradas) e evitar alocação dinâmica em microcontroladores.
- O suporte a Rust no ESP32 melhorou (especialmente no C3 RISC-V), mas compilar cruzado com BlueZ/DBus no Linux pode ser trabalhoso; Python/Home Assistant ou scripts shell simples em Pis são citados como mais fáceis.
- ESPHome, Home Assistant e MicroPython podem eliminar a maior parte do firmware customizado para muitos casos de uso.
Abordagens e aplicações alternativas de sensoriamento
- Outras ideias de sensoriamento: câmeras, radar mmWave/UWB, radar de 24 GHz, microfones, RSSI de WiFi, radar traseiro de bicicleta para tráfego, TPMS para ocupação de campus e análises de público em veículos/locais.
- Existem produtos comerciais de ocupação baseados em BLE; eles relatam que a contagem de beacons se correlaciona com a ocupação, mas exige calibração específica do local, e MACs randomizados tornam as estimativas de tempo de permanência pouco confiáveis.
Produto final e caixas
- Há muitas opções para dispositivos “prontos”: caixas de projeto, gabinetes genéricos, módulos em caixa baseados em M5Stack/ESP, sensores prontos de prateleira, cases impressos em 3D ou cortados a laser.
- Há debate sobre usar módulos ESP32 versus MCUs ultrabaratos ou até ASICs personalizados; a maioria concorda que, para volumes baixos a médios, módulos ESP32 são práticos e amplamente usados em IoT comercial.