Menu
Início Artigos {{t.nav.bookmarks}} {{t.nav.experience}} {{t.nav.profiles}} Sobre Trabalhe Comigo
Raspberry Pi and smart home components
Casa Inteligente 1 mar, 2026 • 20 min de leitura

Operação Casa Inteligente: Briefing de Missão Pai e Filho

Today my son and I execute our smart home plan. Raspberry Pi 5, follow-me lighting, WiFi sensing. The hardware's ready, the code's tested. Time to build.

Compartilhar:
Lee Foropoulos

Lee Foropoulos

20 min de leitura

Continue where you left off?
Text size:

Contents

Sabe do que o mundo já tem de sobra? Gente que fala sobre o que vai fazer um dia. Sonhadores sentados sem fazer nada, esperando o momento perfeito, a configuração perfeita, o que quer que seja perfeito. Enquanto isso, a vida continua passando.

"Senti mais uma vez como a felicidade é simples e frugal: um copo de vinho, uma castanha assada, um braseiro miserável, o som do mar. Nada mais." Nikos Kazantzakis, Zorba, o Grego

Zorba não esperou. Zorba dançou. Zorba fracassou de forma espetacular e riu disso. Quando sua grande operação de mineração desabou, literalmente desabou, ele agarrou uma garrafa de vinho e começou a dançar na praia. Melhor fracassar como Zorba do que ficar sentado sem fazer nada.

Então hoje, meu filho e eu executamos. O plano está traçado. O hardware está preparado. A maioria já foi testada individualmente: as automações funcionam, os sensores detectam, o código compila. Agora vamos ver se tudo funciona junto. Algo vai dar errado? Provavelmente. Estamos preparados para desafios? Com certeza. Essa é a parte divertida.

Melhor fracassar como Zorba do que ficar sentado sem fazer nada.

Sem plano, não existe caminho. Só gente falando para ouvir a própria voz. Só sonhos. Isto não é um sonho. Isto é um briefing de execução.

A Missão

Quando estivermos fazendo churrasco hoje à noite, esta casa vai:

  • Acender as luzes no cômodo em que você entrar, e diminuí-las quando sair
  • Trancar todas as portas quando a cama detectar que fomos dormir
  • Fechar a garagem automaticamente quando esquecermos (de novo)
  • Ajustar a climatização com base em quais cômodos estão realmente ocupados
  • Gerar ruído WiFi para que ninguém de fora possa usar a mesma tecnologia de sensing contra nós

E a Amazon não vai saber de nada. Tudo roda localmente. Sem nuvem. Sem assinaturas. Sem coleta de dados.

O Arsenal (Já Posicionado)

O Cérebro: Raspberry Pi 5 - PRONTO

Esse cara está na minha mesa há duas semanas, totalmente configurado, esperando por hoje. Pi 5 é exagero para automação residencial básica. Eu gosto de exagero. Está rodando Raspberry Pi OS Lite, Docker está instalado, Portainer está funcionando. Tudo que tenho que fazer é plugar onde vai ficar.

Escolhi o kit Argon ONE V3 M.2 NVME PCIE Case. Já montado:

  • M.2 SSD com OS flasheado (nada de falhas de cartão SD para nós)
  • Docker + Portainer instalados e testados
  • Container do Home Assistant pronto para deploy
  • IP estático atribuído na rede

Checklist Pré-Voo - COMPLETO

  • ☑ Raspberry Pi OS Lite flasheado no SSD
  • ☑ SSH habilitado, credenciais configuradas
  • ☑ Rede configurada com IP estático
  • ☑ Docker + Portainer rodando
  • ☑ Arquivos de configuração do Home Assistant preparados

Os Sensores: Placas ESP32 - FLASHEADAS E TESTADAS

