Застосунок уже будує вам робочий дашборд під час синхронізації - ця сторінка містить розкішну версію, зібрану вручну. Десять кроків, YAML кожної картки та повне подання, яке можна вставити одним махом. Плитки із зеленого скла, живе відображення зображення, ваші сцени та графік годин роботи лазера - усе від одного датчика проєктора. Змініть два рядки, і воно ваше.
configuration.yaml та перезапуску Home Assistant. Саме це створює скрипти, які викликає кожна кнопка керування нижче.Цей дашборд живлять дві речі, і різниця між ними важлива на кожному кроці нижче.
| Походить із | Дає вам |
|---|---|
Датчик проєктора, sensor.YOUR_PROJECTOR | Кожне показання. Живлення, вхід, режим кольору, усі параметри зображення, HDR і сигнал, об'єктив і геометрія, години роботи лампи. Живі, щойно ви входите й синхронізуєте, блок Copy не потрібен. |
Синхронізовані скрипти застосунку, script.projpilot_YOURSERIAL_... | Кожен елемент керування. Живлення, входи, режими кольору, пам'ять об'єктива та ваші сцени. Вони існують лише після того, як вставлено блок Copy, перезапущено Home Assistant і ви торкнулися Sync With HA. |
Усі чотири є в стандартному магазині HACS. У Home Assistant: HACS › Frontend › Explore & Download Repositories, знайдіть назву, натисніть Download, потім перезавантажте браузер.
| Шукайте | Для чого потрібна | Якщо пропустити |
|---|---|---|
| Mushroom | Кожна плитка інформації, кнопка керування й плитка сцени | Використайте звичайну картку button. Працює, але виглядає квадратніше. |
| button-card | Головна картка з живим підписом | Використайте картку entity або шаблонну картку Mushroom з меншою кількістю деталей. |
| card-mod | Тло із зеленого скла, рамки й градієнти | Усе працює. Просто без сяйва. |
| mini-graph-card | Історія годин роботи лазера в розділі «Обслуговування» | Використайте вбудовану картку history-graph. |
Кожен фрагмент на цій сторінці використовує два заповнювачі. Знайдіть свої один раз - і решта зводиться до копіювання та вставлення.
sensor.YOUR_PROJECTOR → Інструменти розробника › Стани в Home Assistant, відфільтруйте за projector_pilot. Приблизно так: sensor.projector_pilot_epson_qb1000b_qb1000w.YOURSERIAL → відкрийте застосунок, Налаштування › Домашня автоматизація › Home Assistant. ID на основі серійного номера показано просто там, і він є серединою кожної назви синхронізованого скрипта: script.projpilot_YOURSERIAL_power_on, script.projpilot_YOURSERIAL_input_hdmi1 тощо.Також можна відфільтрувати Інструменти розробника › Стани за projpilot, щоб побачити весь список синхронізованих елементів керування одразу, коли блок Copy з кроку 1 і Sync виконано.
Власні налаштування подання, якщо волієте вводити їх самі:
title: Projector Pilot views: - title: Projector Pilot path: projector-pilot icon: mdi:projector cards: []
Почніть із чогось, що лише читає, щоб переконатися у правильності вашого ID сутності, перш ніж торкатися чогось, що надсилає команду. Ця плитка жива, щойно існує датчик проєктора, без блока Copy й без синхронізації. Додайте картку, Редагувати в YAML, вставте:
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; }'
Така сама форма читає будь-який із приблизно 80 атрибутів датчика: замініть brightness на contrast, gamma, color_temp, hdr_pq, lamp_hours - що завгодно на плитці.
Збережіть. Якщо з'явилося справжнє число чи слово, ваш ID сутності правильний і все нижче працюватиме. Якщо порожньо, поверніться до кроку 2.
Простий заголовок - це порожній простір. Це картка markdown із градієнтним тлом від card-mod, і саме вона перетворює стос плиток на іменовані розділи. Кожен розділ на панелі починається з такої картки, лише з іншим підписом і емодзі.
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; }'
Змініть код емодзі й текст підпису; блок card-mod однаковий у кожному розділі.
Ця кнопка надсилає команду, а не лише читає значення, тому спершу мають існувати скрипти. Вона викликає script.projpilot_YOURSERIAL_power_on, який застосунок записує лише після того, як ви вставите його блок Copy в configuration.yaml, перезапустите Home Assistant і торкнетеся Sync With 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; }'
Така сама картка для Power Off, Screen Blank, HDMI 1, HDMI 2, A/V Mute, режиму кольору або пам'яті об'єктива: змінюються лише підпис, значок і service.
Головна картка вгорі панелі - це button-card: великий стан живлення, однорядковий підсумок з кількох атрибутів одразу та оформлення із зеленого скла на всій картці, а не лише на рамці.
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'' ]]]'
Скорочено до частин, що змінюються від встановлення до встановлення. Повна картка також задає значок, назву й позиції підписів у сітці; усе це є у файлі для завантаження на кроці 10.
Волієте тоншу смугу? mushroom-chips-card виконує ту саму роботу в одному рядку маленьких чипів: стан живлення, вхід, режим кольору, відеодіапазон і години роботи лампи, кожен - шаблон, що читає state_attr('sensor.YOUR_PROJECTOR', ...). Використовуйте або одне, або інше, не обидва, угорі панелі.
Кожна сцена, яку ви зберігаєте в застосунку, після синхронізації стає скриптом із назвою script.projpilot_YOURSERIAL_scene_<id>, а плитка для неї - це та сама картка кнопки керування з кроку 6 з назвою й значком сцени.
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; }'
Замініть YOURSCENE1 на ID, показаний для цієї сцени у списку синхронізованих елементів керування застосунку. Одна плитка на сцену, у horizontal-stack.
Датчик проєктора записується Home Assistant, як і будь-який інший, тож lamp_hours отримує історію безкоштовно. Жодних додаткових датчиків, помічників чи попереднього налаштування, у розділі «Обслуговування».
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 годин - це два тижні. Години роботи лазера й лампи зростають рівномірно, а не стрибками, тож двотижневого вікна зазвичай досить, щоб побачити тенденцію, а графік не здавався пласким.
Повне подання, кожен розділ і кожна картка зі скриншота на початку цієї сторінки, із заповнювачами замість ID сутностей.
YOUR_PROJECTOR на ID сутності вашого датчика проєктора з кроку 2, а YOURSERIAL на ваш ID на основі серійного номера з кроку 2.YOURSCENE1, YOURSCENE2 і YOURSCENE3 на ваші три ID сцен або додайте й видаліть плитки відповідно до того, скільки сцен у вас насправді є.configuration.yaml, Home Assistant не перезапущено й ви не торкнулися Sync With HA.Звірте назву атрибута з тим, що датчик справді містить: Інструменти розробника › Стани, ваша сутність sensor.YOUR_PROJECTOR, і прочитайте її перелік атрибутів. Деякі показання, як-от HDR PQ чи HDR HLG, заповнюються лише тоді, коли проєктор активно отримує такий сигнал, тож Unknown для цих двох може бути правильним, а не збоєм. Якщо весь датчик виглядає розрідженим, розбудіть проєктор: пристрій у режимі очікування публікує дуже мало.
Ви ще не вставили блок Copy або Home Assistant не перезапускали відтоді. Кнопки керування й сцен викликають скрипти, які пише застосунок, а вони не існують, доки в застосунку в Налаштування › Домашня автоматизація › Home Assistant блок Copy не вставлено в configuration.yaml, Home Assistant не перезапущено один раз і не торкнуто Sync With HA. Спершу запустіть Test Connection у застосунку - він скаже, чи є блок, перш ніж ви шукатимете помилку в дашборді.
Відфільтруйте за projpilot, а не за повним серійним номером - так легше побачити весь список. Якщо нещодавно доданого елемента керування чи сцени немає, ще раз торкніться Sync With HA; він оновлює наявне, а не вимагає нового налаштування. Якщо після видалення сцени список засмічують старі мертві скрипти, скористайтеся Remove orphaned scripts у застосунку.
Шаблон сталий, середина - ні. Ваш датчик названо за моделлю вашого проєктора, а кожен скрипт містить серійний номер вашого проєктора, а не заповнювачі з цієї сторінки. Візьміть обидва значення з Інструменти розробника › Стани та з екрана Home Assistant у застосунку, як на кроці 2, і використовуйте їх замість прикладу тексту.
Домашня автоматизація - це одноразове доповнення. Без підписки, без облікового запису, без хмари. Одна покупка розблоковує її на кожній платформі, якою ви користуєтеся.
Назад до домашньої автоматизації → · Повний посібник користувача →
Ні. Коли ви торкаєтеся Sync With HA у застосунку, він сам створює готовий дашборд Projector Pilot просто в Home Assistant - живий датчик проєктора та кнопку для кожного елемента керування й кожної сцени, - і він з'являється на бічній панелі як Projector Pilot. Ця сторінка потрібна, щоб зібрати багатшу версію із зеленого скла вручну або налаштувати те, що створив Sync.
Щоб відтворити вигляд зі скриншота - так: Mushroom, button-card, card-mod і mini-graph-card. Жодна з них не потрібна для роботи самих елементів керування - кожна кнопка це звичайний виклик скрипта, а картки спільноти лише додають оформлення.
Датчик проєктора публікує свої показання, щойно ви входите та синхронізуєте у застосунку, тож плитки інформації оживають одразу. Кнопки керування й сцен викликають скрипти, які існують у Home Assistant лише після того, як ви вставите блок Copy із застосунку в configuration.yaml, перезапустите Home Assistant і один раз торкнетеся Sync With HA.
Шаблон збігатиметься, а точні символи - ні. Датчик вашого проєктора названо за моделлю вашого проєктора, а кожен скрипт названо за його серійним номером. Скрізь, де ця сторінка пише YOUR_PROJECTOR, підставте ID власного датчика; скрізь, де вона пише YOURSERIAL, підставте ID на основі серійного номера, показаний на екрані Home Assistant у застосунку.