Подключение контроллера SmartTherm к HomeAssistant
Подключение контроллера SmartTherm к HomeAssistant
Если вы являетесь счастливым владельцем индивидуального жилого дома, для отопления которого вы используете или планируете использовать газовый котел и вы хотите использовать для управления котлом Home Assistant, то вам необходимо выполнить следующее.
Предварительные шаги
Выбор газового котла с протоколом OpenTherm
Убедитесь, что ваш котёл поддерживает протокол OpenTherm. Не все производители газовых котлов пишут в инструкции к котлу о наличии такой возможности, не все продавцы и инженеры по обслуживанию газовых котлов знают о наличии такого протокола, не всегда поддержка, даже от пафосных дистрибьюторов, например, котлов Bosсh и Buderus сможет оказать вам помощь. В некоторых случаях может упоминаться наличие цифровой шины, однако следует иметь ввиду, что цифровых шин может быть с деяток разных, несовместимых межу собой на физическом и логическом уровне.
Список газовых котлов, поддерживающих OpenTherm можно посмотреть тут.
Адаптер OpenTherm
Установка Home Assistant
Установка автоматизации ESPHome OpenTherm в Home Assistant
Если у вас есть газовый котел отопления частного дома, то чтобы добавить в HA новое ESP устройство -например плату управления котлом Opentherm от контроллера Home Assistant (foto1 ), необходимо сделать следующее.
-- Скачать с репозитория бинарный файл. КАк его править, это отдельная история. Нам нужно например получить бинарник fig3.bin http:// ... -- установить утилиту для прошивки бинатрного файла linux - в сам контроллер ESP32 esptool -- залить бинарник в плату командой, указав какой контроллер мы испоьзуем. Спсок возможных контроллеров можно взять - отсюда.. Для прошивки новой версии программы в контроллер вам нужно : 1. Скачать файл с новой версии с сайта: https://www.umkikit.ru/dowload/Smart_Therm_0.1.2_20220318.bin 2. Установить у себя утилиту esptool из командной строки из root
- apt-get update
- apt-get install esptool
3. Обновить прошивку из той директории, где находится скачанный файл (Linux) $ esptool -cd nodemcu -cf Smart_Therm_0.1.2_20220318.bin $ esptool -cd nodemcu -cf figa3.bin $ esptool write_flash 0x00000 figa3.bin
-- Для начала установить ESP HOME на linux
-- Установить HOME Assistant
-- Взять исходные коды отсюда https://github.com/rsciriano/ESPHome-OpenTherm, скачать ZIP архивом содержимое репозитория в папку /config/esphome в HA
-- распаковать архив в нужном месте
-- подправить номера пинов для адаптера SmartTherm в файле /config/esphome/esphome-opentherm/opentherm_component.h
inPin = D7; outPin=D8
-- от Редактировать файл /config/esphome/opentherm.yaml
Make sure the board and device settings are correct for your device
◦ Set the sensor entity_id with the external temperature sensor's name from Home Assistant. (The ESPHome sensor name is temperature_sensor).
++++++++++++++++++++++++
1. Уточнить что это за устройство - у нас это
esp8266:
board: esp01_1m
++++++++++++++++++++++++ 2. Узнать название wifi сети и пароль к ней. У нас эта информация храниться в файле
- Your Wi-Fi SSID and password
wifi_ssid: "laser203" wifi_password: "laser203"
Осуществить сборку модуля и прошивку его в модуль ESP
-- дальше нужно крутить крутилки и вертеть вертелки - файлы скриншотов в Изображение
Как сконфигурировать ESP
3. Скопировать файл конфигурации для ESPHome у нас это файл следующим содержанием INFO Reading configuration /config/esphome/vlaga.yaml...
esphome: name: vlaga esp8266: board: esp01_1m # Enable logging logger: # Enable Home Assistant API api: password: "12345678" ota: password: "12345678" wifi: ssid: laser203 password: laser203 # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Vlaga Fallback Hotspot" password: "12345678" captive_portal: sensor: - platform: adc pin: A0 name: "humidity" accuracy_decimals: 1 filters: - lambda: return x * (-248.0) + 172.0; - sliding_window_moving_average: window_size: 12 send_every: 4 unit_of_measurement: "%" update_interval: 60s
Заходим по адресу скачиваем ZIP архив, разархивируем его в нужной директории.
Производим изменения внутри файла. 1. Копируем содержимое репозитория в папку /config/esphome в HA
2. Устанавливаем номера пинов для адаптера SmartTherm в файле /config/esphome/esphome-opentherm/opentherm_component.h inPin = D7; outPin=D8
рис
Если инстанс На в режиме супервайзер, то для специального дополнения в HA это сделать проблематично. Идем в Настройки→Дополнения→Магазин дополнений→ поиск дополнений, в строке поиска вводим SSH
нажать Install, должен появится примерно вот такой вывод из которого нам станет ясно, что наш IP адрес устройства 192.168.9.102 и наш WIFI SSID: 'laser203'
INFO Reading configuration /config/esphome/vlaga.yaml... INFO Starting log output from vlaga.local using esphome API INFO Successfully connected to vlaga.local [12:31:17][I][app:102]: ESPHome version 2023.3.2 compiled on May 29 2023, 12:25:21 [12:31:17][C][wifi:504]: WiFi: [12:31:17][C][wifi:362]: Local MAC: 84:F3:EB:53:42:61 [12:31:17][C][wifi:363]: SSID: [redacted] [12:31:17][C][wifi:364]: IP Address: 192.168.9.102 [12:31:17][C][wifi:365]: BSSID: [redacted] [12:31:17][C][wifi:367]: Hostname: 'vlaga' [12:31:17][C][wifi:369]: Signal strength: -33 dB ▂▄▆█ [12:31:17][C][wifi:373]: Channel: 1 [12:31:17][C][wifi:374]: Subnet: 255.255.255.0 [12:31:17][C][wifi:375]: Gateway: 192.168.9.1 [12:31:17][C][wifi:376]: DNS1: 192.168.9.1 [12:31:17][C][wifi:377]: DNS2: 0.0.0.0 [12:31:17][C][logger:293]: Logger: [12:31:17][C][logger:294]: Level: DEBUG [12:31:17][C][logger:295]: Log Baud Rate: 115200 [12:31:17][C][logger:296]: Hardware UART: UART0 [12:31:17][C][adc:087]: ADC Sensor 'humidity' [12:31:17][C][adc:087]: Device Class: 'voltage' [12:31:17][C][adc:087]: State Class: 'measurement' [12:31:17][C][adc:087]: Unit of Measurement: '%' [12:31:17][C][adc:087]: Accuracy Decimals: 1 [12:31:17][C][adc:092]: Pin: GPIO17 [12:31:17][C][adc:126]: Update Interval: 60.0s [12:31:17][C][captive_portal:088]: Captive Portal: [12:31:17][C][mdns:108]: mDNS: [12:31:17][C][mdns:109]: Hostname: vlaga [12:31:17][C][ota:093]: Over-The-Air Updates: [12:31:17][C][ota:094]: Address: vlaga.local:8266 [12:31:17][C][ota:097]: Using Password. [12:31:17][C][api:138]: API Server: [12:31:17][C][api:139]: Address: vlaga.local:6053 [12:31:17][C][api:143]: Using noise encryption: NO9.1 [12:09:15][C][wifi:377]: DNS2: 0.0.0.0
++++++++++++++++++++++++ 5. В Настройках обновить фирмату ESPHome, на вопрос указать либо пароль, либо API ключ, в нашем случае это пароль 12345678 И тогда должно появиться значение в сенсоре и в карточке на панеле.
Ссылки на полезные ресурсы
1. OpenTherm Arduino/ESP8266 Library + OpenTherm Adapter Schematic https://github.com/ihormelnyk/opentherm_library
2. OpenTherm protocol specification v2.2 http://ihormelnyk.com/Content/Pages/opentherm_library/Opentherm%20Protocol%20v2-2.pdf
3. https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103
4. https://github.com/Evgen2/SmartTherm
5. https://github.com/OldNavi/OpenThermController
Как настроить интеграцию
Для настройки интеграции нужно выполнить следующие действия
Как покуртить разные крутилки и вертелки =
для крутилок нужно повертеть вертелки
Как посмотреть разные графики
очень интересные разные графики
[|link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]