Popup de câmera na TV usando ADB + PiPup + Home Assistant
Neste tutorial, vou mostrar passo a passo como transformar uma TV Android em um painel inteligente, exibindo automaticamente um popup de câmera ao tocar a campainha, utilizando ADB, o app PiPup e o Home Assistant.
O resultado final é simples e poderoso: quando alguém toca a campainha, a imagem da câmera aparece automaticamente na TV por alguns segundos, sem trocar entrada e sem abrir aplicativos manualmente.
Visão geral do funcionamento
- A TV é conectada via ADB pelo PC
- O app PiPup é instalado na TV
- O PiPup expõe um endpoint HTTP local
- O Home Assistant envia um JSON via REST
- A TV exibe o popup com a câmera
Pré-requisitos
- TV Android (TCL é altamente recomendada, mas outras funcionam)
- PC com Windows
- Home Assistant configurado
- Câmera integrada no Home Assistant (ex: Reolink)
- IP fixo ou reservado para a TV
1. Baixando o ADB no Windows
Baixe o Android Platform Tools oficial do Google:
https://developer.android.com/tools/releases/platform-tools?hl=pt-br
Extraia o conteúdo para a seguinte pasta, Crie a pasta adb em C:
C:\adb
2. Ativando o ADB na TV
- Configurações → Sobre
- Clique várias vezes em Número da compilação
- Ative Opções do desenvolvedor
- Habilite Depuração USB ou ADB pela rede
Anote o IP da TV.
3. Conectando à TV via ADB
Vá em Executar no Windows e digite: cmd e abra o terminal, siga:
cd C:\adb
adb connect IP_DA_TV
Exemplo:
adb connect 192.168.1.50
Resposta esperada:
connected to 192.168.1.50:5555
Se aparecer um popup de autorização na TV, aceite.
4. Instalando o PiPup na TV
Página oficial do app:
https://github.com/desertblade/PiPup/releases
Baixe o arquivo app-debug.apk e coloque dentro da pasta:
C:\adb
Instale via ADB:
adb install app-debug.apk
Saída esperada:
Success
Criando o arquivo post.json
No seu PC (Windows), crie um arquivo chamado post.json com seu bloco de notas, dentro da pasta:
C:\adb
Conteúdo do arquivo:
{
"duration": 30,
"position": 0,
"title": "Teste PiPup",
"titleColor": "#0066cc",
"titleSize": 20,
"message": "Popup funcionando corretamente",
"messageColor": "#000000",
"messageSize": 14,
"backgroundColor": "#ffffff",
"media": {
"image": {
"uri": "https://mir-s3-cdn-cf.behance.net/project_modules/max_1200/cfcc31370.jpg",
"width": 480
}
}
}
Esse JSON é um exemplo simples usando uma imagem remota. Se isso funcionar, o WebRTC também irá funcionar depois.
2. Enviando o JSON para a TV via cURL
Ainda no Prompt de Comando do Windows, dentro da pasta C:\adb, execute:
curl -d "@post.json" -H "Content-Type: application/json" -X POST http://IP_DA_TV:7979/notify
Exemplo:
curl -d "@post.json" -H "Content-Type: application/json" -X POST http://192.168.1.50:7979/notify
3. Resultado esperado
- Um popup deve aparecer imediatamente na TV
- O título, texto e imagem devem ser exibidos
- O popup desaparece após o tempo definido no post.json
Se isso funcionar, significa que:
- O PiPup está corretamente instalado
- A porta 7979 está acessível
- As permissões estão corretas
- O REST API do PiPup está funcional
Problemas comuns
- Popup não aparece: confirme se o app PiPup está aberto. Navegue no menu da tv e localize um app azul PIP, abra ao menos uma vez e pronto. Não precisará fazer isso novamente, só nesse momento.
5. Permitindo popups na TV
Esse passo é obrigatório para que o app possa desenhar sobre a tela:
adb shell appops set nl.rogro82.pipup SYSTEM_ALERT_WINDOW allow
Depois disso, abra o app PiPup pelo menu de apps da TV pelo menos uma vez para liberar a porta HTTP (se ainda não fez isso).
6. Como o PiPup funciona
O PiPup cria um servidor HTTP local na TV, normalmente acessível em:
http://IP_DA_TV:7979/notify
Qualquer requisição POST com JSON para esse endpoint dispara o popup na tela.
7. Criando o REST Command no Home Assistant , coloque include ou direto em configuration.yaml usando Addon File Editor ou similar, atualize o IP da TV.
rest_command:
pipup_popup_tv:
url: "http://IP_DA_TV:7979/notify"
method: POST
content_type: "application/json"
payload: >
{
"duration": {{ duration | default(20) }},
"position": {{ position | default(0) }},
"title": "{{ title }}",
"message": "{{ message }}",
"media": {
"web": {
"uri": "{{ url }}",
"width": 640,
"height": 360
}
}
}
Reinicie o Home Assistant após salvar.
8. WebRTC e go2rtc (RTSP → navegador)
Instale WebRTC e go2rtc no Home Assistant
O Home Assistant usa o go2rtc para converter RTSP em WebRTC. Isso permite que a câmera seja exibida diretamente no popup via URL web. Instale via Add-ons e crie a entrada via Dispositivos e serviços. A câmera precisa estar via RTSP e go2rtc.
9. Script para exibir a câmera na TV
script:
popup_camera_tv:
alias: Popup câmera na TV
sequence:
- service: webrtc.create_link
data:
link_id: porta_tv
entity: camera.porta
time_to_live: 60
- service: rest_command.pipup_popup_tv
data:
title: "Campainha"
message: "Alguém está na porta"
url: "http://SEU_HA_URL/webrtc/embed?url=porta_tv&webrtc=false"
duration: 15
url: “http://SEU_HA_URL/webrtc/embed?url=porta_tv&webrtc=false”
ou coloque o endereço RTSP da sua câmera!
10. Automação com gatilho da campainha
automation:
- alias: Popup TV ao tocar campainha
trigger:
- platform: state
entity_id: binary_sensor.campainha
to: "on"
action:
- service: script.popup_camera_tv
Botão campainha ou outro gatilho que desejar.
Resultado final
- Toque na campainha
- Home Assistant cria o stream WebRTC
- JSON é enviado para a TV
- Popup aparece automaticamente
- Some após alguns segundos
Essa abordagem transforma a TV em um verdadeiro painel inteligente, integrado ao ecossistema da casa.
