69 Commits

Author SHA1 Message Date
GrKoR
61cad07acc fix: version++ 2023-11-09 23:14:13 +03:00
GK
3110c482c9 Merge pull request #88 from GrKoR/brokly's_power
fix: inverter power limitation by Brokly
2023-11-10 00:12:07 +04:00
GrKoR
53a886f818 ref: minor fixes of Brokly's changes 2023-11-09 23:07:54 +03:00
GrKoR
2d4162323a Brokly's changes for power limitation 2023-11-01 18:04:16 +03:00
GK
74d555b5e1 Merge pull request #87 from GrKoR/dev
fix: inverter power limitation off
2023-10-30 02:06:42 +04:00
GrKoR
7df8ab3cc2 fix: version++ 2023-10-30 01:05:30 +03:00
GrKoR
90d9a5cfa7 fix: inverter power limitation off 2023-10-28 22:42:04 +03:00
GrKoR
864ad07699 new AC tested: Ballu BSW-09HN1, Ballu BSW-12HN1 2023-10-17 01:18:16 +03:00
GrKoR
e595a4acf9 new AC tested: Roda RS-AL24F 2023-10-15 22:44:04 +03:00
GrKoR
3db80a19b7 fix: version++ 2023-10-12 21:34:11 +03:00
GK
b7a794e52b Merge pull request #84 from GrKoR:dev
new: Fahrenheit support for temperatures
2023-10-12 22:27:30 +04:00
GrKoR
ba9f41d3be fix: better handle fractional setpoints by KazWolfe 2023-10-12 21:17:02 +03:00
GrKoR
93a034f2be Merge remote-tracking branch 'refs/remotes/origin/dev' into dev 2023-10-12 18:10:19 +03:00
GrKoR
151e5af043 new: Fahrenheit support 2023-10-12 18:03:32 +03:00
GrKoR
f143240089 ref: made the code a bit prettier 2023-10-12 18:03:32 +03:00
GrKoR
dfc299b321 new AC tested: AUX ASW-H12U3/JIR1DI-US 2023-10-12 18:01:06 +03:00
GrKoR
8acae30989 new: Fahrenheit support 2023-10-12 17:44:07 +03:00
GrKoR
58f09bd280 ref: made the code a bit prettier 2023-10-12 17:11:24 +03:00
GK
70d127a302 Merge pull request #83 from KazWolfe/patch-1
fix: Better handle fractional setpoints
2023-10-12 17:23:07 +04:00
GrKoR
7765e080d2 fix: variable name misprint 2023-10-11 23:39:00 +03:00
GK
33f6dd6ef0 new AC tested: Argo (models: Greenstyle 9000 / 12000 / 18000) 2023-10-09 23:58:27 +04:00
KazWolfe
1fa581be3d fix: Better handle fractional setpoints 2023-10-07 18:37:34 -07:00
GK
5fab934d8c Merge pull request #82 from ilkarataev/patch-1 2023-09-22 18:05:20 +04:00
Ilia Karataev
92b9908bf3 Update AC_TESTED.md
Add tested conditioner
2023-09-22 16:59:35 +04:00
GK
be67e1e4ce new model tested: TOYOTOMI SONZAI THN/THG-A35SZ 2023-09-13 18:47:10 +04:00
GrKoR
c10d314581 new model tested: VOX IJO09-SC4D 2023-09-13 00:15:40 +03:00
GrKoR
fa05c40677 upd: version++ 2023-07-07 16:36:53 +03:00
GrKoR
92b3930413 upd: readme for optimistic mode (RU) 2023-07-07 16:35:33 +03:00
GK
6bfb9489bd Merge pull request #77 from bogdal/optimistic-mode
Make optimistic mode configurable
2023-07-07 17:22:21 +04:00
Adam Bogdał
c868e5b49b Make optimistic mode configurable 2023-07-03 21:46:47 +02:00
GrKoR
cdd97b8da3 new model tested: VOX IVA5-12JR1 2023-06-10 19:36:19 +04:00
GK
9c7be5ffc0 Merge pull request #75 from gleba/master
new AC: CENTEK CT-65V24 + fix of example
2023-06-03 17:36:48 +04:00
Gleb Y Panteleev
20f3061d12 new AC tested: CENTEK CT-65V24 2023-06-03 06:44:23 +03:00
Gleb Y Panteleev
945cc96ea2 fix: The name of sensor was changed in v.0.2.9
from 'invertor_power' to 'inverter_power'. Update your config please.
2023-06-02 23:18:02 +03:00
GrKoR
fcd5a97210 new AC tested: Бирюса B-07DPR/B-07DPQ 2023-06-01 21:58:08 +04:00
GrKoR
8b17ca7052 docs upd: how to request a feature 2023-05-22 15:29:53 +04:00
GK
935e97e795 Merge pull request #73 from glebsterx:master
mistypings in documentation + new doc (how to request a feature)
2023-05-22 15:01:44 +04:00
GrKoR
a0b8dcdce1 new model tested: Energolux SAS07L2-A 2023-05-22 14:47:31 +04:00
GrKoR
affb3bde06 new model tested: Energolux SAS09B3-A 2023-05-22 14:17:38 +04:00
GK
b6d09a132e fix: incorrect space in config (en) 2023-05-22 13:31:49 +04:00
GK
579b6aaf87 fix: incorrect space in config 2023-05-22 13:30:41 +04:00
GK
7013acef59 new AC tested: Centek CT-65F12 2023-05-22 13:26:02 +04:00
Gleb
f6f7887fe7 Update README-EN.md 2023-05-22 12:07:14 +03:00
Gleb
0b774546e8 Update README.md 2023-05-22 12:06:06 +03:00
Gleb
1031f6a885 Create HOW_TO_FEATURE_REQUEST-EN.md 2023-05-22 11:48:07 +03:00
Gleb
abf9c15c39 Merge branch 'GrKoR:master' into master 2023-05-22 11:40:20 +03:00
Gleb
31af2c546c Create HOW_TO_FEATURE_REQUEST.md 2023-05-22 11:39:20 +03:00
Gleb
db23c365db Update README-EN.md 2023-05-22 10:08:08 +03:00
Gleb
eb202e2f49 Update HARDWARE.md 2023-05-22 10:00:58 +03:00
GrKoR
abb9188642 new model tested: Centek CT-65U13 2023-05-22 01:14:14 +04:00
Gleb
276d8ef7a7 Update HARDWARE-EN.md 2023-05-21 00:16:43 +03:00
Gleb
78ec13f9f9 Update HARDWARE.md 2023-05-21 00:16:33 +03:00
Gleb
1c04078b57 Update HARDWARE.md 2023-05-21 00:13:18 +03:00
Gleb
d776dcf4fe Update HARDWARE-EN.md 2023-05-21 00:04:12 +03:00
Gleb
22e64b647c Update README-EN.md 2023-05-20 23:56:00 +03:00
Gleb
c6a800cdcd Update README.md 2023-05-20 23:12:10 +03:00
GrKoR
ba2a19e564 fix: yet another typing error 2023-05-20 23:32:27 +04:00
GrKoR
135d6b55a8 fix: typing error 2023-05-20 23:13:23 +04:00
GrKoR
a465dbc89a new model tested: iClima ICI-09A/IUI-09A 2023-05-20 23:05:14 +04:00
GrKoR
efe7c1a93a new AC: IGC RAS-07AX/RAC-07AX 2023-05-14 18:22:23 +04:00
GrKoR
13bb0baa69 Added link for AUX Aegean Sea ( 爱琴海 ) connection 2023-03-31 16:46:21 +04:00
GrKoR
62e83cb41b Chinese AUX family Aegean Sea(爱琴海) was tested 2023-03-31 16:35:54 +04:00
GK
e9cad615fb new AC: AUX ASW-HxxB4/JD-R1DI (ASW-H12B4/JD-R2DI) 2023-03-19 22:25:59 +04:00
GrKoR
4274a11ed5 USB connection was described 2023-03-11 17:29:15 +04:00
GK
a8b6f7c9e0 USB connection described 2023-03-11 16:51:50 +04:00
GK
766a4bd693 USB pinout image 2023-03-11 16:45:44 +04:00
GK
8d782b1070 Delete USB pinout.png 2023-03-11 16:45:00 +04:00
GK
7640cca9f2 USB pinout image 2023-03-11 16:42:35 +04:00
GrKoR
cc4a48f964 new models + minor fix 2023-02-22 20:56:05 +04:00
16 changed files with 3508 additions and 2913 deletions

