DIY Ambilight для любого телевизора с Hyperion
Важно: HDCP и некоторые HDMI-сплиттеры могут блокировать захват видео. Если сигнал не проходит — попробуйте сплиттер с функцией подавления HDCP или другой захват.
О чём эта инструкция
Развернута пошаговая инструкция по установке Hyperion на Raspberry Pi (через HyperBian), подключению WS2812B/NeoPixel, настройке захвата HDMI и тонкой калибровке цветов. Включены рекомендации по питанию, отладке, чек-листы, критерии приёмки и альтернативные подходы.
Ключевые термины в одну строку
- Hyperion: открытое ПО для амбиентного освещения, которое считывает цвета с видео и отображает их на LED-ленте.
- HyperBian: готовый образ для Raspberry Pi с предустановленным Hyperion.
- WS2812B / NeoPixel: адресуемая RGB LED-лента, управляется по одно-линийному протоколу данных.
- HDMI capture: устройство для захвата HDMI-сигнала (обычно по USB) с функцией pass-through.
Что понадобится
- Raspberry Pi 3 или 4 (или Raspberry Pi Zero W для компактных сборок).
- microSD-карта, 8 ГБ и выше.
- WS2812B (NeoPixel) — ролл 5 м (обычно 60 LED/м или 30 LED/м).
- Блок питания 5 В — рекомендовано 5 A при ленте 60 LED/м.
- HDMI-capture с 4K pass-through и поддержкой HDCP или HDMI-сплиттер, способный «снять» HDCP.
- Два HDMI-кабеля.
Дополнительно (опционально): D1 Mini / NodeMCU и микрофон/анализатор для звуковой реакции; Velcro/двухсторонний скотч для крепления.
Факт-бокс — полезные численные ориентиры:
- Типичная плотность: 60 LED/м.
- Максимальный ток одной WS2812 на белом: до ~60 мА (полный белый; ориентир по даташиту).
- Для 300 LED (5 м при 60 LED/м) — пиковый ток до ~18 A при полном белом (теоретически). Поэтому практическая рекомендация — ограничивать яркость и использовать распределённое питание; блок 5 В 5 A подойдёт для частичной загрузки и средней яркости.
Примечание: не указывайте неограниченную яркость; планируйте питание с запасом и разделяйте питание между лентой и Pi.

Мини-методология проекта — что и почему
- Захват видео (HDMI capture) считывает цвета исходного сигнала без вмешательства в ваши устройства.
- Hyperion анализирует кадр и определяет цвет в каждой зоне вокруг экрана.
- LED-лента, приклеенная по периметру ТВ, воспроизводит эти цвета из подсчитанных зон, создавая иллюзию «выходящих» цветов.
Преимущества: независимость от производителя ТВ, гибкость в настройке, автономная работа (локально, без интернета). Недостатки: сложнее в установке, требует внешнего захвата HDMI и питания.
Шаг 1 — Подготовка SD-карты и образа HyperBian
- Скачайте образ HyperBian с GitHub.
- Установите Raspberry Pi Imager или другой инструмент для записи образа на SD-карту.
- Вставьте microSD в компьютер и запустите Raspberry Pi Imager. Выберите образ HyperBian, укажите хранилище (SD) и нажмите “Записать” (Write).
- Убедитесь, что на карте нет важной информации; подтвердите запись.

- После завершения записи извлеките и снова вставьте SD-карту.
- Откройте раздел boot в Проводнике.
- Создайте пустой текстовый файл и переименуйте его в ssh (без расширения .txt) — это включит SSH-доступ при первом запуске.

Если нужен Wi‑Fi, создайте файл wpa_supplicant.conf и вставьте следующий блок (замените YOUR_SSID и YOUR_PASSWORD):
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=GB
network={
ssid="YOUR_SSID"
psk="YOUR_PASSWORD"
key_mgmt=WPA-PSK
}Сохраните, извлеките SD-карту и вставьте её в Raspberry Pi. Подключите питание — первый запуск может занять несколько минут.
Шаг 2 — Подключение LED-ленты WS2812B к Raspberry Pi

