This project is a simple integration of the amazing work absalom-muc has done with his project MHI-AC-Ctrl.
It's supposed to simplify the Home Assistant setup, while giving you OTA and auto-discovery with virtually zero effort and no MQTT needed, powered by ESPHome.
MHI-AC-Ctrl-core.* files were forked directly, with no modification, whereas your WiFi credentials should go into the *.yaml file, and mhi_ac_ctrl.h is the core of the integration.
- Home Assistant installed
- ESPHome plugin installed (https://esphome.io/guides/getting_started_hassio.html)
- ssh plugin (preferred) or file editor installed in Home Assistant
SSH to your Home Assistant system, navigate to /config/esphome and clone the git repo:
cd /config/esphome
git clone https://github.com/ginkage/MHI-AC-Ctrl-ESPHome.git .
cp lr_mhi_ac_ctrl.yaml first_ac.yaml
After that, you should have a first_ac.yaml. Verify the file (wifi credentials, and name of the unit for example) Login to the Home Assistant web interface and install the yaml file on your esp with esphome.
Most newer MHI units (the ones supporting the WF-RAC WiFi module) support fine grained vane control for Left/Right and Up/Down.
When your log is flooded with mhi_ac_ctrl_core.loop error: -2 errors after updating to the newer code, please change your yaml file to include the legacy file instead of the large_framesize.yaml.
Currently the MHI code allows for more fine grained fan direction than esphome climate supports. for that, additional template parts are added.
There are 8 modes for Left/Right: Left, Left/Center, Center, Center/Right, Right, Wide, Spot and Swing
There are 5 modes for Up/Down: Up, Up/Center, Center/Down, Down and Swing
Setting swing from the esphome climate now fully works. It will store the oldvanes mode, and configure swing. after disabling swing (either vertically, horizontally or off), the old settings will be restored. Manually changing modes for Left/Right or Up/Down will update the climate state as well.
Climate Quiet was added to ESPhome, so QUIET was added. ordering still needs work (ginkage#22 (comment)) Added the solution for the auto mode from: ginkage#22 (comment): CLIMATE_FAN_DIFFUSE in fan speed and status sections and reshuffle the numbers and add CLIMATE_FAN_DIFFUSE to the traits.set_supported_fan_modes
Has now 5 different fan modes but I'm not sure if the auto mode works proper, keep testing.
v2.2 (2024-04)
- Add low temp heating from @Terminator-NL
- Add temp offset from @Terminator-NL
- Add webserver with authentication
- Made wifi credentials more nice
- Add defrost binary sensor
- Add high precision temperature setting
v2.1 (2024-03)
- Breaking change: Cleaned up conf files
- Add restart button
- Update Home Assistant naming convention
- Enable energy dashboard usage
v2.0 (2024-01)
- Based on absalom-muc v2.8 (September 2023)
- Breaking change in YAML configuration (need to set frame_size in globals)
- Added legacy support configurable from YAML (removing 3d auto and vanes LR control)
This project is licensed under the MIT License - see the LICENSE file for details.
(TL;DR: Do whatever you want with the code, no warranty given, give credit where it's due.)