Більшість побутової техніки продовжує використовувати інфрачервоні пульти, а отже не може безпосередньо працювати з Home Assistant. Вирішити цю проблему можна за допомогою ESP32, перетворивши її на компактний ІЧ‑хаб.
У попередній статті ми навчилися зчитувати ІЧ‑команди з будь‑якого пульта. Тепер використаємо ці дані для створення власного ІЧ‑передавача на ESPHome. Цей проєкт стане основою компактного ІЧ‑хаба з датчиком температури і вологості DHT11, який можна розмістити в будь‑якій кімнаті і використовувати для керування технікою з Home Assistant.
Що знадобиться
- ESP32 або ESP32‑C3 Super Mini;
- ІЧ‑світлодіод (бажано TSAL6400 або аналог);
- транзистор і резистор для керування світлодіодом;
- ESPHome;
- Home Assistant.
Для більшої дальності та широкого кута передачі сигналу рекомендується використовувати кілька ІЧ‑світлодіодів. У моєму проєкті встановлені три світлодіоди, підключені через транзисторний ключ, що забезпечує впевнене керування технікою практично з будь‑якої точки кімнати.
Налаштування ІЧ‑передавача
Для передачі ІЧ‑команд використовується компонент remote_transmitter. Достатньо вказати GPIO, до якого підключений ІЧ‑світлодіод.
remote_transmitter:
pin: GPIO3
carrier_duty_percent: 33%
Параметр carrier_duty_percent визначає коефіцієнт заповнення несучої частоти. Значення 33% добре підходить для більшості побутових пристроїв.
Створення першої кнопки
Команди, зчитані в попередній статті, можна використовувати безпосередньо в ESPHome. Наприклад, кнопка ввімкнення люстри виглядає наступним чином:
button:
platform: template
name: "Люстра Power"
on_press:
remote_transmitter.transmit_nec:
address: 0xFF00
command: 0xB946
Значення address і command необхідно замінити на дані, зчитані з вашого пульта. Аналогічним способом можна додати будь‑яку кількість кнопок для керування різними пристроями.
Мінімальна конфігурація ESPHome
Нижче наведено спрощений приклад конфігурації. Повну версію проєкту з кількома кнопками можна завантажити в кінці статті.
esphome:
name: rvdir
esp32:
variant: esp32c3
framework:
type: esp-idf
logger:
api:
ota:
platform: esphome
wifi:
ssid: "Ваш Wi-Fi"
password: "Ваш пароль"
remote_transmitter:
pin: GPIO3
carrier_duty_percent: 33%
button:
platform: template
name: "Люстра Power"
on_press:
remote_transmitter.transmit_nec:
address: 0xFF00
command: 0xB946
Готовий корпус
Для цього проєкту розроблено компактний корпус під ESP32‑C3 Super Mini, три ІЧ‑світлодіоди та датчик температури і вологості DHT11. Усі компоненти встановлюються в підготовлені посадкові місця, а кришка фіксується защіпками без використання гвинтів.
STL‑файли корпусу можна безкоштовно завантажити на Thingiverse. Якщо у вас немає 3D‑принтера, готовий корпус або комплект для складання можна замовити на нашому сайті.
Висновок
ESPHome дозволяє перетворити звичайну ESP32 на універсальний ІЧ‑передавач буквально за кілька хвилин. Використовуючи коди, зчитані з оригінального пульта, ви зможете керувати побутовою технікою безпосередньо з Home Assistant. Нижче ви знайдете повний YAML проєкту, який можна використати як основу для власного ІЧ‑хаба.
Коментарі до статті
Поки що немає коментарів. Будьте першим!
Додати коментар