@VitalyZ thanks so much for your help. I received my dongle, flashed with ESPHome and got my Midea U working with HA finally!
I’m in the US so I have Home Assistant set to Imperial units. Its a little funky with Fahrenheit because I assume the frontend is converting from everything from Celsius, but its working great.
For anyone out there using Fahrenheit and your display on the unit is stuck on Celsius: I was stuck for a while thinking I’d need to send a command or something from the dongle. It turns out you can switch the display on the device by holding the temperature up and down buttons for a few seconds to switch between °C and °F.
Can confirm that too. Did it with D1 mini and a converter with software UART.
Only thing to note is I had to create the yaml in esphome, upload it to the d1 mini, delete the yaml and recreate it and upload again.
If I didn’t do that, the D1 wouldn’t get a response. Don’t know why, but the double-flash did the trick.
Since it now seems that the flashed drive works consistently and it’s only whether a particular a/c supports it or not, should we change the first post to a how-to for any newcomer to do it easy?
For eg. use a particular ESP and a particular ttl-uart (I’ve read 1 or 2 didn’t work) or order a readymade one from jlcpcb (or a member that stocks)
Flash it, remove the yaml from esphome, add it again and reflash it (it happened on 2 or 3 members here, me included).
What configuration options can be added for supported features.
I believe it would be a “clean” way for other members to directly go and do the job than searching through all the posts.
And for the supported models, it already has another post which you already referenced.
I have been maintaining the first topic, updating the contents, removing incorrect/outdated info etc…
But I agree i still have to update the parameters….
so…it will be done
is mentioned on the first post, and since it has more options than the ones present on esphome (like autoconfig, the ability to disable heat mode on units that don’t utilize them or the use of the IR_TSOP on dudanov’s midea dongle), I thought that the esphome documentation was old or not related to this thread. Because I am currently using the config mentiones on esphome, but I wanted to add those extra features.
By the way, you can add this midea unit to the supported list:
Manufacturer: Midea
Model ID: MAS12C1BFH
Year: 2018
Market: MX
What you’re experiencing here, is that the link you posted is the development branch of Dudanov. He is the code owner of the ESPHome-Midea-Climate-Component. That means, what you see there, is what you get with one of the next releases from ESPHome (standard version).
Stick with the ESPHome version and just wait until these changes come up in ESPHome. If you want to be ahead, use the ESPHome-dev-branch, not Dudanovs. It would be a nightmare to support all these different versions.
Dudanov is kind enough to provide some special versions for specific problems or use cases that have come up, that would be a reason to use one these specific versions from his repository. Use these if Dudanov asks you to do so for testing purposes. Otherwise, as I said, I highly recommend to stick with the ESPHome standard or dev branches/versions.
Hallo, I,m trying to integrate a Carrier 42qhg009d8s who mounts a 16022000020169 logic board, shared by some other supported ACs, but I’m having some troubles generating the ESPhome configuration file below
esphome:
name: midea-disimpegno
platform: ESP8266
board: d1_mini
# Enable logging
logger:
baud_rate: 0
captive_portal:
# Enable Home Assistant API
api:
ota:
password: "flying"
wifi:
ssid: "foo"
password: "bar"
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Midea-Disimpegno"
password: ""
# UART settings for Midea dongle (required)
uart:
tx_pin: 1
rx_pin: 3
baud_rate: 9600
# Optional (if you want modify settings)
midea_dongle:
strength_icon: true
# Main settings
climate:
- platform: midea_ac
name: Condizionatore Disimpegno # Use a unique name.
beeper: true # Beep on commands.
visual: # Optional. Example of visual settings override.
autoconf: true # Autoconfigure most options.
min_temperature: 16 °C # min: 16b
max_temperature: 30 °C # max: 30
temperature_step: 0.5 °C # min: 0.5
outdoor_temperature: # Optional. Create outdoor unit temperature sensor (may display incorrect values after long inactivity).
name: Temperatura Unità Esterna
power_usage: # Optional. Power usage sensor (only for devices that support this feature).
name: Consumo Condizionatore Disimpegno
humidity_setpoint: # Optional. Indoor humidity sensor (only for devices that support this feature).
name: Umidità Condizionatore Disimpegno
because
autoconf: true # Autoconfigure most options.
causes this error/warning
INFO Reading configuration /config/esphome/midea-disimpegno.yaml...
Failed config
climate.midea_ac: [source /config/esphome/midea-disimpegno.yaml:39]
platform: midea_ac
name: condizionatore disimpegno
beeper: True
visual:
min_temperature: 16 °C
max_temperature: 30 °C
temperature_step: 0.5 °C
[autoconf] is an invalid option for [climate.midea_ac]. Please check the indentation.
autoconf: True [source /config/esphome/midea-disimpegno.yaml:46]
outdoor_temperature:
name: Temperatura Unità esterna
power_usage:
name: Consumo Condizionatore Disimpegno
humidity_setpoint:
name: Umidità condizionatore Disimpegno
preventing the building.
Also removing
autoconf: true # Autoconfigure most options.
and adding
supported_modes: # All capabilities in this section detected by autoconf.
- FAN_ONLY # This capability is always used.
- HEAT_COOL
- COOL
- HEAT
- DRY
custom_fan_modes:
- SILENT
- TURBO
supported_presets: # All capabilities in this section detected by autoconf.
- ECO
- BOOST
- SLEEP # This capability is always used.
custom_presets: # All capabilities in this section detected by autoconf.
- FREEZE_PROTECTION
supported_swing_modes:
- VERTICAL # This capability is always used.
also causates and error
INFO Reading configuration /config/esphome/midea-disimpegno.yaml...
Failed config
climate.midea_ac: [source /config/esphome/midea-disimpegno.yaml:39]
platform: midea_ac
name: condizionatore disimpegno
beeper: True
visual:
min_temperature: 16 °C
max_temperature: 30 °C
temperature_step: 0.5 °C
[supported_modes] is an invalid option for [climate.midea_ac]. Please check the indentation.
supported_modes: [source /config/esphome/midea-disimpegno.yaml:47]
- FAN_ONLY
- HEAT_COOL
- COOL
- HEAT
- DRY
custom_fan_modes:
- SILENT
- TURBO
[supported_presets] is an invalid option for [climate.midea_ac]. Did you mean [custom_presets]?
supported_presets: [source /config/esphome/midea-disimpegno.yaml:56]
- ECO
- BOOST
- SLEEP
custom_presets:
- FREEZE_PROTECTION
[supported_swing_modes] is an invalid option for [climate.midea_ac]. Please check the indentation.
supported_swing_modes: [source /config/esphome/midea-disimpegno.yaml:62]
- VERTICAL
- HORIZONTAL
- BOTH
outdoor_temperature:
name: Temperatura Unità esterna
power_usage:
name: Consumo Condizionatore Disimpegno
humidity_setpoint:
name: Umidità condizionatore Disimpegno
I’m sure that I’m drowning in an inch of water, but I hope you can forgive me and helping to get out of the puddle
I’m getting the feeling, you’re working with some kind of wrong documentation. I can’t find either of your used modes.
According to the documentation, see here, you can’t use supported_modes or autoconfig. And for what it’s worth, just try with the basic settings and add things like modes or fan_modes after everything else is working.
Something like this and see what happens:
esphome:
name: midea-disimpegno
platform: ESP8266
board: d1_mini
# Enable logging
logger:
baud_rate: 0
captive_portal:
# Enable Home Assistant API
api:
ota:
password: "flying"
wifi:
ssid: "foo"
password: "bar"
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Midea-Disimpegno"
password: ""
# UART settings for Midea dongle (required)
uart:
tx_pin: 1
rx_pin: 3
baud_rate: 9600
# Optional (if you want modify settings)
midea_dongle:
strength_icon: true
# Main settings
climate:
- platform: midea_ac
name: Condizionatore Disimpegno # Use a unique name.
beeper: true # Beep on commands.
If this works, try adding the things you need. Normally all the things that are needed are discovered automatically, so no need to add the fan_modes. These settings are mostly, if something isn’t working out-of-the-box, but standard users as we all are won’t need these at all.
I take advantage of the opportunity to ask if the sensors name are for exposing to HA, so being editable, or used internally by ESPhome, so being unchangeable.
I find it difficult to understand the relative documentation section
Sorry, link to documentation was wrong, I corrected it in the post above, and here it is:
What you used is the development version of the documentation, this is only for developing purposes as there may be some things described, that won’t work in the stable version of ESPHome. What you found is the version that may be upload and reviewed to ESPHome, but it is not final, it just fits the code from the specific branch. For users the ESPHome documentation is the place to go.
And for the short code I posted, yes, that should work out-of-the-box. Mine isn’t longer and it’s working great. The point is, get it running, and afterwards see (in HA), what functions are missing.
Then check if they are supported (see documentation), and if they are, but not shown, set the parameters manually in the file.
If they are not supported, you can start a feature request by adding an issue on Github or you ask in the telegram group.
As I said, mine is working out-of-the-box without any additional settings. I just changed the behaviour in the frontend, because I’ll never ever use the “heating” from my A/C. So I disabled it. But otherwise it’s just the standard.
Let us know how it works out for you. Oh and while you’re at it, please add your model to the list of supported models, that you can find here.