Essas pequenas placas ESP32 foram a parte mais divertida. Meu filho e eu passamos o fim de semana passado flasheando e assistindo os dados de sinal WiFi chegarem. Funcionam. Confirmado.

  1. Unidade WiFi Sensing - Detecta movimento medindo a perturbação do sinal WiFi. Testada andando pela sala de estar; detecta movimento através de paredes, num raio de 4,5 a 6 metros.
  2. Unidade WiFi Fog - Gera ruído para cegar qualquer WiFi sensing externo. Rodando em isolamento, criando um belo caos no espectro de sinais.

Hoje integramos tudo no Home Assistant e vemos se as automações disparam corretamente. O código funciona nos testes. A questão é: funciona quando tudo está conectado?

(Se quiser o contexto de por que isso importa, leia meus artigos sobre WiFi sensing e contramedidas WiFi.)

A Infraestrutura Existente - JÁ INSTALADA

Não estamos começando do zero. A casa já tem coisas inteligentes, só que rodando em apps separados como ilhas desconectadas. Hoje unificamos o reino:

  • Lâmpadas Philips Hue - Já instaladas em toda a casa. Atualmente controladas pelo app Hue. Hoje: Home Assistant assume.
  • Termostato Ecobee - Já sabe quais cômodos estão ocupados pelos seus sensores. Hoje: integramos esses dados.
  • Cama Eight Sleep - Já rastreia quando estou dormindo. Hoje: ela dispara a automação de lockdown.
  • Fechaduras Kwikset (Z-Wave) - Já nas portas. Hoje: aprendem a se trancar sozinhas.
  • Garagem MyQ - Já instalada. Hoje: nunca mais voltar para casa porque esqueci de fechar.

O ponto é: Você provavelmente já tem mais equipamentos de casa inteligente do que imagina. Eles só não estão se comunicando ainda.

Dashboard de automação residencial
Até hoje à noite: tudo unificado num único dashboard

Fase 1: Infraestrutura (FEITO)

Esse foi o trabalho do fim de semana passado. Se estiver acompanhando depois, aqui está o que fizemos. Se leu meu artigo sobre Docker, sabe por que containerizamos tudo.

bash
1# Docker + Portainer - Already running
2curl -fsSL https://get.docker.com | sh
3sudo usermod -aG docker $USER
4
5docker volume create portainer_data
6docker run -d -p 9000:9000 --name portainer \
7  --restart=always \
8  -v /var/run/docker.sock:/var/run/docker.sock \
9  -v portainer_data:/data \
10  portainer/portainer-ce

Portainer está ativo em http://raspberrypi.local:9000. GUI bonita para gerenciar containers. Verificado.

Fase 2: Home Assistant (PRIMEIRA TAREFA DE HOJE)

O arquivo docker-compose está escrito. O diretório de configuração está preparado. Hoje subimos para valer e começamos a conectar dispositivos.

yaml
1# docker-compose.yml - ready to deploy
2version: '3'
3services:
4  homeassistant:
5    container_name: homeassistant
6    image: ghcr.io/home-assistant/home-assistant:stable
7    volumes:
8      - /home/pi/homeassistant:/config
9      - /etc/localtime:/etc/localtime:ro
10    restart: unless-stopped
11    privileged: true
12    network_mode: host

O plano: Rodar docker-compose up -d, abrir o assistente de configuração e conectar essas integrações uma a uma:

  • Philips Hue - Deve ser auto-descoberto na rede
  • Ecobee - Fluxo OAuth, preciso ter o app à mão
  • Eight Sleep - Integração por API, credenciais prontas
  • Z-Wave - Essa pode ser picante, fechaduras são temperamentais
  • MyQ - Simples, já fiz antes
  • ESPHome - Para os dispositivos ESP32 que flasheamos no fim de semana passado

Desafio esperado: Z-Wave. Fechaduras sempre têm atitude. Vamos ver.

Close-up de uma placa de circuito com componentes eletrônicos
Placas ESP32 flasheadas, testadas e prontas para integração

Fase 3: Integração WiFi Sensing (A PARTE DIVERTIDA DE HOJE)

