ESP EyeBond Collector — це прошивка ESPHome для підключення гібридного інвертора до Home Assistant без заводського Wi-Fi-колектора SmartESS / EyeBond.
Вона перетворює ESP8266, ESP32 або підтримувану BK72xx-плату на локальний міст-колектор для EyeBond Local.
Використовуйте її, коли:
- у вашого інвертора немає заводського SmartESS / EyeBond-колектора;
- заводський колектор недоступний або працює нестабільно;
- ви хочете локальний міст між інвертором і Home Assistant.
Міст працює у вашій локальній мережі й не підключається до хмари SmartESS.
Стан першого релізу: зв'язок PI30 / Voltronic ASCII перевірено на реальному обладнанні. Зв'язок SMG / Modbus використовує той самий міст і доступний для тестування, але потребує більше звітів із реальних пристроїв.
- Локальне підключення інвертора до Home Assistant через EyeBond Local.
- Звичайне налаштування EyeBond Local: пошук, визначення, створення пристроїв колектора та інвертора.
- Сенсори й керування, які підтримує EyeBond Local для вашої моделі інвертора.
- Можливості ESPHome: OTA-оновлення, журнали, сторінка налаштування Wi-Fi і додаткові сутності ESPHome.
- Керування Wi-Fi з EyeBond Local там, де це підтримується.
- Необов'язковий перемикач швидкості UART на ESP8266/ESP32, якщо додати плату через інтеграцію ESPHome.
- Індикацію стану через вбудований світлодіод плати, з необов'язковим
com_led_pinдля окремого світлодіода зв'язку з інвертором.
Чого тут немає:
- доступу до хмари SmartESS через цей міст;
- моніторингу через застосунок SmartESS для цього моста;
- хмарних функцій EyeBond Local, наприклад навчання пристрою або запису обміну через проксі.
| Порт інвертора | Що потрібно |
|---|---|
| TTL UART | Пряме UART-підключення. Якщо інвертор використовує 5 V TTL, поставте перетворювач рівнів або дільник на ESP RX. |
| RS232 | MAX3232 RS232↔TTL. Не підключайте ESP-піни напряму до RS232. |
| RS485 | MAX485 / MAX3485. Класичним модулям потрібен один GPIO для DE/RE. |
Підтримувані плати:
- ESP8266 з 4 MB пам'яті для прошивки, наприклад Wemos D1 mini.
- Поширені ESP32-плати.
- BK72xx-плати через ESPHome LibreTiny.
Також потрібен ESPHome: додаток ESPHome у Home Assistant або командний рядок ESPHome.
Важливо: поки міст підключений, жоден інший пристрій не має опитувати інвертор на тій самій послідовній лінії. Одна шина інвертора — один активний пристрій, який надсилає запити.
Оберіть схему, яка відповідає порту інвертора.
Часто використовується для портів PI30 / Voltronic.
Для DB9/RJ45 RS232-портів використовуйте MAX3232.
Для портів A/B у SMG / Modbus.
Загальні правила:
- Для TTL і RS232 перехрещуйте TX/RX.
- Використовуйте спільну землю там, де цього потребує ваш перетворювач.
- Для RS485 з'єднуйте A з A, B з B. Якщо не працює — спробуйте поміняти A/B місцями; на деяких пристроях маркування буває навпаки.
- Готова прошивка з браузера стартує на
9600. Інвертори PI30 / Voltronic ASCII часто використовують2400; інвертори SMG / Modbus часто використовують9600.
Повний покроковий опис: Прошивка та перше налаштування. Англійська версія: Flashing & first setup.
Коротко:
- Для стандартної плати скористайтеся прошивкою з браузера або встановіть ESPHome для ручної прошивки.
- Скопіюйте приклад з examples/:
esp8266-d1-mini.yaml— готовий варіант для плат, сумісних із D1 miniesp32-devkit.yaml— готовий варіант для плат, сумісних із ESP32 DevKitesp32-ble.yaml— розширене налаштування Wi-Fi через Bluetooth для ESP32bk72xx.yaml— розширений варіант для BK72xx / LibreTiny
- Створіть
examples/secrets.yamlз назвою та паролем Wi-Fi. - Перевірте тип плати й UART-піни в YAML.
- Один раз прошийте плату через USB.
- Підключіть ESP-плату до інвертора.
- Додайте EyeBond Local у Home Assistant і запустіть звичайний пошук колектора.
Приклад ESPHome-блоку:
external_components:
- source: github://groove-max/esp-eybond-collector
components: [eybond_collector]
uart:
id: inverter_uart
tx_pin: GPIO13
rx_pin: GPIO12
baud_rate: 9600
eybond_collector:
id: bridge
uart_id: inverter_uart
flow_control_pin: GPIO14 # підключайте тільки для RS485; для TTL/RS232 лишіть вільнимНеобов'язковий перемикач швидкості UART на ESP8266/ESP32:
select:
- platform: eybond_collector
eybond_collector_id: bridge
name: "Швидкість UART інвертора"
restore_value: trueЗвичайний спосіб змінити швидкість — через EyeBond Local: відкрийте меню Налаштувати для ESP-моста, оберіть Змінити швидкість UART інвертора, виберіть швидкість і підтвердьте дію. На ESP8266/ESP32 вибрана швидкість зберігається і відновлюється після перезавантаження або вимкнення живлення. Під час зміни швидкості зв'язок з інвертором може коротко зникнути.
Цей ESPHome-перемикач з'являється на ESPHome-пристрої в Home Assistant. Він корисний для діагностики, але для звичайного використання краще користуватися дією EyeBond Local.
На BK72xx / LibreTiny змініть baud_rate: у YAML і перепрошийте плату.
Готові варіанти прошивки використовують одну схему пінів для всіх фізичних підключень:
| Варіант | TX | RX | DE/RE для RS485 | Світлодіод стану | Типова швидкість UART |
|---|---|---|---|---|---|
| ESP8266 D1 mini | GPIO13 / D7 | GPIO12 / D6 | GPIO14 / D5 | GPIO2 / D4, інверсний режим | 9600 |
| ESP32 DevKit | GPIO17 | GPIO16 | GPIO4 | GPIO2 | 9600 |
Для TTL і RS232 використовуйте TX/RX/GND і не підключайте DE/RE. Для RS485 з'єднайте DE та RE разом і підключіть до вказаного DE/RE-піна.
Світлодіод у таблиці — це status_led_pin; на одному світлодіоді він показує і стан підключення, і мерехтіння зв'язку з інвертором. Додайте необов'язковий com_led_pin для окремого світлодіода зв'язку — див. Світлодіоди стану (STATUS) і зв'язку (COM).
- Встановіть EyeBond Local.
- Увімкніть ESP-міст і переконайтеся, що він у Wi-Fi.
- Відкрийте Налаштування → Пристрої та служби → Додати інтеграцію → EyeBond Local.
- Використовуйте звичайне налаштування мережі колектора.
- Міст має знайтися як колектор.
- EyeBond Local підключиться через міст і спробує визначити інвертор.
Для найпростішого пошуку тримайте Home Assistant і міст в одній локальній мережі.
Після налаштування в Home Assistant можуть бути два важливі пристрої:
- пристрої колектора/інвертора EyeBond Local;
- ESPHome-пристрій для функцій прошивки: журнали, OTA і необов'язковий перемикач швидкості UART.
Для власного ESP-моста EyeBond Local також показує дію Змінити швидкість UART інвертора в меню Налаштувати колектора. Використовуйте її, якщо міст знайдено, але інвертору потрібна інша швидкість послідовного зв'язку. На ESP8266/ESP32 вибрана швидкість зберігається і відновлюється після перезавантаження або вимкнення живлення.
Коли колектор підключиться до вашої мережі, відкрийте
http://<ip-колектора>/. Якщо підключитися до Wi-Fi не вдалося, приєднайтеся до
тимчасової мережі з назвою на кшталт V00000... і відкрийте
http://192.168.4.1/. В обох випадках відкриється та сама сторінка.
На ній можна:
- обрати Wi-Fi-мережу та ввести пароль;
- вказати адресу й порт сервера Home Assistant;
- переглянути або змінити PN колектора;
- перевірити UART-піни та налаштувати зв’язок з інвертором;
- побачити, чи надходять і передаються дані через UART / RS485;
- оновити прошивку через мережу.
Кожен блок має окрему кнопку Зберегти. Перед зміною PN, адреси сервера або UART сторінка попередить, як це може вплинути на зв’язок з Home Assistant чи інвертором. У списку Wi-Fi видно рівень сигналу та захист мережі, а поточну мережу колектора виділено окремо.
На ESP8266 та ESP32 параметри UART можна змінити прямо на сторінці. Вони зберігаються у flash-пам’яті й не втрачаються після перезапуску. На BK72xx ці параметри можна лише переглянути: для зміни потрібно відредагувати YAML і знову прошити плату. Доступні українська, англійська та російська мови, а також світла і темна теми.
У власному YAML сторінка вмикається через web_configuration: true у
eybond_collector: і потребує секції captive_portal:.
Ключ прив’язки не потрібен. Якщо ESPHome Device Builder працює в тій самій мережі й отримує mDNS-повідомлення, він покаже колектор серед знайдених пристроїв. Натисніть Adopt — ESPHome створить локальний YAML із пакетом для відповідної плати. Перед першим оновленням перевірте тип плати та призначення пінів.
EyeBond Local також може змінювати Wi-Fi-налаштування моста. Якщо нові дані неправильні, міст має перейти на сторінку налаштування, а не зникнути назавжди.
Під час першого сканування може відобразитися лише поточна мережа. Якщо повний список не з’явився, оновіть сторінку за кілька секунд.
- Міст не створює команди інвертору самостійно.
- Він пересилає команди від EyeBond Local до інвертора і повертає відповідь.
- Якщо інвертор мовчить, міст повідомляє тишу, а не вигадані дані.
- Міст локальний і не підключається до хмари SmartESS.
- Хмарні дії EyeBond Local не застосовуються до цього моста.
| Проблема | Що спробувати |
|---|---|
| EyeBond Local не знаходить міст | Перевірте, що ESP-плата в мережі, у тій самій мережі, що й Home Assistant, і доступна з Home Assistant. |
| Міст знайдено, але інвертор не визначено | Перевірте UART-піни, напрям TX/RX, спільну землю, швидкість UART і тип перетворювача. Це найчастіша проблема. |
| У журналах ESPHome видно передачу, але немає прийому | Неправильний шлях відповіді інвертора: RX-пін, проводка, перетворювач рівнів, RS485 A/B або швидкість UART. |
| Випадкові або нечитабельні дані послідовного порту | Зазвичай неправильна швидкість UART або неправильне перетворення рівнів. |
| Сенсори зникли пізніше | Перевірте живлення інвертора, кабель послідовного зв'язку, Wi-Fi ESP і чи не перейшов міст на сторінку налаштування після зміни Wi-Fi. |
| Потрібна інша швидкість UART | В EyeBond Local відкрийте меню Налаштувати для ESP-моста і скористайтеся дією Змінити швидкість UART інвертора. |
| Зміна Wi-Fi не вдалася | Підключіться до тимчасової Wi-Fi-мережі моста з назвою на кшталт V00000... і введіть правильні дані Wi-Fi знову. |
Якщо EyeBond Local бачить міст, але інвертор не працює, створіть архів підтримки в EyeBond Local і прикріпіть його до звернення на GitHub.
- Покажчик документації
- Прошивка та перше налаштування, включно з прошивкою з браузера
- Flashing & first setup — англійська версія
- Contributing
- Схеми підключення: TTL, RS232, RS485
Ліцензовано під MPL-2.0.