69 lines
2.6 KiB
Markdown
69 lines
2.6 KiB
Markdown
# esphome-mitsubishiheatpump
|
|
ESPHome Climate Component for Mitsubishi Heatpumps using direct serial connection
|
|
|
|
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.
|
|
|
|
### Clone this repository into your ESPHome configuration directory
|
|
|
|
This repository needs to live in your ESPHome configuration directory, as it doesn't work correctly when used as a Platform.IO library, and there doesn't seem to be an analog for that functionality for esphome code.
|
|
|
|
On Hass.IO, you'll want to do something like:
|
|
|
|
* Change directories to your esphome configuration directory.
|
|
* `mkdir -p src`
|
|
* `cd src`
|
|
* `git clone https://github.com/geoffdavis/esphome-mitsubishiheatpump.git`
|
|
|
|
### 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 the
|
|
sole ESP8266 hardware UART
|
|
|
|
```yaml
|
|
esphome:
|
|
libraries:
|
|
#- SwiCago/HeatPump
|
|
- https://github.com/geoffdavis/HeatPump#init_fix
|
|
includes:
|
|
- src/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
|
|
# ESP32 only - change &Serial to &Serial1 or &Serial2 and remove the
|
|
# logging:baud_rate above to allow the built-in UART0 to function for
|
|
# logging.
|
|
lambda: |-
|
|
auto my_heatpump = new MitsubishiHeatPump(&Serial);
|
|
App.register_component(my_heatpump);
|
|
return {my_heatpump};
|
|
climates:
|
|
- name: "Den Mini-Split Heat Pump"
|
|
```
|