A Unidade de Sensing - PRONTA PARA CONECTAR

No fim de semana passado, meu filho assistiu pelo monitor serial enquanto essa coisa detectava eu andando pela sala. As palavras exatas dele: "Pai, isso é assustador e incrível."

O ESP32 já está flasheado com ESPHome. Já está detectando movimento via WiFi CSI (Channel State Information). Hoje plugamos no Home Assistant e damos um nome: binary_sensor.living_room_occupied

O teste: Entrar na sala de estar. O Home Assistant vê? Se sim, estamos no negócio.

A Unidade Fog - CAMADA DE PRIVACIDADE PRONTA

O segundo ESP32 roda o gerador de ruído do meu artigo de contramedidas. Está rodando no meu banco há uma semana, gerando um belo caos no espectro WiFi.

Sim, estamos usando WiFi sensing para nossa própria automação enquanto simultaneamente nos protegemos de outros fazendo o mesmo contra nós. Não é hipocrisia. É segurança operacional. E meu filho acha que é a coisa mais legal do mundo.

Expansão Futura: 3+3

O objetivo de hoje é provar o conceito com um sensor e um dispositivo fog. Uma vez confiantes:

  • 3 dispositivos de sensing: Sala, cozinha, quarto
  • 3 dispositivos fog: Distribuídos pela casa para cobertura completa

São cerca de $50 em placas ESP32 para uma atualização de toda a casa. Mas primeiro, vamos garantir que hoje funcione.

$50
Custo total das placas ESP32 para cobertura WiFi sensing de toda a casa com 3 sensores e 3 dispositivos fog.

Fase 4: As Automações (O OBJETIVO PRINCIPAL)

É para isto que tudo foi construído. Esses arquivos YAML estão escritos, testados na minha cabeça centenas de vezes, e prontos para colar. Vão funcionar de primeira? Vamos descobrir.

Automação 1: Iluminação Follow-Me (O ESPETÁCULO)

A visão: Entre num cômodo e as luzes se acendem para recebê-lo. Saia, e elas diminuem atrás de você como um mordomo respeitoso. A casa do Tony Stark. Esse é o objetivo.

A nuance: Se você acendeu uma luz manualmente, o sistema deixa como está. Sua escolha é respeitada. Rastreamos isso com helpers input_boolean. Porque nada é pior do que automação que briga com você.

yaml
1# configuration.yaml additions
2input_text:
3  last_occupied_room:
4    name: "Last Occupied Room"
5    initial: "none"
6
7input_boolean:
8  living_room_auto_triggered:
9    name: "Living Room Auto Triggered"
10  kitchen_auto_triggered:
11    name: "Kitchen Auto Triggered"
12  bedroom_auto_triggered:
13    name: "Bedroom Auto Triggered"

Agora a automação:

yaml
1# automations.yaml
2- alias: "Follow Me - Living Room Entry"
3  trigger:
4    - platform: state
5      entity_id: binary_sensor.living_room_occupied
6      to: "on"
7  condition:
8    - condition: state
9      entity_id: light.living_room
10      state: "off"
11  action:
12    # Dim the previous room if it was auto-triggered
13    - choose:
14        - conditions:
15            - condition: template
16              value_template: "{{ states('input_text.last_occupied_room') == 'kitchen' }}"
17            - condition: state
18              entity_id: input_boolean.kitchen_auto_triggered
19              state: "on"
20          sequence:
21            - service: light.turn_on
22              target:
23                entity_id: light.kitchen
24              data:
25                brightness_pct: 20
26                transition: 3
27    # Turn on current room
28    - service: light.turn_on
29      target:
30        entity_id: light.living_room
31      data:
32        brightness_pct: 100
33    - service: input_boolean.turn_on
34      target:
35        entity_id: input_boolean.living_room_auto_triggered
36    - service: input_text.set_value
37      target:
38        entity_id: input_text.last_occupied_room
39      data:
40        value: "living_room"
41
42- alias: "Follow Me - Living Room Vacancy"
43  trigger:
44    - platform: state
45      entity_id: binary_sensor.living_room_occupied
46      to: "off"
47      for:
48        minutes: 2
49  condition:
50    - condition: state
51      entity_id: input_boolean.living_room_auto_triggered
52      state: "on"
53  action:
54    - service: light.turn_off
55      target:
56        entity_id: light.living_room
57      data:
58        transition: 5
59    - service: input_boolean.turn_off
60      target:
61        entity_id: input_boolean.living_room_auto_triggered

