O app já monta um painel funcional quando você sincroniza - esta página é a versão deluxe, feita à mão. Dez passos, o YAML de cada cartão e uma visão completa que você cola de uma vez. Blocos de vidro verde, uma leitura de imagem ao vivo, suas Cenas e um gráfico de horas do laser, tudo a partir de um único sensor de projetor. Troque duas strings e ele é seu.
configuration.yaml e reiniciar o Home Assistant. Isso é o que cria os scripts que cada botão de controle abaixo chama.Duas coisas alimentam este dashboard, e a diferença importa em todos os passos abaixo.
| Vem de | Fornece |
|---|---|
O sensor do projetor, sensor.YOUR_PROJECTOR | Cada leitura. Energia, entrada, modo de cor, todos os valores de imagem, HDR e sinal, lente e geometria, horas da lâmpada. Ao vivo assim que você entra e sincroniza, sem precisar do bloco Copiar. |
Os scripts sincronizados do app, script.projpilot_YOURSERIAL_... | Cada controle. Energia, entradas, modos de cor, memórias de lente e suas Cenas. Eles só existem depois que o bloco Copiar é colado, o Home Assistant é reiniciado e você toca em Sincronizar com HA. |
Os quatro estão na loja padrão do HACS. No Home Assistant: HACS › Frontend › Explorar & Baixar Repositórios, busque o nome, clique em Baixar e depois recarregue o navegador.
| Procure por | Usado para | Se você pular |
|---|---|---|
| Mushroom | Cada bloco de informação, botão de controle e bloco de Cena | Use um card button simples. Funciona, mas fica mais quadrado. |
| button-card | O destaque, com seu rótulo ao vivo | Use um cartão entity, ou um cartão de modelo Mushroom com menos detalhes. |
| card-mod | O fundo de vidro verde, bordas e gradientes | Tudo continua funcionando. Só que nada ganha o brilho. |
| mini-graph-card | O histórico de horas do laser em Manutenção | Use o card history-graph nativo. |
Todos os trechos desta página usam dois marcadores. Encontre os seus uma vez e o resto é copiar e colar.
sensor.YOUR_PROJECTOR → Ferramentas do Desenvolvedor › Estados no Home Assistant, filtre por projector_pilot. Algo como sensor.projector_pilot_epson_qb1000b_qb1000w.YOURSERIAL → abra o app, Configurações › Automação Residencial › Home Assistant. O ID derivado do número de série aparece ali mesmo, e é o meio do nome de cada script sincronizado: script.projpilot_YOURSERIAL_power_on, script.projpilot_YOURSERIAL_input_hdmi1 e assim por diante.Você também pode filtrar Ferramentas do Desenvolvedor › Estados por projpilot para ver toda a sua lista de controles sincronizados de uma vez, depois que o bloco Copiar e a sincronização do passo 1 estiverem feitos.
As configurações da própria visão, se preferir digitar:
title: Projector Pilot views: - title: Projector Pilot path: projector-pilot icon: mdi:projector cards: []
Comece com algo que só lê, para saber que o ID da sua entidade está certo antes de mexer em qualquer coisa que envie um comando. Este fica ao vivo no momento em que o sensor do projetor existe, sem bloco Copiar, sem sincronização. Adicione um cartão, Editar em YAML, cole:
type: custom:mushroom-template-card
primary: Brightness
secondary: '{{ state_attr(''sensor.YOUR_PROJECTOR'',''brightness'') }}'
icon: mdi:brightness-6
icon_color: green
layout: vertical
fill_container: true
card_mod:
style: 'ha-card { background: rgba(18,26,20,0.60); border: 1px solid rgba(61,220,107,0.20);
border-radius: 16px; box-shadow: 0 6px 22px rgba(0,0,0,0.32); backdrop-filter: blur(8px);
min-height: 104px; }'
O mesmo formato lê qualquer um dos ~80 atributos que o sensor carrega: troque brightness por contrast, gamma, color_temp, hdr_pq, lamp_hours, o que quiser no bloco.
Salve. Se aparecer um número ou palavra de verdade, o ID da sua entidade está certo e tudo abaixo vai funcionar. Se aparecer em branco, volte ao passo 2.
Um título simples é espaço morto. Este é um cartão markdown com fundo em gradiente do card-mod, e é ele que transforma uma pilha de blocos em seções nomeadas. Cada seção do painel abre com um destes, só mudando o rótulo e o emoji.
type: markdown
content: '🔌 **POWER & SOURCE**'
card_mod:
style: 'ha-card { background: linear-gradient(135deg, rgba(61,220,107,0.30), rgba(16,120,60,0.30));
border: 1px solid rgba(61,220,107,0.45); border-radius: 14px; box-shadow: 0 6px 20px rgba(0,0,0,0.3); }
ha-markdown { padding: 12px 20px !important; } ha-markdown p { margin: 0 !important;
letter-spacing: 3px; color: #eafff0; font-size: 14px; font-weight: 700; }'
Mude o código do emoji e o texto do rótulo; o bloco do card-mod é idêntico em todas as seções.
Este envia um comando em vez de só ler um valor, então os scripts precisam existir antes. Ele chama script.projpilot_YOURSERIAL_power_on, que o app só escreve depois que você cola o bloco Copiar em configuration.yaml, reinicia o Home Assistant e toca em Sincronizar com HA.
type: custom:mushroom-template-card
primary: Power On
icon: mdi:power
icon_color: green
layout: vertical
fill_container: true
tap_action:
action: call-service
service: script.projpilot_YOURSERIAL_power_on
card_mod:
style: 'ha-card { background: linear-gradient(135deg, rgba(61,220,107,0.16), rgba(16,90,46,0.20));
border: 1px solid rgba(61,220,107,0.34); border-radius: 16px; box-shadow: 0 6px 22px rgba(0,0,0,0.32);
min-height: 92px; }'
O mesmo cartão serve para Desligar, Tela em Branco, HDMI 1, HDMI 2, Mudo A/V, um modo de cor ou uma memória de lente: só o rótulo, o ícone e service mudam.
O destaque no topo do painel é um button-card: um estado de energia grande, um resumo de uma linha montado a partir de vários atributos ao mesmo tempo, e o tratamento de vidro verde no cartão inteiro, não só na borda.
type: custom:button-card entity: sensor.YOUR_PROJECTOR name: Epson QB1000 show_state: true show_label: true size: 48px state_display: '[[[ return entity.state==''on'' ? ''Powered on'' : ''Standby''; ]]]' label: '[[[ var a=entity.attributes; return (a.input||''-'')+'' • ''+(a.color_mode||''-'')+ '' • ''+(a.video_range||''-'')+'' • ''+(a.lamp_hours||0)+'' h''; ]]]' styles: card: - height: 176px - background: linear-gradient(135deg, rgba(61,220,107,0.32), rgba(11,64,34,0.6)) - border: 1px solid rgba(61,220,107,0.5) - border-radius: 22px - box-shadow: 0 12px 36px rgba(0,0,0,0.42) - padding: 20px state: - color: '[[[ return entity.state==''on'' ? ''#3ddc6b'' : ''#8a9'' ]]]'
Reduzido às peças que mudam em cada instalação. O cartão completo também define o ícone, o nome e as posições da grade de rótulos; veja o download no passo 10 para tudo.
Prefere uma faixa mais enxuta? Um mushroom-chips-card faz o mesmo trabalho numa linha de chips pequenos: estado de energia, entrada, modo de cor, faixa de vídeo e horas da lâmpada, cada um um modelo que lê state_attr('sensor.YOUR_PROJECTOR', ...). Use um ou outro, não os dois, no topo do painel.
Cada Cena que você salva no app vira um script chamado script.projpilot_YOURSERIAL_scene_<id> depois que você sincroniza, e um bloco para ela é o mesmo cartão de botão de controle do passo 6 com o nome e o ícone da Cena.
type: custom:mushroom-template-card
primary: Movie Night
icon: mdi:movie-open
icon_color: green
layout: vertical
fill_container: true
tap_action:
action: call-service
service: script.projpilot_YOURSERIAL_scene_YOURSCENE1
card_mod:
style: 'ha-card { background: linear-gradient(135deg, rgba(61,220,107,0.16), rgba(16,90,46,0.20));
border: 1px solid rgba(61,220,107,0.34); border-radius: 16px; box-shadow: 0 6px 22px rgba(0,0,0,0.32);
min-height: 92px; }'
Troque YOURSCENE1 pelo ID mostrado para aquela Cena na lista de controles sincronizados do app. Um bloco por Cena, em um horizontal-stack.
O sensor do projetor é registrado pelo Home Assistant como qualquer outro, então lamp_hours tem um histórico de graça. Sem sensores extras, sem auxiliares, nada para configurar antes, na seção Manutenção.
type: custom:mini-graph-card
entities:
- entity: sensor.YOUR_PROJECTOR
attribute: lamp_hours
name: Laser hours
name: Laser hours
icon: mdi:lightbulb-on-outline
line_color: '#3ddc6b'
line_width: 4
hours_to_show: 336
points_per_hour: 0.5
height: 96
animate: true
card_mod:
style: 'ha-card { background: rgba(18,26,20,0.60); border: 1px solid rgba(61,220,107,0.20);
border-radius: 16px; box-shadow: 0 6px 22px rgba(0,0,0,0.32); backdrop-filter: blur(8px); }'
336 horas são duas semanas. As horas do laser e da lâmpada sobem de forma constante em vez de pular, então uma janela de duas semanas costuma bastar para ver a tendência sem o gráfico parecer chapado.
A visão completa, cada seção e cada cartão da captura de tela no topo desta página, com marcadores no lugar dos IDs de entidade.
YOUR_PROJECTOR pelo ID da entidade do sensor do seu projetor do passo 2, e YOURSERIAL pelo seu ID derivado do número de série do passo 2.YOURSCENE1, YOURSCENE2 e YOURSCENE3 pelos IDs das suas três Cenas, ou adicione e remova blocos para corresponder a quantas Cenas você realmente tem.configuration.yaml, o Home Assistant ser reiniciado e você tocar em Sincronizar com HA.Confira o nome do atributo com o que o sensor realmente carrega: Ferramentas do Desenvolvedor › Estados, sua entidade sensor.YOUR_PROJECTOR, e leia a lista de atributos. Algumas leituras, como HDR PQ ou HDR HLG, só são preenchidas enquanto o projetor está recebendo esse tipo de sinal, então Desconhecido nessas duas pode estar correto e não quebrado. Se o sensor inteiro parecer vazio, acorde o projetor: uma unidade em standby publica muito pouco.
Você ainda não colou o bloco Copiar, ou o Home Assistant não foi reiniciado desde então. Os botões de controle e de Cena chamam scripts que o app escreve, e esses scripts não existem até que Configurações › Automação Residencial › Home Assistant no app tenha o bloco Copiar colado em configuration.yaml, o Home Assistant reiniciado uma vez e Sincronizar com HA tocado. Execute Testar Conexão no app primeiro - ele diz se o bloco está presente antes de você procurar um erro no painel.
Filtre por projpilot em vez do número de série completo - fica mais fácil ver a lista inteira. Se um controle ou Cena que você adicionou há pouco estiver faltando, toque em Sincronizar com HA de novo; ele atualiza no lugar em vez de exigir uma nova configuração. Se scripts antigos e mortos estiverem poluindo a lista depois de você apagar uma Cena, use Remover scripts órfãos no app.
O padrão é fixo, o meio não. Seu sensor leva o nome do modelo do seu próprio projetor, e cada script leva o número de série do seu próprio projetor, não os marcadores desta página. Pegue os dois em Ferramentas do Desenvolvedor › Estados e na tela do Home Assistant do app, como no passo 2, e use esses em vez de digitar o texto de exemplo.
Automação Residencial é um complemento de compra única. Sem assinatura, sem conta, sem nuvem. Uma compra libera em todas as plataformas que você tem.
Voltar para Automação Residencial → · Guia do Usuário completo →
Não. Quando você toca em Sincronizar com HA no app, ele monta para você um painel pronto do Projector Pilot direto no Home Assistant - o sensor ao vivo do projetor mais um botão para cada controle e Cena - e ele aparece na sua barra lateral como Projector Pilot. Esta página serve para montar manualmente a versão mais rica em vidro verde, ou personalizar o que a sincronização criou.
Para igualar o visual da captura de tela, sim: Mushroom, button-card, card-mod e mini-graph-card. Nenhum deles é necessário para os controles funcionarem - cada botão é uma simples chamada de script, e os cartões personalizados são só o estilo por cima.
O sensor do projetor publica suas leituras assim que você entra e sincroniza no app, então os blocos de informação ficam ao vivo na hora. Os botões de controle e de Cena chamam scripts que só existem no Home Assistant depois que você cola o bloco Copiar do app no configuration.yaml, reinicia o Home Assistant e toca em Sincronizar com HA uma vez.
O padrão vai, os caracteres exatos não. O sensor do seu projetor leva o nome do modelo do seu projetor, e cada script leva o nome do número de série do seu projetor. Onde esta página escreve YOUR_PROJECTOR, coloque o ID da entidade do seu próprio sensor; onde escreve YOURSERIAL, coloque o ID derivado do número de série mostrado na tela do Home Assistant do app.