esphome-mitsubishiheatpump/README.md

56 lines
2.0 KiB
Markdown
Raw Normal View History

2020-03-11 16:36:56 +00:00
# esphome-mitsubishiheatpump
ESPHome Climate Component for Mitsubishi Heatpumps using direct serial connection
2020-03-11 17:22:35 +00:00
Wirelessly control your Mitsubishi Comfort HeatPump with an ESP8266 or ESP32 using the [ESPHome](https://esphome.io) framework.
## Features
* Instant feedback of command changes via RF Remote to HomeAssistant or MQTT.
* Direct control without the remote.
* Uses the [SwiCago/HeatPump](https://github.com/SwiCago/HeatPump) Arduino libary to talk to the unit directly via the internal J105 header.
* NOTE: REQUIRES SEVERAL FIXES - SEE https://github.com/SwiCago/HeatPump/pull/155
## Usage
### Build a control circuit as detailed in the SwiCago/HeatPump README.
You can use either an ESP8266 or an ESP32.
### Configure your ESPHome device with YAML
Note: this component DOES NOT use the ESPHome `uart` component, as it requires
direct access to a hardware UART via the Arduino `HardwareSerial` class. The
Mitsubishi Heatpump uses an untypical serial port setting, which are not
implemented in any of the existing software serial libraries.
There's currently no way to guarantee access to a hardware UART nor retrieve
the `HardwareSerial` handle within the ESPHome framework.
Create an ESPHome YAML configuration with the following sections:
* `esphome: libraries:`
* `climate:` - set up a custom climate, change the Serial port as needed.
* ESP8266 only: `logger: baud\_rate: 0` - disables serial port logging on sole hardware UART
```yaml
esphome:
libraries:
- https://github.com/geoffdavis/HeatPump#init_fix
- https://github.com/geoffdavis/esphome-mitsubishiheatpump
# Enable logging
logger:
# ESP8266 ONLY:
# disable serial port logging, as the HeatPump component needs
# the sole hardware UART on the ESP8266
baud_rate: 0
climate:
- platform: custom
lambda: |-
auto my_heatpump = new MitsubishiHeatPump(&Serial);
App.register_component(my_heatpump);
return {my_heatpump};
climates:
- name: "My Heat Pump"
```
Note that you can change the &