{
  "schema_version": "2.0",
  "generated": "2026-09-28",
  "title": "Artes do Sul · Home Assistant OS & Homelab Hub",
  "context": "Guia canônico e esteira de implantação para Home Assistant OS (HAOS) em Mini PC x86 (Intel N100/N150), virtualização profissional Proxmox VE, redes mesh Zigbee 3.0 (SLZB-06 Ethernet / Sonoff Dongle-E), nós ESPHome Maker e gestão de energia 24/7.",
  "categories": {
    "all": "Todos os Módulos",
    "proxmox": "🖥️ Proxmox & Virtualização",
    "haos_core": "🏠 HAOS Core & Sistema",
    "zigbee": "📡 Zigbee 3.0 & Redes Mesh",
    "esphome": "⚡ ESPHome & Maker IoT",
    "energia": "🔋 Energia, Nobreak & Medição",
    "rede_acesso": "🌐 Rede, VPN & Acesso Remoto",
    "dashboards": "📊 Dashboards & Interfaces",
    "voz_ai": "🎙️ Voz Local & Edge AI"
  },
  "hardware_layers": {
    "all": "Todo o Hardware",
    "minipc_n100": "Mini PC Intel N100 / N150 (x86)",
    "proxmox_pve": "Proxmox VE 8 (Hypervisor KVM)",
    "zigbee_coord": "Coordenador Zigbee (SLZB-06 / Sonoff)",
    "esp32_maker": "ESP32 / M5Stack / CYD (ESPHome)",
    "shelly_sonoff": "Relés & Medidores (Shelly / Sonoff)",
    "ups_nobreak": "Nobreak UPS (NUT USB / APC)"
  },
  "protocols": {
    "native_api": "ESPHome Native API (Criptografada)",
    "mqtt": "MQTT Broker (Mosquitto)",
    "zigbee": "Zigbee 3.0 (IEEE 802.15.4)",
    "zfs_kvm": "Proxmox KVM / QEMU / VirtIO",
    "matter_thread": "Matter sobre Thread (IPv6)",
    "nut_ups": "Network UPS Tools (NUT)",
    "tailscale_wg": "Tailscale WireGuard Mesh"
  },
  "architecture_models": {
    "proxmox_haos_arch": {
      "name": "Topologia da Infraestrutura Virtualizada (Proxmox VE 8)",
      "description": "Distribuição modular de máquinas virtuais e containers LXC no Mini PC Intel N100 para isolamento de carga, backups atômicos e resiliência 24/7.",
      "layers": [
        {
          "layer": "Hardware Físico",
          "host": "Intel N100 (4 Cores / 3.4GHz) · 16GB DDR4 · 512GB NVMe · 1x GbE / 2.5GbE",
          "power": "Consumo Médio: 6W a 11W · Alimentação 12V 3A DC",
          "color": "#ff6b35"
        },
        {
          "layer": "Hypervisor Bare-Metal",
          "host": "Proxmox VE 8.x (Kernel Linux 6.8+ · Debian 12 · ZFS / ext4)",
          "power": "Gestão de Snapshots ZFS, Backups PBS/NFS e Passthrough USB",
          "color": "#8b5cf6"
        },
        {
          "layer": "VM 100: Home Assistant OS",
          "host": "HAOS 13+ x86_64 · 2 vCPU · 4GB RAM · 64GB SSD VirtIO",
          "power": "Supervisor, Core, Add-ons Oficiais (HACS, Studio Code, ESPHome)",
          "color": "#03a9f4"
        },
        {
          "layer": "LXC 101: Zigbee2MQTT & Broker",
          "host": "Container Debian 12 LXC · 1 vCPU · 512MB RAM · Mosquitto + Z2M",
          "power": "Isolado do HA: reinícios do HA não derrubam a rede Zigbee",
          "color": "#00d9ff"
        },
        {
          "layer": "LXC 102: Tailscale & Acesso",
          "host": "Container Alpine LXC · 1 vCPU · 256MB RAM · Subnet Router",
          "power": "Acesso remoto criptografado ponto a ponto sem abrir portas no roteador",
          "color": "#10b981"
        }
      ]
    },
    "zigbee_mesh_topology": {
      "name": "Arquitetura da Rede Mesh Zigbee 3.0",
      "description": "Estratégia de 3 camadas para cobertura total residencial sem pontos cegos e livre de interferência Wi-Fi 2.4GHz.",
      "nodes": [
        { "type": "Coordenador Principal", "device": "SLZB-06 (Ethernet PoE) ou Sonoff Dongle-E", "role": "Canal 25 (Evita Wi-Fi 1, 6 e 11) · Potência 20dBm", "color": "#03a9f4" },
        { "type": "Roteadores Fixos (Mains)", "device": "Sonoff ZBMINI / Shelly 1PM / Lâmpadas Zigbee", "role": "Alimentados na rede 110V/220V · Repetem pacotes de toda a casa", "color": "#10b981" },
        { "type": "End Devices (Bateria)", "device": "Sensores Tuya/Sonoff (Porta, Presença, Temp)", "role": "Deep sleep · Conectam-se ao roteador mais próximo · Bateria 2-3 anos", "color": "#ff6b35" }
      ]
    },
    "esphome_pipeline": {
      "name": "Pipeline Maker: Sensores Artes do Sul -> Home Assistant",
      "description": "Fluxo de telemetria em tempo real conectando nós de campo ao painel central.",
      "stages": [
        { "step": "1. Sensores de Campo", "detail": "Cisterna (JSN-SR04T), Portão ESP-NOW, Clima (BME280), Energia (PZEM)", "tech": "I2C, UART, ADC, GPIO" },
        { "step": "2. Microcontrolador", "detail": "ESP32 DevKit, XIAO C3, M5Stack Cardputer, CYD 2.8\" Display", "tech": "ESPHome Firmware C++" },
        { "step": "3. Protocolo de Enlace", "detail": "ESPHome Native API Criptografada (Noise Protocol) / MQTT Broker", "tech": "Wi-Fi 802.11 b/g/n / LAN" },
        { "step": "4. Central HAOS", "detail": "Entidades criadas automaticamente no Home Assistant com histórico e cards", "tech": "Lovelace, InfluxDB, Node-RED" }
      ]
    }
  },
  "projects": [
    {
      "id": "proxmox-ve-minipc-n100",
      "title": "Instalação & Tuning do Proxmox VE 8 no Mini PC Intel N100",
      "category": "proxmox",
      "hardware": "minipc_n100",
      "hardware_name": "Mini PC Intel N100 (16GB RAM / 512GB NVMe)",
      "difficulty": "Médio",
      "status": "in_lab",
      "featured": true,
      "guide_url": "guia-proxmox-haos.html",
      "summary": "Preparação da BIOS UEFI, gravação de ISO, particionamento ext4/ZFS, configuração de IP estático, desativação do repositório Enterprise e tuning de economia energética (Powertop 6W).",
      "hardware_bom": [
        "Mini PC Intel N100 ou N150 (Beelink EQ12, GMKtec G3, Firebat T8 Pro ou similar)",
        "Memória RAM 16GB DDR4/DDR5 SO-DIMM (mínimo 8GB)",
        "SSD NVMe M.2 512GB (ou SSD SATA 2.5\")",
        "Pen Drive USB 3.0 de 8GB+ (para gravação da ISO)",
        "Cabo de rede Ethernet Cat6 conectado ao roteador/switch",
        "Monitor HDMI e teclado USB para configuração inicial de BIOS"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Porta Ethernet RJ45", "role": "Interface vmbr0 Bridge", "dest": "IP Estático: 192.168.1.200/24 (Gateway: 192.168.1.1)", "color": "cyan" },
          { "pin": "Portas USB 3.2", "role": "Passthrough para VMs", "dest": "Dongle Zigbee Sonoff / Dongle Bluetooth 5.3", "color": "orange" },
          { "pin": "Conector M.2 NVMe", "role": "Armazenamento local-lvm", "dest": "Pool de Discos Virtuais para HAOS e LXCs", "color": "green" },
          { "pin": "Alimentação DC 12V", "role": "Conexão a Nobreak / Mini UPS", "dest": "Alimentação contínua 12V 3A com proteção contra picos", "color": "red" }
        ],
        "notes": "Na BIOS (tecla Del/F2): habilite 'Intel Virtualization Technology (VT-x)' e 'VT-d'. Configure 'Power On after Power Loss' para Always On para que o Mini PC religue automaticamente após falta de luz."
      },
      "step_by_step": [
        "1. Download & Mídia: Baixe a ISO do Proxmox VE 8.x em proxmox.com e grave no pen drive usando BalenaEtcher ou Rufus em modo GPT/UEFI.",
        "2. BIOS Settings: Conecte monitor e teclado no Mini PC. Pressione F2/Del ao ligar. Ative 'VT-x', 'VT-d' e configure 'Restore on AC Power Loss' para 'Power On'.",
        "3. Instalação: Inicie pelo pen drive. Selecione o SSD NVMe de destino. Defina Fuso Horário (America/Sao_Paulo), senha de root e e-mail de alertas.",
        "4. Rede Estática: Defina FQDN (pve.artesdosul.local), IP estático (ex: 192.168.1.200), máscara /24, Gateway e DNS (192.168.1.1 ou 1.1.1.1).",
        "5. Pós-Instalação: Acesse https://192.168.1.200:8006 no navegador. Abra o Shell do Proxmox e execute o script de pós-instalação da comunidade para remover avisos de licença e ativar repositório No-Subscription."
      ],
      "code_snippet": "# Script de Pós-Instalação Automatizado do Proxmox VE 8\n# Execute diretamente no Console/Shell do Proxmox:\nbash -c \"$(wget -qLO - https://github.com/community-scripts/proxmox-ve/raw/main/pve8_post_install.sh)\"\n\n# Opcional: Instalar Powertop para calibrar consumo energético em 6W\napt update && apt install -y powertop\npowertop --auto-tune",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/mini-pc-intel-n100",
        "amazon": "https://www.amazon.com.br/s?k=Mini+PC+Intel+N100",
        "shopee": "https://shopee.com.br/search?keyword=mini%20pc%20n100",
        "aliexpress": "https://pt.aliexpress.com/w/wholesale-mini-pc-n100.html"
      }
    },
    {
      "id": "haos-vm-proxmox-deploy",
      "title": "Criação & Deploy da Máquina Virtual Home Assistant OS (HAOS)",
      "category": "haos_core",
      "hardware": "proxmox_pve",
      "hardware_name": "Proxmox VE (KVM x86_64 Virtual Machine)",
      "difficulty": "Fácil",
      "status": "in_lab",
      "featured": true,
      "guide_url": "guia-proxmox-haos.html",
      "summary": "Instalação atômica do HAOS oficial via script Helper no Proxmox com BIOS UEFI (OVMF), Machine q35, disco VirtIO SCSI com descarte (TRIM), RAM dinâmica e passthrough USB.",
      "hardware_bom": [
        "Hypervisor Proxmox VE 8 instalado e funcional",
        "Alocação recomendada: 2 vCPUs (Intel N100)",
        "Alocação de RAM: 4096MB (4GB) com Ballooning ativado",
        "Armazenamento: 64GB SSD VirtIO SCSI (extensível)",
        "Conexão de rede bridge vmbr0"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "vCPU Cores", "role": "2 Núcleos KVM", "dest": "Processamento de Automações, Histórico e Add-ons", "color": "cyan" },
          { "pin": "RAM 4GB", "role": "Memória VirtIO", "dest": "2GB para HAOS Base + 2GB para Add-ons (ESPHome/Z2M)", "color": "orange" },
          { "pin": "Disco SCSI 64GB", "role": "VirtIO SCSI + TRIM", "dest": "Banco SQLite/MariaDB e Snapshots locais", "color": "green" },
          { "pin": "Porta Web 8123", "role": "Interface Lovelace", "dest": "http://homeassistant.local:8123 ou http://192.168.1.150:8123", "color": "purple" }
        ],
        "notes": "O uso de VM KVM oficial garante compatibilidade 100% com o Supervisor, HACS, backups atômicos e suporte oficial da Nabu Casa."
      },
      "step_by_step": [
        "1. Script Helper: No console do nó Proxmox (Shell), cole e execute o script canônico de criação de VM HAOS da comunidade.",
        "2. Opções do Wizard: Selecione 'Default Settings' (2 Cores, 4GB RAM, 32GB/64GB Disk, UEFI OVMF, q35) ou personalize conforme sua RAM total.",
        "3. Download da Imagem: O script baixa automaticamente a última imagem oficial `qcow2` do HAOS e cria a VM com suporte a VirtIO.",
        "4. Inicialização: Ao concluir, a VM (ex: VM 100) iniciará automaticamente. Abra a aba Console para acompanhar o boot do Home Assistant OS.",
        "5. Primeiro Acesso: No navegador de outro computador da rede, acesse `http://homeassistant.local:8123`. Crie sua conta de administrador e defina o nome da casa."
      ],
      "code_snippet": "# Comando de Criação Automática da VM HAOS no Proxmox VE:\nbash -c \"$(wget -qLO - https://github.com/community-scripts/proxmox-ve/raw/main/haos_vm.sh)\"\n\n# Após o boot, para fixar IP estático pelo terminal do HAOS (opcional):\n# ha network update default --ipv4-method static --ipv4-address 192.168.1.150/24 --ipv4-gateway 192.168.1.1",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/mini-pc-n100",
        "amazon": "https://www.amazon.com.br/s?k=intel+n100+minipc"
      }
    },
    {
      "id": "zigbee2mqtt-slzb06-coordinator",
      "title": "Coordenador Zigbee 3.0 Ethernet SLZB-06 & Zigbee2MQTT",
      "category": "zigbee",
      "hardware": "zigbee_coord",
      "hardware_name": "SMLIGHT SLZB-06 (Ethernet PoE) / Sonoff Dongle-E",
      "difficulty": "Médio",
      "status": "in_lab",
      "featured": true,
      "guide_url": "guia-zigbee2mqtt.html",
      "summary": "Configuração da malha Zigbee com coordenador Ethernet SLZB-06 ou USB Dongle-E, isolamento do Mosquitto MQTT e Z2M em LXC, canal Zigbee 25 e emparelhamento de sensores.",
      "hardware_bom": [
        "Coordenador Zigbee SLZB-06 Ethernet (chip CC2652P ou EFR32MG21) OU Sonoff Dongle-E USB",
        "Injetor PoE 802.3af ou cabo USB-C 5V para alimentar o SLZB-06",
        "Cabo de rede Cat6 (permite instalar o coordenador no centro geográfico da casa)",
        "Sensores de porta/janela Sonoff SNZB-04 ou Tuya Zigbee",
        "Sensores de presença PIR SNZB-03 ou sensor mmWave 24GHz",
        "Relés inteligentes Zigbee ZBMINIR2 para atuar como roteadores da malha"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Porta LAN PoE", "role": "Comunicação TCP/IP Socket", "dest": "Porta 8888 (Socket tcp://192.168.1.210:8888)", "color": "cyan" },
          { "pin": "Antena Externa +5dBi", "role": "Transmissão RF 2.4GHz", "dest": "Potência RF configurada em +20dBm no firmware", "color": "orange" },
          { "pin": "Canal Zigbee 25", "role": "Frequência 2475 MHz", "dest": "Livre de sobreposição dos canais Wi-Fi 1, 6 e 11", "color": "green" }
        ],
        "notes": "Vantagem do SLZB-06 Ethernet: o servidor Proxmox/HAOS pode ficar dentro do rack fechado ou sala de máquinas, enquanto o coordenador fica no teto do corredor central da residência, garantindo sinal impecável."
      },
      "step_by_step": [
        "1. Conexão do SLZB-06: Conecte o cabo de rede ao SLZB-06. Acesse o IP obtido via DHCP no navegador (ex: http://192.168.1.210).",
        "2. Firmware & Modo: Na interface web do SLZB-06, defina 'Mode: Zigbee-to-Ethernet (TCP)', 'Baudrate: 115200' e 'Port: 8888'. Fixe um IP estático.",
        "3. Mosquitto Broker: No Proxmox ou no HAOS Add-on Store, instale o Mosquitto MQTT e crie o usuário `mqtt-user` com senha segura.",
        "4. Configuração do Z2M: Edite o arquivo `configuration.yaml` do Zigbee2MQTT apontando o port para `tcp://192.168.1.210:8888` e adapter `zstack` ou `ember`.",
        "5. Emparelhamento: Abra o painel do Zigbee2MQTT, clique em 'Permitir entrada' (Permit join) e pressione o botão de reset dos sensores por 5 segundos."
      ],
      "code_snippet": "# Trecho de configuration.yaml do Zigbee2MQTT com SLZB-06 Ethernet:\nmqtt:\n  base_topic: zigbee2mqtt\n  server: 'mqtt://192.168.1.200:1883'\n  user: 'mqtt-user'\n  password: 'SuaSenhaSeguraAqui'\n\nserial:\n  port: 'tcp://192.168.1.210:8888'\n  adapter: zstack\n\nadvanced:\n  channel: 25\n  transmit_power: 20\n  pan_id: 6754\n  network_key: GENERATE\n\nfrontend:\n  port: 8080",
      "buy_links": {
        "aliexpress": "https://pt.aliexpress.com/w/wholesale-slzb-06.html",
        "mercadolivre": "https://lista.mercadolivre.com.br/sonoff-zigbee-dongle-e",
        "amazon": "https://www.amazon.com.br/s?k=sonoff+zigbee+dongle+plus"
      }
    },
    {
      "id": "esphome-haos-native-api",
      "title": "Integração Maker ESPHome: Cisterna, M5Stack & CYD Display",
      "category": "esphome",
      "hardware": "esp32_maker",
      "hardware_name": "ESP32 DevKit / M5Stack Cardputer / CYD 2.8\"",
      "difficulty": "Fácil",
      "status": "in_lab",
      "featured": true,
      "guide_url": "guia-esphome-integracao.html",
      "summary": "Integração direta de placas ESP32 com o Home Assistant via ESPHome Native API criptografada: telemetria de cisterna, estação meteorológica, painel LVGL e botões físicos.",
      "hardware_bom": [
        "ESP32 DevKit v1 30 pinos (Nó Cisterna & Relés)",
        "Sensor ultrassônico JSN-SR04T à prova d'água 5V",
        "ESP32 CYD 2432S028 (Cheap Yellow Display 2.8\" Touch)",
        "M5Stack Cardputer ADV (ESP32-S3 com teclado e display)",
        "Sensor de temperatura e umidade BME280 (I2C 3.3V)"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "GPIO 5 (ESP32)", "role": "Trigger Sensor Ultrassônico", "dest": "JSN-SR04T TRIG", "color": "cyan" },
          { "pin": "GPIO 18 (ESP32)", "role": "Echo (Divisor 1k/2k 3.3V)", "dest": "JSN-SR04T ECHO (Protegido)", "color": "orange" },
          { "pin": "GPIO 21 / 22 (ESP32)", "role": "Barramento I2C (SDA/SCL)", "dest": "Sensor BME280 Clima", "color": "green" },
          { "pin": "Port A Grove (M5Stack)", "role": "Porta I2C Grove (G2/G1)", "dest": "Módulos Unit M5Stack", "color": "purple" }
        ],
        "notes": "A Native API do ESPHome opera na porta 6053 com protocolo Noise Criptografado. Cada nó é descoberto automaticamente pelo Home Assistant em segundos."
      },
      "step_by_step": [
        "1. Add-on ESPHome: No HAOS, instale o add-on 'ESPHome' a partir da Add-on Store e abra a interface web.",
        "2. Novo Dispositivo: Clique em 'New Device', conecte a placa ESP32 na porta USB do computador ou do Mini PC e grave o firmware base via Web Serial.",
        "3. Configuração YAML: Adicione os sensores (ultrassônico, BME280, relés) no arquivo YAML gerado e clique em 'Install > Wirelessly (OTA)'.",
        "4. Descoberta Automática: O Home Assistant notificará que um novo dispositivo ESPHome foi encontrado. Clique em 'Configurar' e digite a Encryption Key.",
        "5. Dashboard: Adicione o card Gauge ou Mushroom Entity para visualizar o nível da cisterna em % e litros em tempo real."
      ],
      "code_snippet": "esphome:\n  name: cisterna-maker-node\n  friendly_name: \"Monitor de Cisterna IoT\"\n\nesp32:\n  board: esp32dev\n  framework:\n    type: esp-idf\n\napi:\n  encryption:\n    key: \"SuaChaveGeradaPeloESPHome32Bytes\"\n\nota:\n  - platform: esphome\n\nwifi:\n  ssid: !secret wifi_ssid\n  password: !secret wifi_password\n\nsensor:\n  - platform: ultrasonic\n    trigger_pin: GPIO5\n    echo_pin: GPIO18\n    name: \"Nível da Cisterna\"\n    update_interval: 5s\n    unit_of_measurement: \"%\"\n    filters:\n      - filter_out: nan\n      - median: { window_size: 7, send_every: 3 }\n      - lambda: 'return ((2.20 - x) / 2.20) * 100.0;'",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/esp32-devkit",
        "shopee": "https://shopee.com.br/search?keyword=esp32%20cyd",
        "amazon": "https://www.amazon.com.br/s?k=esp32+wroom"
      }
    },
    {
      "id": "shelly-sonoff-energy-monitoring",
      "title": "Monitoramento de Energia & Relés de Potência (Shelly 1PM & Sonoff)",
      "category": "energia",
      "hardware": "shelly_sonoff",
      "hardware_name": "Shelly 1PM Gen4 / Sonoff POWR316D / Medidor DIN",
      "difficulty": "Médio",
      "status": "in_lab",
      "featured": false,
      "guide_url": "guia-automacoes-nobreak.html",
      "summary": "Gestão de consumo em kWh, potência instantânea em Watts e proteção contra sobrecarga em circuitos de alta potência (ar-condicionado, bomba da cisterna, geladeira).",
      "hardware_bom": [
        "Módulo Relé com Medição Shelly 1PM Gen4 (Wi-Fi + Bluetooth)",
        "Sonoff POWR316D Elite 16A com display LCD e medidor de energia",
        "Medidor de trilho DIN inteligente Tuya Zigbee 63A com TC (Transformador de Corrente)",
        "Caixa de passagem elétrica padrão 4x2 ou quadro de distribuição DIN",
        "Fios antichama 2.5mm² / 4.0mm² e terminais ilhós"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "L / N (Entrada)", "role": "Fase & Neutro (110V/220V)", "dest": "Alimentação do Módulo e Medição de Tensão", "color": "red" },
          { "pin": "O (Saída Carga)", "role": "Fase Chaveada", "dest": "Alimentação da Carga (Bomba / Eletrodoméstico)", "color": "orange" },
          { "pin": "SW (Interruptor)", "role": "Entrada Interruptor Físico", "dest": "Pulsador ou Interruptor convencional da parede", "color": "cyan" }
        ],
        "notes": "O Shelly 1PM Gen4 inclui medição de potência de alta precisão (erro <1%) e proteção térmica integrada que desliga o relé automaticamente se a temperatura interna ultrapassar 90°C."
      },
      "step_by_step": [
        "1. Segurança: Desligue o disjuntor geral do circuito antes de qualquer intervenção elétrica.",
        "2. Ligação: Conecte Fase no borne 'L', Neutro no 'N', Carga no 'O' e o retorno do interruptor de parede no 'SW'.",
        "3. App Shelly / Web Interface: Conecte ao AP Wi-Fi do Shelly, defina sua rede Wi-Fi e habilite a integração nativa com o Home Assistant.",
        "4. Painel de Energia HA: No Home Assistant, acesse 'Configurações > Painéis > Energia' e adicione a entidade `sensor.shelly_1pm_energy` no consumo de dispositivos individuais.",
        "5. Automação de Proteção: Crie regra para desligar a carga se a potência ultrapassar 2500W por mais de 30 segundos."
      ],
      "code_snippet": "# Automação de Alerta de Consumo Excessivo / Bloqueio de Carga:\nalias: \"Alerta: Sobrecarga no Circuito da Bomba\"\ntrigger:\n  - platform: numeric_state\n    entity_id: sensor.bomba_cisterna_power\n    above: 1800\n    for:\n      seconds: 20\naction:\n  - service: switch.turn_off\n    target:\n      entity_id: switch.bomba_cisterna\n  - service: notify.persistent_notification\n    data:\n      title: \"⚠️ Sobrecarga Detectada!\"\n      message: \"A bomba da cisterna ultrapassou 1800W e foi desligada preventivamente.\"",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/shelly-1pm-gen4",
        "amazon": "https://www.amazon.com.br/s?k=shelly+1pm",
        "shopee": "https://shopee.com.br/search?keyword=sonoff%20powr316d"
      }
    },
    {
      "id": "nobreak-nut-power-survival",
      "title": "Integração de Nobreak USB (NUT) & Sobrevivência Energética",
      "category": "energia",
      "hardware": "ups_nobreak",
      "hardware_name": "Nobreak Senoidal Interativo (APC / SMS / Ragtech) com USB",
      "difficulty": "Médio",
      "status": "in_lab",
      "featured": true,
      "guide_url": "guia-automacoes-nobreak.html",
      "summary": "Monitoramento de bateria em % e carga em Watts via NUT (Network UPS Tools), automações de corte de cargas supérfluas e shutdown gracioso de VMs do Proxmox antes do esgotamento da bateria.",
      "hardware_bom": [
        "Nobreak Senoidal Puro 700VA a 1500VA com porta de comunicação USB HID (APC Back-UPS, SMS Sinus Triad, Ragtech)",
        "Cabo USB Type-B para Type-A conectado ao Mini PC Proxmox",
        "Mini UPS 12V 2A para Roteador de Fibra / ONT (mantém internet ativa sem drenar o nobreak principal)"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Cabo USB HID", "role": "Telemetria USB NUT", "dest": "Driver `usbhid-ups` ou `nut-driver` no Proxmox/HA", "color": "cyan" },
          { "pin": "Tomadas Bateria", "role": "Alimentação Protegida 115V/220V", "dest": "Mini PC Intel N100 + Switch PoE + SLZB-06", "color": "green" },
          { "pin": "Sensor Falha AC", "role": "Entidade `sensor.ups_status`", "dest": "Detecção de 'OB' (On Battery) ou 'OL' (Online)", "color": "orange" }
        ],
        "notes": "Com um Mini PC Intel N100 consumindo apenas 8W + roteador (7W), um nobreak de 700VA com bateria 12V 7Ah fornece mais de 3 horas de autonomia contínua de automação residencial durante apagões."
      },
      "step_by_step": [
        "1. Conexão Física: Conecte o cabo USB do Nobreak em uma porta USB do Mini PC Proxmox.",
        "2. Servidor NUT no Proxmox: Instale o pacote `nut-server` no Proxmox ou use o add-on 'Network UPS Tools' no HAOS com passthrough USB.",
        "3. Integração HA: Adicione a integração oficial 'Network UPS Tools (NUT)' no Home Assistant apontando para o IP do servidor.",
        "4. Automação de Alívio de Carga: Ao detectar falha de energia (status 'OB'), desligue imediatamente lâmpadas, ar-condicionado e tomadas de carregamento.",
        "5. Shutdown Gracioso: Se a bateria atingir nível crítico (< 15%), o Proxmox envia sinal de desligamento seguro para todas as VMs e depois se autodesliga."
      ],
      "code_snippet": "# Configuração do NUT no Home Assistant (sensor.ups_battery_charge):\nalias: \"Energia: Ação em Queda de Luz\"\ntrigger:\n  - platform: state\n    entity_id: sensor.ups_status\n    to: \"OB\" # On Battery\naction:\n  - service: notify.notify\n    data:\n      title: \"⚡ Queda de Energia Detectada!\"\n      message: \"Homelab operando via Nobreak. Bateria em {{ states('sensor.ups_battery_charge') }}%.\"\n  - service: homeassistant.turn_off\n    target:\n      area_id: [sala, quartos, jardim]",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/nobreak-senoidal-usb",
        "amazon": "https://www.amazon.com.br/s?k=nobreak+apc+senoidal"
      }
    },
    {
      "id": "tailscale-cloudflare-remote-access",
      "title": "Acesso Remoto Seguro com Tailscale VPN & Cloudflare Tunnels",
      "category": "rede_acesso",
      "hardware": "proxmox_pve",
      "hardware_name": "LXC Container / HAOS Add-on (Tailscale + Cloudflare)",
      "difficulty": "Fácil",
      "status": "in_lab",
      "featured": false,
      "guide_url": "guia-proxmox-haos.html",
      "summary": "Acesso externo criptografado ponto a ponto via Tailscale WireGuard Mesh sem abrir portas no roteador residencial (CGNAT friendly), com certificado HTTPS automático.",
      "hardware_bom": [
        "Home Assistant OS ou Container LXC Proxmox",
        "Conta gratuita no Tailscale (tailscale.com)",
        "Opcional: Domínio próprio para Cloudflare Tunnels (ex: haos.artesdosul.com)"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Interface tailscale0", "role": "Túnel WireGuard Criptografado", "dest": "IP Virtual 100.x.y.z acessível de celular/notebook em qualquer lugar", "color": "cyan" },
          { "pin": "Subnet Router 192.168.1.0/24", "role": "Roteamento de Sub-rede", "dest": "Acesso a todos os dispositivos da casa (Proxmox, Z2M, Roteador)", "color": "green" }
        ],
        "notes": "100% imune a bloqueios de portas de operadoras (Claro, Vivo, Starlink em CGNAT) e sem necessidade de DDNS ou abertura de portas NAT 80/443."
      },
      "step_by_step": [
        "1. Instalação: Na Add-on Store do HAOS, instale o add-on oficial 'Tailscale' e inicie.",
        "2. Autenticação: Abra os logs do add-on, copie o link de autenticação e faça login com sua conta (Google/GitHub).",
        "3. MagicDNS & HTTPS: No painel do Tailscale, ative o MagicDNS e HTTPS Certificates. Seu HAOS ganha um endereço permanente como `https://haos-server.seu-tailnet.ts.net`.",
        "4. App Mobile: Instale o aplicativo Tailscale e o app Home Assistant Companion no celular para geolocalização e controle remoto imediato."
      ],
      "code_snippet": "# Habilitar Subnet Routing no Tailscale LXC / Proxmox:\necho 'net.ipv4.ip_forward = 1' | tee -a /etc/sysctl.conf\necho 'net.ipv6.conf.all.forwarding = 1' | tee -a /etc/sysctl.conf\nsysctl -p\n\ntailscale up --advertise-routes=192.168.1.0/24 --accept-routes",
      "buy_links": {
        "amazon": "https://www.amazon.com.br/s?k=roteador+wifi+6"
      }
    },
    {
      "id": "lovelace-cyber-dashboard",
      "title": "Masterpiece Dashboard Lovelace: Estética Cyber-Growth & Kiosk",
      "category": "dashboards",
      "hardware": "minipc_n100",
      "hardware_name": "Home Assistant Lovelace (Mushroom / Card-mod / Plotly)",
      "difficulty": "Médio",
      "status": "in_lab",
      "featured": true,
      "guide_url": "benchmark-hardware-haos.html",
      "summary": "Construção de painel interativo de alta densidade visual com tema dark cyber, cartões Mushroom com chips de status, gráficos de telemetria em tempo real e modo Kiosk para tablets de parede.",
      "hardware_bom": [
        "Instalação do HACS (Home Assistant Community Store)",
        "Frontend cards: Mushroom Cards, Card-mod, Mini Graph Card, ApexCharts",
        "Opcional: Tablet Android ou tela touch ESP32 CYD 2.8\" como painel físico de parede"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Tema Cyber-Growth", "role": "Paleta Dark & Cores HSL", "dest": "Fundo #080d1a · Acentos #03a9f4 / #00d9ff / #ff6b35", "color": "cyan" },
          { "pin": "Mushroom Chips", "role": "Barra de Status do Topo", "dest": "Clima, Pessoas em Casa, Nível Cisterna, Consumo Watts", "color": "orange" }
        ],
        "notes": "Utilize o add-on 'Fully Kiosk Browser' no tablet de parede com sensor de movimento pela câmera frontal para ligar a tela automaticamente quando alguém se aproxima."
      },
      "step_by_step": [
        "1. HACS: Instale o HACS e baixe os plugins 'Mushroom', 'card-mod', 'mini-graph-card' e 'kiosk-mode'.",
        "2. Criação da View: Crie um novo painel no Lovelace com layout 'Sections' ou 'Masonry' e visualização Dark.",
        "3. Header Chips: Adicione uma linha de chips com estado da cisterna, bateria do nobreak e clima da bancada.",
        "4. Seções por Ambiente: Agrupe relés, sensores ambientais e câmeras em seções de cards compactos com micro-animações.",
        "5. Tablet Wall-Mount: Configure o Fully Kiosk Browser para travar no dashboard em tela cheia com proteção de bateria a 80%."
      ],
      "code_snippet": "# Exemplo de Card Mushroom com Card-mod Cyber Glow:\ntype: custom:mushroom-template-card\nprimary: \"Cisterna Artes do Sul\"\nsecondary: \"Nível: {{ states('sensor.nivel_cisterna') }}% ({{ states('sensor.volume_cisterna_litros') }} L)\"\nicon: mdi:water-well\nicon_color: cyan\nlayout: horizontal\ncard_mod:\n  style: |\n    ha-card {\n      background: rgba(8, 13, 26, 0.75);\n      backdrop-filter: blur(12px);\n      border: 1px solid rgba(0, 217, 255, 0.25);\n      border-radius: 14px;\n      box-shadow: 0 4px 20px rgba(0, 217, 255, 0.1);\n    }",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/tablet-android-parede",
        "shopee": "https://shopee.com.br/search?keyword=esp32%20cyd%202.8"
      }
    },
    {
      "id": "backup-snapshots-nas-gdrive",
      "title": "Estratégia 3-2-1 de Backups Automatizados no Proxmox & HAOS",
      "category": "haos_core",
      "hardware": "proxmox_pve",
      "hardware_name": "Proxmox Backup (VZDump / PBS) + HAOS Google Drive Backup",
      "difficulty": "Fácil",
      "status": "in_lab",
      "featured": false,
      "guide_url": "guia-proxmox-haos.html",
      "summary": "Proteção total contra corrupção de disco: snapshots atômicos diários no Proxmox, exportação para NAS/NFS externo e sincronização em nuvem criptografada no Google Drive.",
      "hardware_bom": [
        "Hypervisor Proxmox VE com storage local e secundário",
        "Add-on 'Home Assistant Google Drive Backup'",
        "Conta gratuita no Google Drive (15GB livres)",
        "Opcional: Pendrive USB 3.0 ou NAS local para backup VZDump"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "Snapshot ZFS (Proxmox)", "role": "Cópia Instantânea da VM", "dest": "Tempo de restauração: 15 segundos em caso de falha de update", "color": "cyan" },
          { "pin": "Backup VZDump (Semanal)", "role": "Arquivo .vma.zst Compactado", "dest": "Armazenamento secundário / NAS externo", "color": "orange" },
          { "pin": "HAOS GDrive Sync (Diário)", "role": "Backup Criptografado Nuvem", "dest": "Google Drive com rotação automática de 7 cópias", "color": "green" }
        ],
        "notes": "Antes de qualquer atualização do Home Assistant Core ou do Proxmox, crie um Snapshot manual na aba 'Snapshots' da VM 100 com o nome 'pre-update-data'. Se houver incompatibilidade, clique em 'Rollback' para restaurar instantaneamente."
      },
      "step_by_step": [
        "1. Add-on GDrive Backup: Instale o repositório 'https://github.com/sabehp/hassio-google-drive-backup' e inicie o add-on.",
        "2. Autenticação Google: Conecte à sua conta Google e defina uma senha de criptografia AES para os arquivos de backup.",
        "3. Cronograma: Configure para gerar 1 backup diário às 03:00 da manhã, mantendo os últimos 4 backups no HAOS e os últimos 14 no Google Drive.",
        "4. Backup no Proxmox: No menu 'Datacenter > Backup' do Proxmox, crie um agendamento semanal para todas as VMs com modo 'Snapshot' e compressão ZSTD.",
        "5. Teste de Recuperação: Realize um teste de restauração em uma VM temporária para validar a integridade do arquivo."
      ],
      "code_snippet": "# Agendamento de Backup Proxmox via CLI (crontab /etc/pve/vzdump.cron):\n# Todos os domingos às 02:00 da manhã para o storage local-backup:\n0 2 * * 0 root vzdump 100 --compress zstd --mode snapshot --storage local-backup --quiet 1",
      "buy_links": {
        "amazon": "https://www.amazon.com.br/s?k=ssd+externo+backup"
      }
    },
    {
      "id": "voice-assist-local-piper-whisper",
      "title": "Assistente de Voz 100% Local (Whisper STT + Piper TTS + Atom Echo)",
      "category": "voz_ai",
      "hardware": "minipc_n100",
      "hardware_name": "Mini PC Intel N100 (AVX2 / OpenVINO) + M5Stack Atom Echo",
      "difficulty": "Avançado",
      "status": "in_lab",
      "featured": false,
      "guide_url": "benchmark-hardware-haos.html",
      "summary": "Controle por voz com privacidade total sem enviar áudio para Amazon/Google: Whisper STT para transcrição rápida em português, Piper TTS para síntese de voz e microfones Wi-Fi M5Stack Atom Echo.",
      "hardware_bom": [
        "Mini PC com suporte a instruções AVX2 (Intel N100 / AMD Ryzen)",
        "Microfone inteligente M5Stack Atom Echo (ESP32 com mic e alto-falante) ou M5Stack CoreS3",
        "Add-ons oficiais: Whisper (STT), Piper (TTS) e openWakeWord"
      ],
      "pinout": {
        "mcu_pins": [
          { "pin": "M5Stack Atom Echo", "role": "Satélite de Voz Wi-Fi", "dest": "Firmware ESPHome Voice Assistant com I2S Mic/Speaker", "color": "cyan" },
          { "pin": "Wake Word 'Ok Nabu'", "role": "Detecção de Palavra de Ativação", "dest": "Processamento local no ESP32 ou servidor HAOS", "color": "orange" },
          { "pin": "Piper TTS (pt_BR)", "role": "Síntese de Voz pt-BR", "dest": "Voz natural 'Fabio' ou 'Edresson' com latência <200ms", "color": "green" }
        ],
        "notes": "O processador Intel N100 transcreve frases curtas de comando em menos de 300ms com o modelo Whisper 'tiny-int8' ou 'base', permitindo resposta quase instantânea para ligar luzes e checar a cisterna."
      },
      "step_by_step": [
        "1. Instalação dos Add-ons: Instale Whisper, Piper e openWakeWord pela Add-on Store.",
        "2. Configuração do Piper: Selecione o modelo de voz `pt_BR-fabio-medium` para português do Brasil.",
        "3. Assist Pipeline: Em 'Configurações > Vozes & Assistentes', crie um pipeline padrão vinculando Whisper, Piper e o agente de conversação do HA.",
        "4. Flash do Atom Echo: Conecte o M5Stack Atom Echo via USB e instale o firmware pronto via 'ready-made projects' no site esphome.io.",
        "5. Teste Prático: Diga 'Ok Nabu, qual o nível da cisterna?' e o Home Assistant responderá imediatamente pelo alto-falante do Atom Echo."
      ],
      "code_snippet": "# Exemplo de Intenção Customizada para Consulta da Cisterna (custom_sentences/pt-br/cisterna.yaml):\nlanguage: \"pt-br\"\nintents:\n  NivelCisternaIntent:\n    data:\n      - sentences:\n          - \"[qual [é]] [o] nível da cisterna\"\n          - \"quanto de água tem na cisterna\"\n\n# Resposta configurada em automação ou conversation agent:\n# \"A cisterna está com {{ states('sensor.nivel_cisterna') }}% da capacidade total.\"",
      "buy_links": {
        "mercadolivre": "https://lista.mercadolivre.com.br/m5stack-atom-echo",
        "aliexpress": "https://pt.aliexpress.com/w/wholesale-m5stack-atom-echo.html"
      }
    }
  ]
}