- Снимите защитную пленку на ленте и аккуратно приклейте её по периметру задней панели телевизора. Отметьте количество светодиодов на каждой стороне — эти числа понадобятся в настройках.
- Подключите контакты ленты: GND → GND питания (и Raspberry Pi), +5V → +5V питания, Data → GPIO18 (по умолчанию PWM/PCM или проектировано под SPI/PCM в Hyperion). Используйте общий земляной провод между блоком питания и Pi.
- Подключите USB HDMI-capture к Raspberry Pi (порт USB).
- Подключите HDMI-выход источника (Xbox, Fire TV, PS, медиаплеер) к HDMI-входу capture-карты.
- HDMI-выход capture-карты подключите к телевизору. Таким образом сигнал проходит через capture и одновременно отображается на ТВ.
Важно о питании: подключать ленту напрямую к Raspberry Pi не рекомендуется при большом количестве светодиодов. Для ленты 5 м (60 LED/м) используйте отдельный блок питания 5 В с достаточным током и распределите питание по концам ленты.
Советы по проводке:
- При длинных лентах подавайте питание с нескольких точек (по концам и в середине) во избежание падения напряжения.
- Используйте толстые провода для +5V и GND (например, AWG 16–18) при значительных токах.
- Разъёмы и пайка: сделайте надёжные контакты, защитите усадочной трубкой и изолентой.
Шаг 3 — Поиск IP HyperBian и вход в веб-интерфейс
- Зайдите в интерфейс вашего роутера и найдите список DHCP-клиентов — найдите устройство с именем HyperBian или по MAC-адресу.
- Альтернатива: используйте мобильное приложение Fing для поиска устройств в сети.

- В браузере введите IP-адрес Raspberry Pi и порт 8090, например: 192.168.0.136:8090 и нажмите Enter. Откроется веб-интерфейс Hyperion.

Шаг 4 — Настройка LED Interfaces и Layout
- В интерфейсе выберите раздел LED Interfaces → LED Output.
- В поле “Hardware LED Count” введите общее число светодиодов (сумма по всем сторонам). Например, 300 для 5 м при 60 LED/м. Нажмите Сохранить.

- Перейдите в LED Layout и поочерёдно укажите число светодиодов на верхней, нижней, левой и правой стороне. Точная нумерация критична для корректного отображения цветов. Снова нажмите Сохранить.

Шаг 5 — Активация USB Capture и параметры захвата
- Откройте Capturing Hardware и отметьте чекбокс Activate рядом с USB Capture. Проверьте, что USB capture подключён к Raspberry Pi.
- В выпадающем списке Devices discovered выберите вашу capture-карту — появятся дополнительные настройки.
- Выберите разрешение устройства (Device Resolution) и частоту кадров (Frames per second). Рекомендация: не выше 720p и ~10 FPS. Hyperion не требует высокой чёткости — нужен качественный цветопередающий захват, но низкое разрешение снижает задержку.

- Нажмите “Save settings” и вернитесь на главную страницу. Включите источник и нажмите иконку монитора в правом верхнем углу, чтобы увидеть предпросмотр и цвета, выводимые на ленту.

После успешной настройки можно закрепить Raspberry Pi и capture-карту с помощью двустороннего скотча или Velcro, чтобы при необходимости быстро отсоединять.
Калибровка и тонкая настройка Hyperion