O teste: Uma vez deployada, meu filho e eu vamos andar pela casa e ver se as luzes nos seguem. Se funcionar, vamos nos sentir dentro de um filme. Se não, debug com pizza.

Automação 2: Lockdown Noturno (A PAZ DE ESPÍRITO)

O cenário: São 22h. Entro na cama. Cinco minutos depois, o Eight Sleep confirma que estou dormindo de verdade (não só deitado mexendo no celular). A casa responde: todas as portas trancam, a garagem fecha se eu esqueci (de novo), o termostato entra em modo sono e as luzes auto-ativadas se apagam.

yaml
1- alias: "Bedtime - Eight Sleep Triggered Lockdown"
2  trigger:
3    - platform: state
4      entity_id: binary_sensor.eight_sleep_bed_presence
5      to: "on"
6      for:
7        minutes: 5
8  condition:
9    - condition: time
10      after: "21:00:00"
11      before: "06:00:00"
12  action:
13    # Lock all doors
14    - service: lock.lock
15      target:
16        entity_id:
17          - lock.front_door
18          - lock.back_door
19    # Close garage if open
20    - service: cover.close_cover
21      target:
22        entity_id: cover.garage_door
23    # Set Ecobee to sleep mode
24    - service: climate.set_preset_mode
25      target:
26        entity_id: climate.ecobee
27      data:
28        preset_mode: "Sleep"
29    # Turn off auto-triggered lights
30    - service: light.turn_off
31      target:
32        entity_id:
33          - light.living_room
34          - light.kitchen
35      data:
36        transition: 5

Não tem Eight Sleep? Substitua por um trigger baseado em horário (22:30) ou detecção de carregamento do celular. A lógica é a mesma.

Automação 3: Fechamento Automático da Garagem (O SALVADOR DO CASAMENTO)

O problema: "Você fechou a garagem?" Essa pergunta é feita 3x por semana nesta casa. Nunca mais. Depois de 10 minutos aberta, fecha sozinha e me manda uma notificação.

yaml
1- alias: "Garage - Auto Close After 10 Minutes"
2  trigger:
3    - platform: state
4      entity_id: cover.garage_door
5      to: "open"
6      for:
7        minutes: 10
8  action:
9    - service: cover.close_cover
10      target:
11        entity_id: cover.garage_door
12    - service: notify.mobile_app_your_phone
13      data:
14        title: "Garage Secured"
15        message: "Garage was open for 10 minutes. Auto-closed."
16        data:
17          tag: "garage-closed"

Automação 4: Climatização Inteligente (A ECONOMIA DE ENERGIA)

A lógica: Por que aquecer uma casa vazia? Quando nossos sensores WiFi dizem que ninguém está em casa há 30 minutos, o Ecobee entra em modo Ausente. Quando alguém entra, ele volta ao normal.

yaml
1- alias: "Ecobee - Away When House Empty"
2  trigger:
3    - platform: state
4      entity_id: binary_sensor.home_occupied
5      to: "off"
6      for:
7        minutes: 30
8  action:
9    - service: climate.set_preset_mode
10      target:
11        entity_id: climate.ecobee
12      data:
13        preset_mode: "Away"
14
15- alias: "Ecobee - Home When Occupied"
16  trigger:
17    - platform: state
18      entity_id: binary_sensor.home_occupied
19      to: "on"
20  condition:
21    - condition: state
22      entity_id: climate.ecobee
23      attribute: preset_mode
24      state: "Away"
25  action:
26    - service: climate.set_preset_mode
27      target:
28        entity_id: climate.ecobee
29      data:
30        preset_mode: "Home"

