miguelangellv / esphaier Goto Github PK
View Code? Open in Web Editor NEWESP8266 code to connect to Haier Air Conditioner with wifi module support
ESP8266 code to connect to Haier Air Conditioner with wifi module support
Hello! I have two air conditioners made by haier. Manufacturer of Candy and Novex. Perfectly managed with this component, thanks!
They have sleep (CLIMATE_PRESET_SLEEP) and turbo (CLIMATE_PRESET_BOOST) modes.
I would like to add them as presets.
But I don't understand component programming.
How can I help to add these features? I can analyze the received data from the air conditioner.
Hello
everything works correctly except the current temperature in standby and function are not the same!
Was it possible to add Swing Mode support?
So far, I have used another modification of haier.h, which stopped working with the ESPHome upgrade to version 1.19.4.
Would anyone please advise me how to modify the code?
Thank you very much for this project
Would it be possible to use this instead of the Wemos D1?
https://community.home-assistant.io/t/esphome-wemos-d1-mini/237174/5?u=pd3mlp
I found it on Ali express and fits in the Haier USB socket.
Kind regards
Maurits
Hello thank you so much for your modifications. Just an important note that I do not know how to solve it.
My AC only shows that is off couple minutes after pressing turn off button, after those couple minutes shows the last active mode that was at (My AC still off).
I realized that the issue starts from the esphome code. As you can see in the attached image esp always receive the last active state.
Is there any way to know when my AC is ON or OFF when I am away?
Thank you so much
Hi,
Sorry if this is me being a noob, but I cant seem to flash the yaml file.
I dont have Home Assistent running, but in Homey (a competitor) there is an addon to work with ESPhome.
I am trying to upload the yaml with ESPHOME-flasher.
But I think I should have a step somewhere in between to create a firmware.bin from the YAML file? I am searching for hours, but I am lost. Would you please be so kind to point me in the right direction?
climate.haier | off | hvac_modes: heat_cool, off, cool, heat min_temp: 10 max_temp: 50 target_temp_step: 1 current_temperature: null temperature: 0 friendly_name: Haier supported_features: 1 |
---|
[23:34:23][D][Haier:105]: POLL:
0-255
1-255
2-10
3-0
4-0
5-0
6-0
7-0
8-1
9-1
10-77
11-1
12-90
[23:34:28][D][Haier:105]: POLL:
0-255
1-255
2-10
3-0
4-0
5-0
6-0
7-0
8-1
9-1
10-77
11-1
12-90
Hello.
Unfortunately I got following error while compiling in ESPHome dashboard:
/config/esphome/haier.yaml: In lambda function:
/config/esphome/haier.yaml:34:24: error: expected type-specifier before 'Haier'
34 | auto haier = new Haier(swing);
| ^~~~~
/config/esphome/haier.yaml:36:20: error: could not convert '{haier}' from '<brace-enclosed initializer list>' to 'std::vector<esphome::climate::Climate*>'
36 | return {haier};
| ^
| |
| <brace-enclosed initializer list>
Compiling /data/haier/.pioenvs/haier/lib67b/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o
Compiling /data/haier/.pioenvs/haier/lib67b/ESP8266WiFi/ESP8266WiFiGratuitous.cpp.o
*** [/data/haier/.pioenvs/haier/src/main.cpp.o] Error 1
Can you take look for solution please?
My Haier unit has an "away" mode that maintains a minimum temperature of 10C.
Is it possible to implement this in esphaier?
Hi,
today i just started with testing esphome etc. with goal to get away form hON and smartAir2 (as I even have both, grrr)
Anyways, this is from my AC flexisPlus "V3", "V4" is one with hON connection
current temperature in log is actually outside temperature, current would be 22C and mode HEAT_COOL should be DRY, dunno what is up with that, fan mode is auto etc. I guess maybe haierv2 would be correct in my case?
https://i.imgur.com/7g1X3Vz.png
I will create pull request if i'm able to create file that will work with AC I have.
Not nice of haier to change protocol, seemingly for each unit and not even documenting it.
Hi, thanks for your job.
Is it possible to modify command to 0.5 celsius target temperature step?
Homekit / Homeassistant and my aircon with wired remote - all supporting this step...
would appreciate for your help
i receive this error:
In file included from src/main.cpp:12:0:
src/Haier.h:11:26: error: ‘climate’ is not a namespace-name
using namespace esphome::climate;
^
src/Haier.h:11:33: error: expected namespace-name before ‘;’ token
using namespace esphome::climate;
^
src/Haier.h:54:29: error: expected class-name before ‘,’ token
class Haier : public Climate, public PollingComponent {
congratulations for the project works really well, can you add the dehumidifier mode?
Thanks for your project, I can already control my central air conditioner. How can I modify the yml file to control multiple indoor units?
Hello,
Is it possible to do a tutorial ? with photos ? Because I don't know what a "Wemos D1 Mini" is... I would like to connect my HA with my AC Haier, but I feel like I have to be an engineer... The original module should be replaced by this mysterious Wemos ? I have an ESP32 module, I don't want to go through the Chinese cloud.
Thank you
Hi, I'm receiveing this yellow lines in console while updating ESP firmware, could you advice plese.
In file included from src/esphome/core/controller.h:29,
from src/esphome/components/api/api_server.h:4,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/climate/climate.h: In constructor 'esphome::climate::Climate::Climate()':
src/esphome/components/climate/climate.h:167:7: warning: 'esphome::climate::Climate::away' is deprecated: away is deprecated, use preset instead [-Wdeprecated-declarations]
167 | class Climate : public EntityBase {
| ^~~~~~~
src/esphome/components/climate/climate.h:193:8: note: declared here
193 | bool away{false};
| ^~~~
src/esphome/components/climate/climate.h:167:7: warning: 'esphome::climate::Climate::away' is deprecated: away is deprecated, use preset instead [-Wdeprecated-declarations]
167 | class Climate : public EntityBase {
| ^~~~~~~
src/esphome/components/climate/climate.h:193:8: note: declared here
193 | bool away{false};
| ^~~~
In file included from src/main.cpp:24:
src/HaierGuestroom.h: In constructor 'Haier::Haier(bool)':
src/HaierGuestroom.h:95:50: note: synthesized method 'esphome::climate::Climate::Climate()' first required here
95 | Haier(bool swing) : PollingComponent(5 * 1000) {
| ^
src/HaierGuestroom.h: In member function 'virtual void Haier::control(const esphome::climate::ClimateCall&)':
src/HaierGuestroom.h:345:20: warning: enumeration value 'CLIMATE_FAN_QUIET' not handled in switch [-Wswitch]
345 | switch (call.get_fan_mode().value()) {
| ^
Sometimes esphaier device change mode isnt working well, because after change from cool to heat or heat to cool, it backs again to the last mode after a second.
It happens after one or two hours working, and ends after restart device.
I disconnected all my nspanel thermostats and still happens.
Spanish:
Algunas veces el dispositivo esphaier deja de funcionar correctamente, cuando le dices que cambie el modo a frio o de frio a calor, vuelve al estado anterior pasados unos segundos.
Esto sucede después de estar funcionando un par de horas, y deja de suceder después de reiniciarlo.
He desconectado todos los nspanels y sigue sucediendo.
Alguna idea ?
In file included from src/main.cpp:30:
src/Haier.h: In member function 'virtual void Haier::control(const esphome::climate::ClimateCall&)':
src/Haier.h:345:20: warning: enumeration value 'CLIMATE_FAN_QUIET' not handled in switch [-Wswitch]
345 | switch (call.get_fan_mode().value()) {
|
I am a noob, I managed to get one Haier to work on this great piece of software. I do not understand how to get another to work.
When flashing again on another ESp, it is a clone and it sees two ESP's as the same. I tried to rename the files but no luck. Only one airco will work when two are connected with HA.
Anyone can help, thanks!
INFO Reading configuration /config/esphome/esphaier.yaml...
INFO Generating C++ source...
INFO Core config or version changed, cleaning build files...
INFO Compiling app...
INFO Running: platformio run -d /config/esphome/haier
Obsolete PIO Core v4.3.3 is used (previous was 4.3.4)
Please remove multiple PIO Cores from a system:
https://docs.platformio.org/page/faq.html#multiple-pio-cores-in-a-system
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES:
src/Haier.h:31:3: error: stray '\267' in program
src/Haier.h:31:3: error: stray '\302' in program
src/Haier.h:31:3: error: stray '\267' in program
In file included from src/main.cpp:12:0:
src/Haier.h:275:10: warning: missing terminating ' character [enabled by default]
^
In file included from src/main.cpp:12:0:
src/Haier.h:148:27: error: 'up' does not name a type
Sign up
^
src/Haier.h:175:267: error: expected unqualified-id before '<' token
Features →
^
src/Haier.h:188:332: error: expected unqualified-id before '<' token
It would be great if you add the silent mode. Right now it is possible to turn it on/off from IR remote, bun not from Home Assistant.
Thanx!
Can support for domoticz be added?
Hi,i have installed this version on my haier.
i see that is every time in health mode,
here you find log with cool mode with haier remote control
[15:25:27][D][Haier:103]: POLL:
0-255
1-255
2-10
3-0
4-0
5-0
6-0
7-0
8-1
9-1
10-77
11-1
12-90
[15:25:27][D][Haier:137]: Readed message:
0-255
1-255
2-34
3-0
4-0
5-0
6-0
7-0
8-1
9-2
10-109
11-1
12-0
13-27
14-0
15-55
16-0
17-127
18-0
19-0
20-0
21-0
22-0
23-1
24-0
25-3
26-0
27-0
28-0
29-17
30-0
31-0
32-0
33-0
34-0
35-8
36-129
[15:25:27][D][climate:373]: 'Condizionatore camera' - Sending state:
[15:25:27][D][climate:376]: Mode: COOL
[15:25:27][D][climate:381]: Fan Mode: AUTO
[15:25:27][D][climate:396]: Current Temperature: 27.00°C
[15:25:27][D][climate:402]: Target Temperature: 24.00°C
[15:25:32][D][Haier:103]: POLL:
and here with esp
[15:29:52][D][climate:373]: 'Condizionatore camera' - Sending state:
[15:29:52][D][climate:376]: Mode: COOL
[15:29:52][D][climate:381]: Fan Mode: AUTO
[15:29:52][D][climate:396]: Current Temperature: 26.00°C
[15:29:52][D][climate:402]: Target Temperature: 24.00°C
[15:29:57][D][Haier:103]: POLL:
0-255
1-255
2-10
3-0
4-0
5-0
6-0
7-0
8-1
9-1
10-77
11-1
12-90
[15:29:57][D][Haier:137]: Readed message:
0-255
1-255
2-34
3-0
4-0
5-0
6-0
7-0
8-1
9-2
10-109
11-1
12-0
13-26
14-0
15-56
16-0
17-127
18-0
19-0
20-0
21-0
22-0
23-1
24-0
25-3
26-0
27-0
28-0
29-9
30-0
31-0
32-0
33-0
34-0
35-8
36-121
[15:29:57][D][climate:373]: 'Condizionatore camera' - Sending state:
[15:29:57][D][climate:376]: Mode: COOL
[15:29:57][D][climate:381]: Fan Mode: AUTO
[15:29:57][D][climate:396]: Current Temperature: 26.00°C
[15:29:57][D][climate:402]: Targ
Hi,i have a a wemos d1 mini.
how can i flash the .h file and .yaml?
thanks
Уважаемый автор Oksion имею hair, и на нем присутствует разъем ch35, как и у вас, но пытаясь настроить вифи узнал что в некоторых моделях этот разъем не работает,. Прошу вас сделать фотку или скан задней стороны платы (а именно дорожки и куда они ведут)
I love this app, thank you so much for making it.
However when I try to make an automation through the GUI in homeassisstant I can only chnage the HVAC mode, not the temperature? Not sure why this would be, as I can see the temp in the list of states and change it via the lovelace card?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.