- В разделе эффектов можно выбрать загрузочную анимацию, предустановленные эффекты и поведение при старте.
- Если цвета на ленте отличаются от цветов в предпросмотре, используйте встроенный RGB-калибратор/мастер.
- При заметной задержке уменьшите разрешение или FPS в настройках захвата.
Important: если ваш источник использует HDCP, захват может не отображать картинку. В таком случае проверьте сплиттер, который способен удалить HDCP, либо используйте устройство, официально поддерживающее pass-through.
Тесты и критерии приёмки
Критерии приёмки:
- LED-лента светится и меняет цвета согласно сцене на экране.
- Задержка между изменением цвета на экране и ленте заметно невелика (при 10 FPS задержка визуально не раздражает).
- Нет видимых перепайка/мерцания; питание и заземление корректны.
- Все зоны ленты соответствуют заданной раскладке (количество LED и направление).
Тест-кейсы:
- Тёмная сцена с яркими акцентами — цвета должны повторять акцентные участки.
- Быстрая смена сцен (гонки/экшн) — проверка задержки и плавности.
- Полностью белый экран — оцените тепловую нагрузку и ток; ограничьте яркость при необходимости.
- Сигнал с HDCP — если отсутствует изображение, проверьте сплиттер.
Безопасность и надёжность (питание и тепловой режим)
- Не пересчитывайте ток ленты «на глаз». WS2812B при полной белой выдаче потребляют максимум около 60 мА на светодиод. Для 300 LED это теоретически ~18 A — значит, стандартный 5 V 5 A блок питания не обеспечит пиковую полную яркость.
- Практика: ограничивайте яркость, используйте распределённое питание, и отвечайте за тепловой режим ленты и блоков питания.
- Разделяйте питание Pi и ленты, но соедините земли (GND).
Альтернативные подходы и сравнение
- Коммерческий Philips Ambilight — простая установка, встроенная в телевизор, но дорогая и привязана к телевизору производителя.
- Другие OSS-решения: Prismatik, Boblight — функционально близки, но Hyperion проще при работе с адресными лентами и поддерживает Raspberry Pi.
- Звуковая реализация на ESP8266/NodeMCU и ленте WS2812: лента реагирует на звук (музыку), но не воспроизводит цвета экрана. Хорошо для музыки, но не заменяет Ambilight при просмотре видео.
Когда Hyperion не подходит:
- Если вы хотите «встроенное» решение без внешних устройств и заморочек — лучше купить телевизор с Ambilight.
- Если источник строго запрещает аппаратный захват (странные DRM) — придётся искать обходы или менять источник.
Сценарии отказа и обходные решения
- Проблема: capture не показывает картинку из-за HDCP.
Решение: попробовать другой capture с pass-through, использовать HDMI-сплиттер, который снимает HDCP, или подключить источник напрямую к ТВ и захватить с другого места (например, с медиаплеера без HDCP). - Проблема: LED моргают/шумят.
Решение: проверьте общий GND, избегайте длинных тонких проводов для питания, добавьте конденсатор 1000 μF на линию питания ленты.
Роль‑ориентированные чек-листы
Инсталлятор (тот, кто собирает конструкцию):
- Проверить целостность ленты и контактов.
- Проложить и закрепить ленту, отметить числа LED на каждой стороне.
- Подключить питание и проверить отсутствие нагрева.
- Установить Raspberry Pi и захват, закрепить Velcro/скотчем.
Пользователь (тот, кто настраивает ПО):
- Найти IP-адрес HyperBian в роутере.
- Зайти в 192.168.x.x:8090 и последовательно настроить LED Count → Layout → Capture.
- Проверить предпросмотр, провести калибровку цветов.
Руководство по откату и инцидентам
- Если после обновления Hyperion перестала работать LED-лента: откатиться к предыдущему образу HyperBian (оставьте резервную копию SD-карты) или восстановите конфигурацию из бэкапа.
- Если Pi не загружается: проверьте питание, карту SD и логи через подключение по UART/SSH.
Мaturity levels — зрелость решения
- Уровень 1 (прототип): базовая работающая конфигурация, цвета соответствуют, но возможны дребезжание или перегрев при полной яркости.
- Уровень 2 (рабочая инсталляция): питание правильно рассчитано, стабильность на длительных просмотрках, выровненная калибровка.
- Уровень 3 (производственная/премиум): распределённое питание, скрытые провода, автоматическая регулировка яркости по окружению, интеграция с умным домом.
Советы по улучшению впечатления
- Ограничьте максимальную яркость в Hyperion, чтобы снизить потребление.
- Используйте эффект плавного перехода (smoothing) в настройках, чтобы убрать резкие скачки цвета.
- Добавьте датчик освещённости, чтобы автоматом понижать яркость LED при дневном свете.
Краткий список материалов и настроек (шаблон)
- Raspberry Pi 4 2–4 GB
- microSD 16 GB
- WS2812B 5 м, 60 LED/м
- Блок питания 5 V 10 A (рекомендуется при интенсивном использовании)
- HDMI capture USB 3.0 с pass-through
- 2 HDMI-кабеля
Decision flowchart (упрощённая схема принятия решения)
flowchart TD
A[Начало: есть телевизор и источник сигнала?] --> B{Источник использует HDCP}
B -- Да --> C[Попробовать HDMI-сплиттер с удалением HDCP]
C --> D{HDCP снят?}
D -- Да --> E[Подключить HDMI-capture и продолжить]
D -- Нет --> F[Использовать альтернативный источник или купить коммерческий Ambilight]
B -- Нет --> E
E --> G[Установить HyperBian на Pi и настроить Hyperion]
G --> H[Приклеить ленту, настроить Layout и Capture]
H --> I[Калибровка и тест]Краткая галерея крайних случаев
- Короткие ленты (30 LED/м) подходят для малых ТВ и значительно снижают потребление.
- Длинные непрерывные ленты без распределения питания — риск падения напряжения и неоднородности цвета.
- Звукореактивная версия: проще и дешевле (ESP8266 + микрофон), но не повторяет сцену экрана.
Заключение
Hyperion на Raspberry Pi — гибкое и мощное решение, если вы готовы потратить время на сборку и калибровку. Оно даёт приблизительный опыт Philips Ambilight на любой технике и позволяет тонко настраивать эффекты и поведение. Продумайте питание, учитывайте HDCP и заранее подсчитайте число светодиодов для корректной конфигурации.
Итоговые рекомендации:
- Начните с небольшого теста (короткая лента, 30–60 LED), чтобы понять поведение.
- Планируйте питание с запасом и соединяйте GND.
- Держите резервную копию конфигурации Hyperion.