Criando o Sensor Agregado

O binary_sensor.home_occupied é um sensor template que combina todos os sensores dos cômodos:

yaml
1template:
2  - binary_sensor:
3      - name: "Home Occupied"
4        state: >
5          {{ is_state('binary_sensor.living_room_occupied', 'on')
6             or is_state('binary_sensor.kitchen_occupied', 'on')
7             or is_state('binary_sensor.bedroom_occupied', 'on') }}

O Que Pode Dar Errado? (A Parte Divertida)

Olha só: algo VAI dar errado hoje. Isso não é pessimismo. É realidade. E tudo bem. Essa é toda a questão.

Candidatos prováveis para a aventura de hoje:

  • Fechaduras Z-Wave - Essas coisas têm atitude. O pareamento pode precisar de múltiplas tentativas.
  • Calibração do sensor WiFi - Funciona no banco, mas e quando estiver na posição final?
  • Casos extremos de automação - O que acontece se alguém passar por um cômodo em 2 segundos?
  • O problema "funcionou ontem" - A piada favorita da tecnologia.

Mas é por isso que estamos fazendo juntos. Pai e filho, resolvendo problemas, aprendendo, provavelmente discutindo sobre por que o YAML não está parseando. É assim que se aprende de verdade, construindo algo real, vendo quebrar e consertando.

A mina de Zorba desabou. A resposta dele? Dançar na praia. O que quer que quebre hoje, vamos resolver. E se não conseguirmos, teremos uma ótima história para o jantar.

A Filosofia

Aqui está o que separa os fazedores dos sonhadores:

Sonhadores pesquisam por meses. Leem cada artigo. Esperam pelo hardware "certo". Otimizam o plano até ficar perfeito. Nunca começam.

Fazedores escrevem um plano, juntam o que precisam e executam. Esperam desafios. Se adaptam na hora. Fracassam para frente.

Sem plano, não existe caminho. Só gente falando para ouvir a própria voz. Mas um plano sem execução é só um sonho com passos extras.

Critérios de Sucesso de Hoje

  • ☐ Home Assistant rodando com todos os dispositivos conectados
  • ☐ Sensor WiFi detectando movimento na sala de estar
  • ☐ Iluminação follow-me funcionando em pelo menos um cômodo
  • ☐ Automação de lockdown noturno habilitada
  • ☐ Meu filho dizendo "isso parece a casa do Tony Stark"

Próximos Passos (Depois Que Hoje Funcionar)

Assumindo que teremos sucesso, e teremos, mesmo que demore mais do que o esperado:

  • Deploy completo ESP32 3+3 - Sensing em todos os cômodos principais, cobertura fog completa
  • Tablet de parede com dashboard - Painel de controle sempre ligado no corredor
  • Controle de voz local - Wyoming/Piper para comandos de voz que não saem de casa
  • Sensores de vazamento - Embaixo de cada pia e perto do aquecedor

Mas primeiro: hoje. Primeiro: execução. Primeiro: provar que todo esse planejamento realmente funciona.

Checklist de Construção da Casa Inteligente 0/6

"A vida é o que acontece enquanto você está ocupado fazendo outros planos." John Lennon

Errado. A vida é o que acontece quando você para de planejar e começa a agir. Nos vemos do outro lado. Hora de ir construir algo.

How was this article?

Compartilhar

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

Nao perca nenhuma publicacao

Receba notificacoes quando novos artigos forem publicados. Sem necessidade de email.

Voce vera um banner no site quando houver um novo post, alem de uma notificacao do navegador se permitir.

Apenas notificacoes do navegador. Sem spam.

0 / 0