Skip to content

Latest commit

 

History

History
262 lines (178 loc) · 17.7 KB

README.uk.md

File metadata and controls

262 lines (178 loc) · 17.7 KB

ESP EyeBond Collector

ESPHome License: MPL 2.0

English

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.

Важливо: поки міст підключений, жоден інший пристрій не має опитувати інвертор на тій самій послідовній лінії. Одна шина інвертора — один активний пристрій, який надсилає запити.


Підключення

Оберіть схему, яка відповідає порту інвертора.

TTL UART

Часто використовується для портів PI30 / Voltronic.

TTL wiring

RS232

Для DB9/RJ45 RS232-портів використовуйте MAX3232.

RS232 wiring

RS485

Для портів A/B у SMG / Modbus.

RS485 wiring

Загальні правила:

  • Для TTL і RS232 перехрещуйте TX/RX.
  • Використовуйте спільну землю там, де цього потребує ваш перетворювач.
  • Для RS485 з'єднуйте A з A, B з B. Якщо не працює — спробуйте поміняти A/B місцями; на деяких пристроях маркування буває навпаки.
  • Готова прошивка з браузера стартує на 9600. Інвертори PI30 / Voltronic ASCII часто використовують 2400; інвертори SMG / Modbus часто використовують 9600.

Швидкий старт

Повний покроковий опис: Прошивка та перше налаштування. Англійська версія: Flashing & first setup.

Коротко:

  1. Для стандартної плати скористайтеся прошивкою з браузера або встановіть ESPHome для ручної прошивки.
  2. Скопіюйте приклад з examples/:
    • esp8266-d1-mini.yaml — готовий варіант для плат, сумісних із D1 mini
    • esp32-devkit.yaml — готовий варіант для плат, сумісних із ESP32 DevKit
    • esp32-ble.yaml — розширене налаштування Wi-Fi через Bluetooth для ESP32
    • bk72xx.yaml — розширений варіант для BK72xx / LibreTiny
  3. Створіть examples/secrets.yaml з назвою та паролем Wi-Fi.
  4. Перевірте тип плати й UART-піни в YAML.
  5. Один раз прошийте плату через USB.
  6. Підключіть ESP-плату до інвертора.
  7. Додайте 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).


Додавання в Home Assistant

  1. Встановіть EyeBond Local.
  2. Увімкніть ESP-міст і переконайтеся, що він у Wi-Fi.
  3. Відкрийте Налаштування → Пристрої та служби → Додати інтеграцію → EyeBond Local.
  4. Використовуйте звичайне налаштування мережі колектора.
  5. Міст має знайтися як колектор.
  6. 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 Dashboard

Ключ прив’язки не потрібен. Якщо 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.


Документація


Ліцензія

Ліцензовано під MPL-2.0.