View File

@@ -2,15 +2,15 @@
For communication about this project [please join this telegram chat](https://t.me/aux_ac).
For issues or feature requests, please go to [the issue section](https://github.com/GrKoR/esphome_aux_ac_component/issues). It will be perfect if you attach log to your issue. Log you can collect with [this python script](https://github.com/GrKoR/ac_python_logger). It helps you to save all data frames from the UART bus to a csv-file. This log combined with the detailed situation description will significantly speed up bug correction.
There is also a [detailed instruction describing how to properly request a feature](docs/HOW_TO_FEATURE_REQUEST-EN.md).
## DISCLAIMER ##
1. All data of this project (software, firmware, schemes, 3d-models etc.) are provided **'AS IS'**. Everything you do with your devices, you are doing at your own risk. If you don't strongly understand what you are doing, just buy wifi-module from your air conditioner manufacturer.
1. All data of this project (software, firmware, schemes, 3d-models etc.) are provided **'AS IS'**. Everything you do with your devices, you are doing at your own risk. If you don't strongly understand what you are doing, just buy Wi-Fi module from your air conditioner manufacturer.
2. I am not a programmer. So source code is certainly not optimal and badly decorated (but there are a lot of comments in it; sorry, a significant part of it is in Russian). Also, code may be written unsafe. I tried to test all parts of the code, but I'm sure I missed a lot of things. So treat it with suspicion, expect a trick from it, and if you discover something wrong write an issue here.
3. Russian and English readme files are substantially identical in meaning. But in case of differences, the [Russian](https://github.com/GrKoR/esphome_aux_ac_component#readme) version is more significant.
## Short description ##
This custom component allows you to control your air conditioner through wifi if it is made in the AUX factory.<br />
This custom component allows you to control your air conditioner through Wi-Fi if it is made in the AUX factory.<br />
Component tested with ESPHome 1.18.0 and Rovex ALS1 air conditioner. It looks like many other air conditioners can be controlled by `aux_ac`, but this possibility isn't tested. See list of tested ACs below for more details.
@@ -21,26 +21,16 @@ There is the following list of AUX-based air conditioner on the internet: AUX, A
### List of compatible ACs (tested) ###
[The list of tested ACs](docs/AC_TESTED.md) is placed in a separate file and includes tested by the author or by users ACs. This list is permanently updated, mainly based on feedback from users in [Telegram chat](https://t.me/aux_ac).<br />
If your AC is not in the list
If your AC is listed above you should take a closer look at aux_ac.
If the User Manual of your HVAC describes connection to wifi with mobile app ACFreedom it seems you may go deeper with aux_ac. But try all soft and hardware for your own risk. You must clearly understand what you are doing.
If you are unsure it is better to wait while other users will test your model of AC (but it may never). Or please go to telegram-chat with your questions. Maybe you will get help there.
If you have tested your air conditioner and aux_ac works with it please let me know about it. I'll add this info to the list of tested ACs above. The best way to report about your test results is write a message in the telegram or in the issue section.
How to use it
For correct component operation you need hardware and firmware. The hardware description is located in separate file.
Firmware: Integration aux_ac to your configuration
You need ESPHome v.1.18.0 or above. External_components have appeared in this version. But it is better to use ESPHome v.1.20.4 or above cause there was alot of external_components errors corrected before this version.
### If your AC is not in the list ###
If your AC is listed above, you should take a closer look at `aux_ac`.<br />
If the User Manual of your HVAC describes connection to wifi with mobile app ACFreedom it seems you may go deeper with `aux_ac`. But try all soft and hardware for your own risk. You must clearly understand what you are doing.<br />
If you are unsure, it is better to wait while other users will test your model of AC (but it may never). Or please [go to telegram-chat](https://t.me/aux_ac) with your questions. Maybe you will get help there.
If you have tested your air conditioner and `aux_ac` works with it, please let me know about it. I'll add this info to the list of tested ACs above.
The best way to report about your test results is writing a message in the [telegram](https://t.me/aux_ac) or [in the issue section](https://github.com/GrKoR/esphome_aux_ac_component/issues).
1. If your AC is listed above, you should take a closer look at `aux_ac`.<br />
2. If something about AUX is written on the nameplate of the air conditioner in the manufacturer line.<br />
3. If the User Manual of your HVAC describes connection to Wi-Fi with mobile app ACFreedom it seems you may go deeper with `aux_ac`. But try all soft and hardware for your own risk. You must clearly understand what you are doing.<br />
4. If the manufacturer of your AC offers a CTTM-40X24-WIFI-AKS Wi-Fi module (left) or the one in the photo on the right for control. Moreover, the right module can be either with a USB connector or with a 5-pin connector.<br />
<img src="https://user-images.githubusercontent.com/57137862/172053621-60fe39d8-066e-44fa-91c5-725fa1f5c3bc.png" height="300"> <img src="https://user-images.githubusercontent.com/57137862/172053744-8ce4a13d-28cb-4688-a998-11ca3a7129df.png" height="300">
If you are unsure, it is better to wait while other users will test your model of AC (maybe never). Or please [go to telegram-chat](https://t.me/aux_ac) with your questions. Maybe you will get help there.<br />
If you have tested your air conditioner and `aux_ac` works with it, please let me know about it. I'll add this info to the list of tested ACs above.<br />
The best way to report about your test results is writing a message in the [telegram](https://t.me/aux_ac) or [in the issue section](https://github.com/GrKoR/esphome_aux_ac_component/issues).<br />
## How to use it ##
For correct component operation, you need hardware and firmware. The hardware description is located [in a separate file](docs/HARDWARE-EN.md).
@@ -99,7 +89,8 @@ climate:
period: 7s
show_action: true
display_inverted: false
timeout: 150
timeout: 150
optimistic: true
indoor_temperature:
name: AC Indoor Temperature
id: ac_indoor_temp
@@ -110,11 +101,11 @@ climate:
id: ac_outdoor_temp
internal: false
outbound_temperature:
name: AC Colant Outbound Temperature
name: AC Coolant Outbound Temperature
id: ac_outbound_temp
internal: false
inbound_temperature:
name: AC Colant Inbound Temperature
name: AC Coolant Inbound Temperature
id: ac_inbound_temp
internal: false
compressor_temperature:
@@ -184,7 +175,7 @@ climate:
- **period** (*Optional*, [time](https://esphome.io/guides/configuration-types.html#config-time), default ``7s``): Period between status requests to the AC. `Aux_ac` will receive the new air conditioner status only after a regular request, even if you change the settings of AC using IR-remote.
- **show_action** (*Optional*, boolean, default ``true``): Whether to show current action of the device (experimental). For example, in the HEAT-COOL mode, AC hardware may be in one of the following actions:
- **show_action** (*Optional*, boolean, default ``true``): Whether to show current action of the device (experimental). For example, in the HEAT_COOL mode, AC hardware may be in one of the following actions:
- HEATING: AC is heating the air in the room;
- IDLE: AC is working in the FAN mode, cause the target temperature is reached;
- COOLING: AC is cooling the air.
@@ -197,6 +188,8 @@ climate:
The only situation when you can play with timeout is heavily loaded ESP. When you are using your ESP for many hard tasks, it is possible that `aux_ac` does not have enough time to receive AC responses. In this case, you can slightly raise the timeout value. But the best solution would be to remove some of the tasks from the ESP.
The timeout is limited to a range from `150` to `600` milliseconds. Other values are possible only with source code modification. But I don't recommend that.
- **optimistic** (*Optional*, boolean, default ``true``): Whether entity states should be updated immediately after receiving a command from Home Assistant/ESPHome.
- **indoor_temperature** (*Optional*): Parameters of the room air temperature sensor.
- **name** (**Required**, string): The name for the temperature sensor.
- **id** (*Optional*, [ID](https://esphome.io/guides/configuration-types.html#config-id)): Set the ID of this sensor for use in lambdas.
@@ -226,7 +219,7 @@ climate:
- **inverter_power_limit_state** (*Optional*): Configuration of the power limit state sensor. It displays the state of the power limitation function for the inverter HVAC (is it ON or OFF). All settings are the same as for the **display_state** (see description above).
- **inverter_power_limit_value** (*Optional*): Configuration of the power limit value sensor. All settings are the same as for the **indoor_temperature** (see description above).
It reports the current value of the power limitation function for the inverter HVAC. This sensor represents the value only after the HVAC confirms the power limitation. The value is always in the range from 30 to 100%. This is the hardware limitation.
It reports the current value of the power limitation function for the inverter HVAC. This sensor represents the value only after the HVAC confirms the power limitation. The value is always in the range from 30% to 100%. This is the hardware limitation.
- **preset_reporter** (*Optional*): Parameters of text sensor with current preset. All settings are the same as for the **display_state** (see description above).
ESPHome Climate devices are not reporting their active presets (from **supported_presets** and **custom_presets** lists) to MQTT. This behavior has been noticed at least in version 1.20.0. In case you are using MQTT and want to receive information about active preset, you should declare this sensor in your yaml.
@@ -390,16 +383,16 @@ on_...:
## Simple example ##
The source code of this example is located in the [aux_ac_simple.yaml](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/examples/simple/aux_ac_simple.yaml) file.
All settings in it is trivial. Just copy the file to your local folder, specify your wifi settings and compile YAML with ESPHome.
All settings in it is trivial. Just copy the file to your local folder, specify your Wi-Fi settings and compile YAML with ESPHome.
## Advanced example ##
All sources are located [in advanced example folder](https://github.com/GrKoR/esphome_aux_ac_component/tree/master/examples/advanced).
This time we'll configure two relative identical air conditioners with `aux_ac` custom component.<br />
Let's imagine we have ACs in a kitchen and in a living room. All ACs are the same brand and can be controlled by `aux_ac`.<br />
Let's imagine we have ACs in a kitchen and in a living room. Air conditioners can be of the same brand or different brands - the main thing is that they are compatible with `aux_ac` and can be controlled using `aux_ac`.<br />
Because we are lazy, we'll define all common configuration parts for two air conditioners in one `ac_common.yaml` file.<br />
All specific parts of configuration are located in the `ac_kitchen.yaml` and `ac_livingroom.yaml`. Here we set `devicename` and `upper_devicename` for correct sensors and component naming. And here we specify the correct IP-address of the device from `secrets.yaml`.<br />
All specific parts of configuration are located in the `ac_kitchen.yaml` and `ac_livingroom.yaml`. Here we set `devicename` and `upper_devicename` for correct sensors and component naming. And here we specify the correct IP address of the device from `secrets.yaml`.<br />
**Don't forget** to specify `wifi_ip_kitchen`, `wifi_ota_ip_kitchen`, `wifi_ip_livingroom` and `wifi_ota_ip_livingroom` in the `secrets.yaml` along with the other sensitive information, such as passwords, tokens etc.
If you try to compile `ac_common.yaml` it will raise errors. You need to compile `ac_kitchen.yaml` or `ac_livingroom.yaml` instead.

View File

@@ -1,17 +1,18 @@
# Кастомный компонент для ESPHome для управления кондиционером по wifi <!--[![GitHub release](https://img.shields.io/github/v/release/GrKoR/esphome_aux_ac_component)](https://github.com/GrKoR/esphome_aux_ac_component/releases/) [![Телеграм](https://img.shields.io/badge/Telegram-2CA5E0?style=flat&logo=telegram&logoColor=white)](https://t.me/aux_ac) -->
# Кастомный компонент для ESPHome для управления кондиционером по Wi-Fi <!--[![GitHub release](https://img.shields.io/github/v/release/GrKoR/esphome_aux_ac_component)](https://github.com/GrKoR/esphome_aux_ac_component/releases/) [![Телеграм](https://img.shields.io/badge/Telegram-2CA5E0?style=flat&logo=telegram&logoColor=white)](https://t.me/aux_ac) -->
English readme [is here](README-EN.md#esphome-aux-air-conditioner-custom-component-aux_ac).
Управляет кондиционерами на базе AUX по wifi.<br />
Управляет кондиционерами на базе AUX по Wi-Fi.<br />
По тексту ниже для компонента используется сокращение `aux_ac`.
Обсудить проект можно [в чате Телеграм](https://t.me/aux_ac).<br />
Отзывы о багах и ошибках, а так же запросы на дополнительный функционал оставляйте [в соответствующем разделе](https://github.com/GrKoR/esphome_aux_ac_component/issues).
Будет просто отлично, если к своему сообщению вы добавите лог и подробное описание. Для сбора логов есть [специальный скрипт на Python](https://github.com/GrKoR/ac_python_logger). С его помощью вы сможете сохранить в csv-файл все пакеты, которыми обменивается wifi-модуль и сплит-система. Если такой лог дополнить описанием, в какое время и что именно вы пытались включить, то это сильно ускорит исправление багов.
Будет просто отлично, если к своему сообщению вы добавите лог и подробное описание. Для сбора логов есть [специальный скрипт на Python](https://github.com/GrKoR/ac_python_logger). С его помощью вы сможете сохранить в csv-файл все пакеты, которыми обменивается Wi-Fi модуль и сплит-система. Если такой лог дополнить описанием, в какое время и что именно вы пытались включить, то это сильно ускорит исправление багов.
Также есть [подробная инструкция, описывающая как правильно запросить фичу](docs/HOW_TO_FEATURE_REQUEST.md).
## ДИСКЛЭЙМЕР (ОТМАЗКИ) ##
1. Все материалы этого проекта (программы, прошивки, схемы, 3D модели и т.п.) предоставляются "КАК ЕСТЬ". Всё, что вы делаете с вашим оборудованием, вы делаете на свой страх и риск. Автор не несет ответственности за результат и ничего не гарантирует. Если вы с абсолютной четкостью не понимаете, что именно вы делаете и для чего, лучше просто купите wifi-модуль у производителя вашего кондиционера.
1. Все материалы этого проекта (программы, прошивки, схемы, 3D модели и т.п.) предоставляются "КАК ЕСТЬ". Всё, что вы делаете с вашим оборудованием, вы делаете на свой страх и риск. Автор не несет ответственности за результат и ничего не гарантирует. Если вы с абсолютной четкостью не понимаете, что именно вы делаете и для чего, лучше просто купите Wi-Fi модуль у производителя вашего кондиционера.
2. Я ~~не настоящий сварщик~~ не программер. Поэтому код наверняка не оптимален и плохо оформлен (зато комментариев по коду я разместил от души), местами может быть написан небезопасно. И хоть я и старался протестировать всё, но уверен, что какие-то моменты упустил. Так что отнеситесь к коду с подозрением, ожидайте от него подвоха и если что-то увидели - [пишите в багрепорт](https://github.com/GrKoR/esphome_aux_ac_component/issues).
@@ -24,11 +25,11 @@ AUX - это один из нескольких OEM-производителей
[Список протестированных кондиционеров](docs/AC_TESTED.md) размещен в отдельном файле и включает те модели, на которых `aux_ac` был запущен автором компонента или пользователями. Этот список постоянно пополняется, преимущественно по обратной связи от пользователей [в чате Телеграм](https://t.me/aux_ac).<br />
### Если кондиционер в списке отсутствует ###
Если ваш кондиционер отсутствует в списке протестированных, то это еще не значит, что его не получится подключить к wifi. Вот основные "звоночки", которые могут говорить о высоких шансах на успех:
Если ваш кондиционер отсутствует в списке протестированных, то это еще не значит, что его не получится подключить к Wi-Fi. Вот основные "звоночки", которые могут говорить о высоких шансах на успех:
1. Если производитель вашего кондиционера есть в списке протестированных выше, но модели нет.
2. Если на шильдике кондиционера в строке производитель написано что-то про AUX или Аукс.
3. Если в инструкции пользователя вашего кондиционера что-то написано про возможность управления по wifi с помощью мобильного приложения ACFreedom.
4. Если производитель вашего кондиционера предлагает для управления wifi-модуль CTTM-40X24-WIFI-AKS (слева) или такой, как на фото справа. Причем правый модуль может быть как с USB-разъемом, так и с 5-контактным разъемом.
3. Если в инструкции пользователя вашего кондиционера что-то написано про возможность управления по Wi-Fi с помощью мобильного приложения ACFreedom.
4. Если производитель вашего кондиционера предлагает для управления Wi-Fi модуль CTTM-40X24-WIFI-AKS (слева) или такой, как на фото справа. Причем правый модуль может быть как с USB-разъемом, так и с 5-контактным разъемом.
<img src="https://user-images.githubusercontent.com/57137862/172053621-60fe39d8-066e-44fa-91c5-725fa1f5c3bc.png" height="300"> <img src="https://user-images.githubusercontent.com/57137862/172053744-8ce4a13d-28cb-4688-a998-11ca3a7129df.png" height="300">
@@ -97,7 +98,7 @@ climate:
period: 7s
show_action: true
display_inverted: false
timeout: 150
timeout: 150
indoor_temperature:
name: AC Indoor Temperature
id: ac_indoor_temp
@@ -108,11 +109,11 @@ climate:
id: ac_outdoor_temp
internal: false
outbound_temperature:
name: AC Colant Outbound Temperature
name: AC Coolant Outbound Temperature
id: ac_outbound_temp
internal: false
inbound_temperature:
name: AC Colant Inbound Temperature
name: AC Coolant Inbound Temperature
id: ac_inbound_temp
internal: false
compressor_temperature:
@@ -180,9 +181,9 @@ climate:
- **uart_id** (*Опциональный*, [ID](https://esphome.io/guides/configuration-types.html#config-id)): Укажите ID [шины UART](https://esphome.io/components/uart.html), к которой подключен кондиционер. Если сконфигурирована одна шина, то компонент подключит её автоматически. Если шин несколько, то лучше указать вручную.
- **period** (*Опциональный*, [время](https://esphome.io/guides/configuration-types.html#config-time), по умолчанию ``7s``): Период между запросами статуса кондиционера. `Aux_ac` получает новое состояние кондиционера только после регулярного запроса, потому что сам кондиционер об изменении параметров своеё работы не уведомляет. Поэтому нужно запрашивать его, вдруг пользователь установил иной режим работы с помощью ИК-пульта.
- **period** (*Опциональный*, [время](https://esphome.io/guides/configuration-types.html#config-time), по умолчанию ``7s``): Период между запросами статуса кондиционера. `Aux_ac` получает новое состояние кондиционера только после регулярного запроса, потому что сам кондиционер об изменении параметров своей работы не уведомляет. Поэтому нужно запрашивать его, вдруг пользователь установил иной режим работы с помощью ИК-пульта.
- **show_action** (*Опциональный*, логическое, по умолчанию ``true``): Показывать ли текущую задачу кондиционера (экспериментальная функция). Например, в режиме HEAT-COOL кондиционер может выполнять одну из следующих задач:
- **show_action** (*Опциональный*, логическое, по умолчанию ``true``): Показывать ли текущую задачу кондиционера (экспериментальная функция). Например, в режиме HEAT_COOL кондиционер может выполнять одну из следующих задач:
- НАГРЕВ: нагревает воздух в комнате;
- ПРОСТОЙ: кондиционер работает в режиме вентилятора для перемешивания воздуха в комнате, поскольку целевая температура уже достигнута;
- ОХЛАЖДЕНИЕ: кондиционер охлаждает воздух в комнате.
@@ -195,6 +196,10 @@ climate:
Единственная ситуация, когда вам может пригодиться этот параметр, - это сильно загруженная ESP. Если по какой-то неподдающейся логике причине вы кроме `aux_ac` нагрузили свою ESP кучей дополнительных ресурсоемких задач, то у компонента может просто не хватать времени для оперативного приёма ответов от кондиционера. В этом в логе будут сообщения о том, что последовательность команд была прервана по таймауту. Чтобы это исправить, лучше, конечно, немного разгрузить ESP. Если это вам не подходит, тогда можно увеличить таймаут.
Значение таймаута в прошивке ограничено диапазоном от `150` до `600` миллисекунд. Устанавливать значения выше можно только отредактировав исходные коды компонента. Но сильно задирать таймаут не стоит. Кондиционер периодически рассылает пакеты без запроса со стороны `aux_ac` и это приводит к сбою в отправке команды.
- **optimistic** (*Опциональный*, логическое, по умолчанию ``true``) В «оптимистичном» режиме компонент не ждёт от кондиционера изменения параметров работы, а сразу после отправки команды в кондиционер сообщает в Home Assistant о новом состоянии. Если кондиционер команду не принял, то спустя несколько секунд eps получит текущее состояние всех систем и отправит в умный дом реальное состояние кондиционера. В итоге, если подавать в кондиционер неподдерживаемые команды, они будут записываться в историю Home Assistant и спустя время сбрасываться сбрасываться.
В «пессимистичном» режиме esp отправляет команду в кондиционер, но об изменении состояний не сообщает до тех пор, пока не получит информацию о фактическом режиме работы кондиционера.
В большинстве случаев разница между этими режимами будет практически незаметна.
- **indoor_temperature** (*Опциональный*): Параметры создаваемого датчика температуры воздуха, если такой датчик нужен
- **name** (**Обязательный**, строка): Имя датчика температуры.
- **id** (*Опциональный*, [ID](https://esphome.io/guides/configuration-types.html#config-id)): Можно указать свой ID для датчика для использования в лямбдах.
@@ -202,7 +207,7 @@ climate:
- Все остальные параметры [сенсора](https://esphome.io/components/sensor/index.html#base-sensor-configuration) ESPHome.
- **outdoor_temperature** (*Опциональный*): Параметры создаваемого датчика уличной температуры воздуха, если такой датчик нужен. Параметры аналогичны датчику внутренней температуры **indoor_temperature** (см. выше).
> **ВНИМАНИЕ!** Когда кондиционер выключен, температура наружного воздуха обновляется редко (раз в 6-7 часов). Это не баг компонента, а особенность работы железа кондиционера. Единственный способ получать изменения чаще - создать шаблонный сенсор, температуру которого изменять в ручную. Когда кондиционер работает, значение такого сенсора можно копировать из **outdoor_temperature**. Когда кондиционер выключен, значение температуры пересчитывать по динамике сенсора **outbound_temperature** (он изменяется часто и при выключенном кондее показывает значения близкие к температуре воздуха). Заморочки с пересчетом нужны потому, что показания сенсоров не идентичны и на графике значений шаблонного сенсора могут быть ступеньки при переходе с **outdoor_temperature** на **outbound_temperature** и обратно.
> **ВНИМАНИЕ!** Когда кондиционер выключен, температура наружного воздуха обновляется редко (раз в 6-7 часов). Это не баг компонента, а особенность работы железа кондиционера. Единственный способ получать изменения чаще - создать шаблонный сенсор, температуру которого изменять вручную. Когда кондиционер работает, значение такого сенсора можно копировать из **outdoor_temperature**. Когда кондиционер выключен, значение температуры пересчитывать по динамике сенсора **outbound_temperature** (он изменяется часто и при выключенном кондее показывает значения близкие к температуре воздуха). Заморочки с пересчетом нужны потому, что показания сенсоров не идентичны и на графике значений шаблонного сенсора могут быть ступеньки при переходе с **outdoor_temperature** на **outbound_temperature** и обратно.
- **inbound_temperature** (*Опциональный*): Параметры создаваемого датчика температуры на подаче теплоносителя, если такой датчик нужен. Параметры аналогичны датчику внутренней температуры **indoor_temperature** (см. выше).
@@ -230,7 +235,7 @@ climate:
- **preset_reporter** (*Опциональный*): Параметры создаваемого текстового датчика текущего активного пресета. Параметры аналогичны датчику дисплея **display_state**.
Климатические устройства ESPHome не отправляют по MQTT активный пресет (см. **supported_presets** и **custom_presets**), в котором работает устройство. Если вы используете MQTT и хотите получать информацию о пресетах, то пропишите этот датчик в конфигурации.
- **vlouver_state** (*Опциональный*): Параметры создаваемого сенсора состояния вертикальных жалюзи. Параметры аналогичны датчику дисплея **display_state**. Состояние желюзи кодируется целочисленными значениями (подробнее смотри [aux_ac.vlouver_set action](#aux_ac_._vlouver_set) ниже).
- **vlouver_state** (*Опциональный*): Параметры создаваемого сенсора состояния вертикальных жалюзи. Параметры аналогичны датчику дисплея **display_state**. Состояние жалюзи кодируется целочисленными значениями (подробнее смотри [aux_ac.vlouver_set action](#aux_ac_._vlouver_set) ниже).
- **supported_modes** (*Опциональный*, список): Список поддерживаемых режимов работы. Возможные значения: ``HEAT_COOL``, ``COOL``, ``HEAT``, ``DRY``, ``FAN_ONLY``. Обратите внимание: некоторые производители кондиционеров указывают на пульте режим AUTO, хотя по факту этот режим не работает по расписанию и только лишь поддерживает целевую температуру. Такой режим в ESPHome называется HEAT_COOL. По умолчанию список содержит только значение ``FAN_ONLY``.
@@ -390,7 +395,7 @@ on_...:
Исходный код простейшего примера можно найти в файле [aux_ac_simple.yaml](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/examples/simple/aux_ac_simple.yaml).
Все настройки в нем тривиальны и подробно описаны [в официальной документации на ESPHome](https://esphome.io/index.html) и дополнены в разделе о настройке компонента выше.<br />
Просто скопируйте yaml-файл примера в локальную папку у себя на компьютере, пропишите настройки вашей сети WiFi и откомпилируйте YAML с использованием ESPHome.
Просто скопируйте yaml-файл примера в локальную папку у себя на компьютере, пропишите настройки вашей сети Wi-Fi и откомпилируйте YAML с использованием ESPHome.
## Продвинутый пример ##

File diff suppressed because it is too large Load Diff

View File

@@ -10,6 +10,7 @@ from esphome.const import (
CONF_DATA,
CONF_ID,
CONF_INTERNAL,
CONF_OPTIMISTIC,
CONF_PERIOD,
CONF_POSITION,
CONF_SUPPORTED_MODES,
@@ -193,7 +194,7 @@ CONFIG_SCHEMA = cv.All(
cv.Optional(CONF_SHOW_ACTION, default="true"): cv.boolean,
cv.Optional(CONF_DISPLAY_INVERTED, default="false"): cv.boolean,
cv.Optional(CONF_TIMEOUT, default=AC_PACKET_TIMEOUT_MIN): validate_packet_timeout,
cv.Optional(CONF_OPTIMISTIC, default="true"): cv.boolean,
cv.Optional(CONF_INVERTER_POWER_DEPRICATED): cv.invalid(
"The name of sensor was changed in v.0.2.9 from 'invertor_power' to 'inverter_power'. Update your config please."
),
@@ -400,6 +401,7 @@ async def to_code(config):
cg.add(var.set_show_action(config[CONF_SHOW_ACTION]))
cg.add(var.set_display_inverted(config[CONF_DISPLAY_INVERTED]))
cg.add(var.set_packet_timeout(config[CONF_TIMEOUT]))
cg.add(var.set_optimistic(config[CONF_OPTIMISTIC]))
if CONF_SUPPORTED_MODES in config:
cg.add(var.set_supported_modes(config[CONF_SUPPORTED_MODES]))
if CONF_SUPPORTED_SWING_MODES in config:

View File

@@ -2,24 +2,28 @@
`Aux_ac` has been tested and works successfully with the air conditioners from the list below.<br/>
Кондиционеры из списка ниже протестированы и точно совместимы с `aux_ac`.
+ AUX (models: ASW-H09A4/LK-700R1, ASW-H09B4/LK-700R1, ASW-H09A4/LK-700R1DI, AMWM-xxx multisplit, AL-H48/5DR2(U)/ALMD-H48/5DR2, ASW-H07A4/FP-R1DI, ASW-H09A4/FP-R1DI, ASW-H07A4/DE-R1DI, KFR-26GW/BpHRB+3)
+ Ballu (models: BSUI-12HN8, BLC_CF/in-60HN1)
+ Centek (models: CT-65Q09, CT-65Q12, CT-65Z10, CT-65Z18, CT-65A12)
+ Argo (models: Greenstyle 9000, Greenstyle 12000, Greenstyle 18000)
+ AUX (models: ALMD-H48/5DR2 / AL-H48/5DR2(U), AMWM-H07/4R1 multisplit, ASW-H07A4/DE-R1DI, ASW-H07A4/FP-R1DI, ASW-H09A4/FP-R1DI, ASW-H09A4/LK-700R1, ASW-H09A4/LK-700R1DI, ASW-H12B4/JD-R2DI, ASW-H12A4/FAR1, ASW-H09B4/LK-700R1, ASW-H12U3/JIR1DI-US, AUX-18QC/I / AUX-18QC/O, KFR-26GW/BpHRB+3, KFR-26GW/BpQYA2+2R3, KFR-26GW/BpQYD2+2R3, KFR-26GW/BpR3QYA1+1, KFR-26GW/BpR3QYD1+1, KFR-26GW/BpR3QYQ1+1, KFR-26GW/BpR3QYQ2+2, KFR-35GW/BpQYA1+1R3, KFR-35GW/BpQYA2+2R3, KFR-35GW/BpQYD1+1R3, KFR-35GW/BpQYD2+2R3, KFR-35GW/BpR3QYQ1+1, KFR-35GW/BpR3QYQ2+2 (see [issue #71](https://github.com/GrKoR/esphome_aux_ac_component/issues/71) for detais of `Aegean Sea`[爱琴海] AUX family AC connection)
+ Ballu (models: BLC_CF-60HN1, BSUI-09HN8, BSUI-12HN8, BSW-09HN1, BSW-12HN1)
+ Centek (models: CT-65A12, CT-65F09, CT-65F12, CT-65Q09, CT-65Q12, CT-65U13, CT-65Z10, CT-65Z18, CT-65V24)
+ Dimstal (model: SMND-QC-12-J-Smart ECO)
+ Elgin (models: HWFI09B2IA/ HWFE09B2NA)
+ Energolux (models: SAS07L4-A, SAS07M2-AI, SAS09Z4-AI, SASxxBN1-AI)
+ Energolux (models: SAS07L2-A, SAS07L4-A, SAS07M2-AI, SAS09B3-A, SAS09L4-A, SAS09Z4-AI, SAS12BN1-AI, SAS12CH1-AI, SAS12Z3-AI)
+ Hyundai (models: H-AR16-07H, H-AR21-07H, H-AR21-09H)
+ iClima (models: ICI-09A/IUI-09A)
+ Idea (models: ISR-12HR-SA7-DN1 ION)
+ IGC (models: RAK-07NH multysplit)
+ IGC (models: RAK-07NH multysplit, RAS-07AX/RAC-07AX)
+ Loriot (models: LAC-09AS)
+ RCool (models: GRA12B0-KSZKLM641)
+ Roda (models: RS-AL09F)
+ Roda (models: RS-AL09F, RS-AL24F)
+ Rovex (models: RS-07ALS1, RS-09ALS1, RS-12ALS1)
+ Royal Clima (models: CO-D 18HNI/CO-E 18HNI, RCI-SA30HN)
+ Samurai (models: SMA-07HRN1 ION, SMA-09HRN1 ION)
+ Subtropic (models: SUB-07HN1, SUB-12HN1)
+ TOYOTOMI (models: SONZAI THN/THG-A35SZ)
+ VOX (models: IVA5-12JR1, IJO09-SC4D)
+ Zephir (models: ZEL 12000BTU)
+ Бирюса (models: B-09FIR/B-09FIQ)
+ Бирюса (models: B-07DPR/B-07DPQ, B-09FIR/B-09FIQ)
## Tested and INCOMPATIBLE air conditioners ##
ACs from the list below are **INCOMPATIBLE** with `aux_ac`.<br/>

View File

@@ -8,17 +8,40 @@ I leave GPIO0 in air cause I don't see any reason to solder additional component
ESP-12E before DC-DC and air conditioner connected:
![esp-12e minimal photo](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/esp-12e.jpg?raw=true)
Air conditioner internal block has a 5-wire connection to the wifi-module. Connector is [JST SM](https://www.jst-mfg.com/product/pdf/eng/eSM.pdf).
## Wires ##
1. Yellow: +14V DC. Measured +14.70V max and +13.70V min. Service manual declares up to +16V.
Air conditioner internal block has a 5-wire or a 4-wire (pseudo-USB) connection to the wifi-module. There are another types of connection too. For example AUX Aegean Sea ( 爱琴海 ), check [issue #71](https://github.com/GrKoR/esphome_aux_ac_component/issues/71) for details.
## 5-wire connection
It use [JST SM](https://www.jst-mfg.com/product/pdf/eng/eSM.pdf) connector for 5-wire connection.
### Pinout ###
1. Yellow: +12V..+14V DC. Measured +14.70V max and +13.70V min. Service manual declares up to +16V.
2. Black: ground.
3. White: +5V DC (max: +5.63V; min: +4.43V) I have no idea what this is for. It goes directly to the air conditioner microcontroller through resistor 1kOhm and it does not affect the operation of the module.
4. Blue: TX of air conditioner. High is +5V.
5. Red: RX of air conditioner. High is +5V.
You should feed your ESP **from +12V..+14V line only**! It is prohibited to use +5V line for this purpose.
+5V line is digital signal line and directly goes to conditioner's controller. It can't provide enough power. In worst scenario you probably can burn down your air conditioner controller.
## 4-wire connection (pseudo-USB)
For 4-wire connection it is used USB-like connector. It is only physical USB but its pinout is UART with +12V..+14V power line.
**ATTENTION!** It is incompatible with normal USB devices! Ordinary USB device like USB flash drive will be damaged if it will be plugged in air conditioner USB connector.
### Pinout ###
<img src="https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/USB-pinout.png?raw=true" width="400">
1. +12V..+14V DC. Service manual declares up to +16V.
2. RX of air conditioner. High level is +5V.
3. TX of air conditioner. High level is +5V.
4. GND - ground.
Big thanks to [@diabl0](https://github.com/diabl0) for this pinout in [issue #70](https://github.com/GrKoR/esphome_aux_ac_component/issues/70).
## Power supply
For power supply it is possible to use any kind of suitable modules. I use this:
![power module](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/DD4012SA.jpg?raw=true).
![power module](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/DD4012SA.jpg?raw=true).
## Connections ##
Black wire of AC's connector goes to the middle pin of the power module and to the GND pin of esp-12e.
@@ -26,7 +49,7 @@ Yellow wire is connected to the Vin pin of the power module.
Blue wire is connected to the RXD pin of esp-12e.
Red wire is connected to the TXD pin of esp-12e.
**ATTENTION!** In case you are using board like NodeMCU instead of clean esp8266/esp32 module, you shouldn't connect RX & TX wires of air conditioneer to TX & RX pins of board. Use any other digital pins for UART connection. It doesn't matter if your board will use hardware or software UART. All UART types are working well.
**ATTENTION!** In case you are using board like NodeMCU instead of clean esp8266/esp32 module, you shouldn't connect RX & TX wires of air conditioner to TX & RX pins of board! *(TXD1/RXD1, TXD2/RXD2 are also most likely not suitable.)* Use any other digital pins for UART connection. It doesn't matter if your board will use hardware or software UART. All UART types are working well.
The usage of alternate pins for NodeMCU-like boards is necessary cause RX & TX lines of this boards are often have additional components like resistors or USB-TTL converters connected. This components are violate esp-to-ac UART connection.
Here is it:
@@ -35,7 +58,7 @@ Here is it:
All connections in custom 3d-printed case looks like this:
![module assembled](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/assembled.JPG?raw=true)
Cause I haven't JST SM connector I made own:
Since I didn't have JST SM connectors, I made my own:
![JST SM connector replica](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/connector.JPG?raw=true).
It is made of standard 2.54mm pins and 3D-printed case.
@@ -44,4 +67,4 @@ All models for 3D-printing are available too: [STL-files for connector](https://
## The result ##
![photo 1](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/real-1.JPG?raw=true)
![photo 2](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/real-2.JPG?raw=true)
![photo 3](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/real-3.JPG?raw=true)
![photo 3](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/real-3.JPG?raw=true)

View File

@@ -1,23 +1,45 @@
## Электроника, необходимая для управления кондиционером по wifi ##
Я тестировал проект на esp8266 (esp-12e). Минимальная обвязка традиционная и выглядит так:
Я тестировал проект на esp8266 (esp-12e). Минимальная обвязка традиционна и выглядит так:
![scheme](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/scheme.png?raw=true)
Для прошивки esp8266 в первый раз нужно в дополнение к обвязке, показанной на схеме выше, притянуть к Земле пин IO0 (GPIO0). После этого ESPHome может быть загружена в esp8266 по UART0. Если при этом вы указали OTA в конфигурации ESPHome, то в дальнейшем пин IO0 можно подтянуть к питанию или оставить висеть в воздухе. Он никак не будет влиять на загрузку новых прошивок, потому что все апдейты можно будет делать "по воздуху" (то есть по wifi). Я никуда IO0 не подтягивал и ничего к нему не паял, потому что не вижу смысла это делать ради одного раза. Первую прошивку делал в самодельном переходнике на макетке.
Для прошивки esp8266 в первый раз нужно, в дополнение к обвязке, показанной на схеме выше, притянуть к земле пин IO0 (GPIO0). После этого ESPHome может быть загружена в esp8266 по UART0. Если при этом вы указали OTA в конфигурации ESPHome, то в дальнейшем пин IO0 можно подтянуть к питанию или оставить висеть в воздухе. Он никак не будет влиять на загрузку новых прошивок, потому что все апдейты можно будет делать "по воздуху" (то есть по Wi-Fi). Я никуда IO0 не подтягивал и ничего к нему не паял, потому что не вижу смысла это делать ради одного раза. Первую прошивку делал в самодельном переходнике на макетке.
Плата esp-12e перед подключением кондиционера и модуля питания:
![esp-12e minimal photo](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/esp-12e.jpg?raw=true)
Внутренний блок сплит-системы имеет 5-проводное подключение к модулю wifi. Коннектор [JST SM](https://www.jst-mfg.com/product/pdf/eng/eSM.pdf).
Внутренний блок сплит-системы может иметь 5-проводное или 4-проводное подключение (псевдо-USB) к модулю Wi-Fi. Встречаются и другие виды подключения. Например, AUX Aegean Sea ( 爱琴海 ), за подробностями подключения сюда: [issue #71](https://github.com/GrKoR/esphome_aux_ac_component/issues/71).
## 5-проводное подключение
Для 5-проводного подключения используется коннектор [JST SM](https://www.jst-mfg.com/product/pdf/eng/eSM.pdf).
## Перечень проводников ##
1. Желтый: +14В постоянного тока. Осциллограф показал от +13.70В до +14.70В. В сервисном мануале встречалось, что питание возможно до +16В.
### Распиновка ###
1. Желтый: +12В..+14В постоянного тока. Осциллограф показал от +13.70В до +14.70В. В сервисном мануале встречалось, что питание возможно до +16В.
2. Черный: земля.
3. Белый: +5В постоянного тока (измерено от +4.43В до +5.63В). Для чего нужна эта линия - не понятно. У меня нет версий. Эксперименты с родным wifi-модулем сплит-системы показали, что эта линия в работе wifi не участвует. Линия идет напрямую на ножку контроллера в сплите через резистор 1 кОм.
3. Белый: +5В постоянного тока (измерено от +4.43В до +5.63В). Для чего нужна эта линия - не понятно. У меня нет версий. Эксперименты с родным Wi-Fi модулем сплит-системы показали, что эта линия в работе Wi-Fi не участвует. Линия идет напрямую на ножку контроллера в сплите через резистор 1 кОм.
4. Синий: TX кондиционера. Высокий уровень +5В.
5. Red: RX кондиционера. Высокий уровень +5В.
Питание ESP подключать **ТОЛЬКО** к линии +12В..+14В! Имеющийся в 5-проводном подключении контакт с +5В для питания ESP использоваться не должен. Он является сигнальным, подключен через резистор непосредственно на ногу контроллера на материнской плате кондиционера и способен выдавать лишь мизерный ток. При неудачном стечении обстоятельств, повесив питание ESP на эту линию, можно сжечь мозги кондиционеру.
## 4-проводное подключение (псевдо-USB)
Для 4-проводного подключения используется USB-коннектор. От настоящего USB здесь только коннектор. По пинам в этом разъеме UART и +12В..+14В питание.
**ВНИМАНИЕ!** С устройствами c настоящим USB этот интерфейс не совместим! Если вставить в разъём обычную USB-флешку или другое устройство, скорее всего оно просто сгорит.
### Распиновка ###
<img src="https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/USB-pinout.png?raw=true" width="400">
1. +12В..+14В постоянного тока. Осциллограф показал от +13.70В до +14.70В. В сервисном мануале встречалось, что питание возможно до +16В.
2. RX кондиционера. Высокий уровень +5В.
3. TX кондиционера. Высокий уровень +5В.
4. земля.
Большое спасибо [@diabl0](https://github.com/diabl0) за эту распиновку ([issue #70](https://github.com/GrKoR/esphome_aux_ac_component/issues/70)).
## Питание
Для питания ESP8266 можно использовать любой подходящий DC-DC преобразователь. Я использовал такой:
![power module](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/DD4012SA.jpg?raw=true).
![power module](https://github.com/GrKoR/esphome_aux_ac_component/blob/master/images/DD4012SA.jpg?raw=true | width=200).
## Подключение ##
Черный провод (земля) подключается к земле DC-DC преобразователя и к пину GND модуля ESP8266.
@@ -25,7 +47,7 @@
Синий провод подключается к пину RXD модуля esp-12e.
Красный провод подключается к пину TXD модуля esp-12e.
**ВНИМАНИЕ!** Если вы используете не голый модуль esp32/esp8266, а плату типа NodeMCU, то не подключайте провода TX и RX кондиционера к пинам TX и RX платы! Используйте любые другие свободные пины для UART. При этом для ESP8266 UART будет программный, но это не страшно. Ресурсов ESP8266 хватит для работы.
**ВНИМАНИЕ!** Если вы используете не голый модуль esp32/esp8266, а плату типа NodeMCU, то не подключайте провода TX и RX кондиционера к пинам TX и RX платы! *(TXD1/RXD1, TXD2/RXD2 также скорее всего не подойдут.)* Используйте любые другие свободные пины для UART. При этом для ESP8266 UART будет программный, но это не страшно. Ресурсов ESP8266 хватит для работы.
Использовать альтернативные пины для плат типа NodeMCU необходимо потому, что часто на линиях RX и TX этих плат установлены резисторы, а также на этих пинах висит USB-TTL конвертер (если он есть на плате). Эти компоненты мешают ESP наладить соединение с кондиционером.

View File

@@ -0,0 +1,18 @@
# How to request a feature for a component #
With any functions, the alignment is such that they simply cannot be written down by name.
We need a log from someone who has air conditioner with such functions. If you are such a person, then you can help yourself and the community.
To capture the log you need to do the following steps:
1. Run a specially written [tool](https://github.com/GrKoR/ac_python_logger) to collect logs.
2. Turn on the AC.
3. Wait 10+ seconds. (During this time, the ESP will receive all packets from AC).
4. Turn on the desired function using AC's IR remote.
5. Wait 10+ seconds ones more. While you are waiting, you can write down what you have done.
6. Turn off the desired function.
7. Wait 10+ seconds again and write down what you've done.
8. Repeat steps 4..7 for all other functions you interested in.
9. Stop the log recording with a script.
10. Send collected log and your notes (explanations to the log) to [issues](https://github.com/GrKoR/esphome_aux_ac_component/issues) or to [telegram chat](https://t.me/aux_ac).
Instead of a Python script from the step #1, you can simply save the logs from the esphome web-interface with copy-paste or from the command line, but there is a lot of extra stuff there. And it's easy to miss something. But in principle, it is also quite a working option.

View File

@@ -0,0 +1,17 @@
# Как запросить расширение функционала компонента #
С любыми новыми функциями кондиционера ситуация такая, что просто по названию из инструкции или с пульта их не сделать. Нужен лог от владельца кондиционера, у кого такие функции есть. Если вы такой владелей, то можете помочь себе и сообществу.
Последовательность действий такая:
1. Запускате специально написанную [тулзу](https://github.com/GrKoR/ac_python_logger) для сбора логов.
2. Включете кондиционер.
3. Ждёте 10+ секунд, чтобы все возможные типы пакетов прошли по UART на ESP.
4. Включаете нужную функцию с помощью ИК-пульта.
5. Опять ждёте 10+ секунд. Во время ожидания можно записать в отдельный текстовый файл или на бумажку, что именно сделано.
6. Выключаете нужную функцию.
7. Опять ждёте 10+ секунд, не забывая записывать комментарии по сделанному.
8. Повторяете шаги 4..7 для всех других функций, которые хочется иметь в компоненте `aux_ac`.
9. Останавливаете запись лога.
10. Отправляете собранный лог и свои заметки (пояснения к логу) в [issues](https://github.com/GrKoR/esphome_aux_ac_component/issues) или в [телеграм](https://t.me/aux_ac).
Вместо использования Python-скрипта можно логи из веб-интерфейса esphome сохранять копипастом или из командной строки. Но там много лишнего шлётся и легко что-то пропустить. Но в принципе это тоже вполне рабочий вариант.

View File

@@ -65,6 +65,7 @@ climate:
period: 7s
show_action: true
display_inverted: true
optimistic: true
indoor_temperature:
name: ${upper_devicename} Indoor Temperature
id: ${devicename}_indoor_temp
@@ -78,11 +79,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: ${upper_devicename} Colant Outbound Temperature
name: ${upper_devicename} Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: ${upper_devicename} Colant Inbound Temperature
name: ${upper_devicename} Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature:
@@ -93,9 +94,9 @@ climate:
name: ${upper_devicename} Defrost State
id: ${devicename}_defrost_state
internal: false
invertor_power:
inverter_power:
name: ${upper_devicename} Invertor Power
id: ${devicename}_invertor_power
id: ${devicename}_inverter_power
internal: false
preset_reporter:
name: ${upper_devicename} Preset Reporter
@@ -213,4 +214,4 @@ number:
then:
- aux_ac.vlouver_set:
id: aux_id
position: !lambda "return x;"
position: !lambda "return x;"

BIN
images/USB-pinout.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

View File

@@ -73,11 +73,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: $upper_devicename Colant Outbound Temperature
name: $upper_devicename Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: $upper_devicename Colant Inbound Temperature
name: $upper_devicename Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature:

View File

@@ -79,6 +79,7 @@ climate:
period: 7s
show_action: true
display_inverted: true
optimistic: true
indoor_temperature:
name: $upper_devicename Indoor Temperature
id: ${devicename}_indoor_temp
@@ -92,11 +93,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: $upper_devicename Colant Outbound Temperature
name: $upper_devicename Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: $upper_devicename Colant Inbound Temperature
name: $upper_devicename Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature:

View File

@@ -75,11 +75,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: $upper_devicename Colant Outbound Temperature
name: $upper_devicename Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: $upper_devicename Colant Inbound Temperature
name: $upper_devicename Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature:

View File

@@ -75,11 +75,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: $upper_devicename Colant Outbound Temperature
name: $upper_devicename Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: $upper_devicename Colant Inbound Temperature
name: $upper_devicename Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature:

View File

@@ -61,6 +61,7 @@ climate:
period: 7s
show_action: true
display_inverted: true
optimistic: true
indoor_temperature:
name: $upper_devicename Indoor Temperature
id: ${devicename}_indoor_temp
@@ -74,11 +75,11 @@ climate:
id: ${devicename}_outdoor_temp
internal: false
outbound_temperature:
name: $upper_devicename Colant Outbound Temperature
name: $upper_devicename Coolant Outbound Temperature
id: ${devicename}_outbound_temp
internal: false
inbound_temperature:
name: $upper_devicename Colant Inbound Temperature
name: $upper_devicename Coolant Inbound Temperature
id: ${devicename}_inbound_temp
internal: false
compressor_temperature: