Skip to content

Commit

Permalink
Update README.rst
Browse files Browse the repository at this point in the history
  • Loading branch information
paveldn committed Mar 3, 2024
1 parent 5d29724 commit e29f867
Showing 1 changed file with 35 additions and 44 deletions.
79 changes: 35 additions & 44 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Older Haier models controlled by the SmartAir2 application use the KZW-W002 modu

.. figure:: img/KZW-W002.jpg
:align: center
:scale: 50.0%
:width: 50.0%

This module can’t be reused, and you need to replace it with an ESP (RPI pico w) module.
The USB connector on the board doesn’t support the USB protocol.
Expand Down Expand Up @@ -50,7 +50,7 @@ To connect the ESP board to your AC you can cut a USB type A cable and connect w

.. figure:: img/usb_pinout.png
:align: center
:scale: 50.0%
:width: 50.0%

KZW-W002 module pinout

Expand All @@ -74,35 +74,26 @@ The module board looks like this:
:align: center
:width: 50.0%

In some cases, you can reuse this module and flash it with ESPHome,
but some new modules don’t support this. They look the same but have
encryption enabled.
In some cases, you can reuse this module and flash it with ESPHome, but some new modules don’t support this. They look the same but have encryption enabled.

**Warning!** The new generation of ESP32-Haier devices has encryption
enabled, so they can only be flashed with firmware that is signed with a
private key. There is no way to make them work with ESPHome, so if you try
to do it, the board will get into a boot loop with the error
``rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)`` The only way
to recover this board is to flash it with the original image. So before
starting your experiments make a backup image: `How to backup the
original image and flash ESPHome to the ESP32 Haier
module <#how-to-backup-the-original-image-and-flash-esphome-to-the-esp32-haier-module>`__
**Warning!** The new generation of ESP32-Haier devices has encryption enabled, so they can only be flashed with firmware that is signed with a private key.
There is no way to make them work with ESPHome, so if you try to do it, the board will get into a boot loop with the error ``rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)``.
The only way to recover this board is to flash it with the original image.
So before starting your experiments make a backup image: `How to backup the original image and flash ESPHome to the ESP32 Haier module <#how-to-backup-the-original-image-and-flash-esphome-to-the-esp32-haier-module>`__

Also, you can use any other ESP32, ESP8266 or an RPI pico W board. In
this case, you will need to cut the original wire or make a connector
yourself (the board has a JST SM04B-GHS-TB connector)
Also, you can use any other ESP32, ESP8266, or an RPI pico W board.
In this case, you will need to cut the original wire or make a connector yourself (the board has a JST SM04B-GHS-TB connector)

Configuration
-------------

The configuration will be a little bit different for different
protocols. For example, the SmartAir2 protocol doesn’t support cleaning,
setting air direction (just swing on/off) etc.
The configuration will be a little bit different for different protocols.
For example, the SmartAir2 protocol doesn’t support cleaning, setting air direction (just swing on/off), etc.

hOn configuration example
~~~~~~~~~~~~~~~~~~~~~~~~~

::
.. code-block:: yaml
uart:
baud_rate: 9600
Expand Down Expand Up @@ -158,7 +149,7 @@ hOn configuration example
SmartAir2 configuration example
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::
.. code-block:: yaml
uart:
baud_rate: 9600
Expand Down Expand Up @@ -201,10 +192,10 @@ Configuration variables
~~~~~~~~~~~~~~~~~~~~~~~

- **id
(Optional,**\ `ID <https://esphome.io/guides/configuration-types.html#config-id>`__\ **):**
(Optional,** `ID <https://esphome.io/guides/configuration-types.html#config-id>`__\ **):**
Manually specify the ID used for code generation
- **uart_id
(Optional,**\ `ID <https://esphome.io/guides/configuration-types.html#config-id>`__\ **):**
(Optional,** `ID <https://esphome.io/guides/configuration-types.html#config-id>`__\ **):**
ID of the UART port to communicate with AC
- **protocol (Required, string):** Defines communication protocol with
AC. Possible values: hon or smartair2
Expand All @@ -214,7 +205,7 @@ Configuration variables
- **beeper (Optional, boolean):** (supported only by hOn) Can be used
to disable beeping on commands from AC
- **answer_timeout
(Optional,**\ `Time <https://esphome.io/guides/configuration-types.html#config-time>`__\ **):**
(Optional,** `Time <https://esphome.io/guides/configuration-types.html#config-time>`__\ **):**
Can be used to change default answer timeout. It helps in case AC
takes longer to answer requests.
- **alternative_swing_control (Optional, boolean):** (supported by
Expand Down Expand Up @@ -242,11 +233,11 @@ Configuration variables
(use quotes in opposite case ESPHome will convert it to False),
VERTICAL, HORIZONTAL, BOTH
- **on_alarm_start
(Optional,**\ `Automation <https://esphome.io/guides/automations#automation>`__\ **):**
(Optional,** `Automation <https://esphome.io/guides/automations#automation>`__\ **):**
(supported only by hOn) Automation to perform when AC activates a new
alarm. See `on_alarm_start <#on_alarm_start-trigger>`__
- **on_alarm_end
(Optional,**\ `Automation <https://esphome.io/guides/automations#automation>`__\ **):**
(Optional,** `Automation <https://esphome.io/guides/automations#automation>`__\ **):**
(supported only by hOn) Automation to perform when AC deactivates a
new alarm. See `on_alarm_end <#on_alarm_end-trigger>`__
- All other options from
Expand All @@ -267,7 +258,7 @@ variables can be used in
`lambdas <https://esphome.io/guides/automations#config-lambda>`__.
Supported only by hOn protocol.

::
.. code-block:: yaml
climate:
- protocol: hOn
Expand All @@ -276,7 +267,7 @@ Supported only by hOn protocol.
- logger.log:
level: WARN
format: "Alarm activated. Code: %d. Message: \"%s\""
args: [ code, message]
args: [ code, message ]
on_alarm_end Trigger
~~~~~~~~~~~~~~~~~~~~
Expand All @@ -288,7 +279,7 @@ variable “code” (type uint8_t), error message in the variable “message”
`lambdas <https://esphome.io/guides/automations#config-lambda>`__.
Supported only by hOn protocol.

::
.. code-block:: yaml
climate:
- protocol: hOn
Expand All @@ -297,14 +288,14 @@ Supported only by hOn protocol.
- logger.log:
level: INFO
format: "Alarm deactivated. Code: %d. Message: \"%s\""
args: [ code, message]
args: [ code, message ]
climate.haier.power_on Action
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This action turns the AC power on

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -315,7 +306,7 @@ climate.haier.power_off Action

This action turns AC power off

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -326,7 +317,7 @@ climate.haier.power_toggle Action

This action toggles AC power

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -337,7 +328,7 @@ climate.haier.display_on Action

This action turns the AC display on

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -348,7 +339,7 @@ climate.haier.display_off Action

This action turns the AC display off

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -360,7 +351,7 @@ climate.haier.health_on Action
Turn on health mode (`UV light
sterilization <https://www.haierhvac.eu/en/node/1809>`__)

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -371,7 +362,7 @@ climate.haier.health_off Action

Turn off health mode

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -383,7 +374,7 @@ climate.haier.beeper_on Action
(supported only by hOn) This action enables beep feedback on every
command sent to AC

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -396,7 +387,7 @@ climate.haier.beeper_off Action
command sent to AC (keep in mind that this will not work for IR remote
commands)

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -408,7 +399,7 @@ climate.haier.set_vertical_airflow Action
(supported only by hOn) Set direction for vertical airflow if the
vertical swing is disabled. Possible values: Up, Center, Down.

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -422,7 +413,7 @@ climate.haier.set_horizontal_airflow Action
(supported only by hOn) Set direction for horizontal airflow if the
horizontal swing is disabled. Possible values: Left, Center, Right.

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -436,7 +427,7 @@ climate.haier.start_self_cleaning Action
(supported only by hOn) Start
`self-cleaning <https://www.haier.com/in/blogs/beat-the-summer-heat-with-haier-self-cleaning-ac.shtml>`__

::
.. code-block:: yaml
on_...:
then:
Expand All @@ -447,7 +438,7 @@ climate.haier.start_steri_cleaning Action

(supported only by hOn) 56°C steri-cleaning

::
.. code-block:: yaml
on_...:
then:
Expand Down

0 comments on commit e29f867

Please sign in to comment.