This custom integration allows you to control and monitor your Hitachi Yutaki heat pump through Home Assistant using a Modbus ATW-MBS-02 gateway.
⚠️ Beta Version - Under Development
This integration is currently in active development and should be considered experimental. While it is functional, you may encounter bugs or incomplete features. Use at your own risk and please report any issues you find.Currently tested only with Yutaki S80 model. Testing with other models is in progress.
- Compatible Models: 2016 and newer Hitachi Yutaki heat pumps
- Tested With: Yutaki S80
- Required Hardware: ATW-MBS-02 Modbus gateway
Important: Models manufactured before 2016 use different Modbus registers and are not compatible.
The integration automatically detects your heat pump model and available features. It creates several devices based on your system configuration:
Entity | Type | Description | Unit |
---|---|---|---|
connectivity | binary_sensor | Indicates if the gateway is connected and responding | - |
Entity | Type | Description | Values/Unit |
---|---|---|---|
power | switch | Main power switch for the heat pump unit | on/off |
operation_mode | select | Operating mode of the heat pump (heating only or heating/cooling depending on configuration) | cool/heat/auto |
Entity | Type | Description | Unit |
---|---|---|---|
outdoor_temp | sensor | Outdoor ambient temperature measurement | °C |
water_inlet_temp | sensor | Water temperature at the heat pump inlet | °C |
water_outlet_temp | sensor | Water temperature at the heat pump outlet | °C |
Entity | Type | Description | Values |
---|---|---|---|
defrost | binary_sensor | Indicates if the unit is currently in defrost mode | on/off |
solar | binary_sensor | Indicates if the solar system is active | on/off |
pump1 | binary_sensor | Indicates if water pump 1 is running | on/off |
pump2 | binary_sensor | Indicates if water pump 2 is running | on/off |
pump3 | binary_sensor | Indicates if water pump 3 is running | on/off |
compressor | binary_sensor | Indicates if the compressor is running | on/off |
boiler | binary_sensor | Indicates if the backup boiler is active | on/off |
dhw_heater | binary_sensor | Indicates if the DHW electric heater is active | on/off |
space_heater | binary_sensor | Indicates if the space heating electric heater is active | on/off |
smart_function | binary_sensor | Indicates if the smart grid function is active | on/off |
Entity | Type | Description | Unit |
---|---|---|---|
water_flow | sensor | Current water flow rate through the system | m³/h |
pump_speed | sensor | Current speed of the water circulation pump | % |
compressor_frequency | sensor | Current operating frequency of the compressor | Hz |
compressor_current | sensor | Current electrical consumption of the compressor | A |
power_consumption | sensor | Total electrical energy consumed by the unit | kWh |
Entity | Type | Description | Unit |
---|---|---|---|
r134a_discharge_temp | sensor | Temperature of the R134a refrigerant at compressor discharge | °C |
r134a_suction_temp | sensor | Temperature of the R134a refrigerant at compressor suction | °C |
r134a_discharge_pressure | sensor | Pressure of the R134a refrigerant at compressor discharge | mbar |
r134a_suction_pressure | sensor | Pressure of the R134a refrigerant at compressor suction | mbar |
r134a_compressor_frequency | sensor | Operating frequency of the R134a compressor | Hz |
r134a_compressor_current | sensor | Electrical current drawn by the R134a compressor | A |
Entity | Type | Description | Values/Unit |
---|---|---|---|
power | switch | Power switch for this heating/cooling circuit | on/off |
otc_calculation_method_heating | select | Method used to calculate the heating water temperature based on outdoor temperature (OTC - Outdoor Temperature Compensation) | disabled/points/gradient/fix |
otc_calculation_method_cooling | select | Method used to calculate the cooling water temperature based on outdoor temperature (OTC - Outdoor Temperature Compensation) | disabled/points/fix |
max_flow_temp_heating_otc | number | Maximum heating water temperature used in outdoor temperature compensation (OTC) calculations | °C (0-80) |
max_flow_temp_cooling_otc | number | Maximum cooling water temperature used in outdoor temperature compensation (OTC) calculations | °C (0-80) |
eco_mode | switch | Enable/disable ECO mode which applies a temperature offset to save energy | on/off |
heat_eco_offset | number | Temperature offset applied in ECO mode for heating | °C (1-10) |
cool_eco_offset | number | Temperature offset applied in ECO mode for cooling | °C (1-10) |
thermostat | switch | Enable/disable the Modbus thermostat function for this circuit | on/off |
target_temp | number | Target room temperature when using the thermostat function | °C (5.0-35.0) |
current_temp | number | Current measured room temperature | °C (0.0-50.0) |
Entity | Type | Description | Values/Unit |
---|---|---|---|
power | switch | Power switch for domestic hot water production | on/off |
boost | switch | Temporarily boost DHW production | on/off |
high_demand | switch | Enable high demand mode for increased DHW production | on/off |
temperature | number | Target temperature for domestic hot water | °C (0-80) |
antilegionella | switch | Enable/disable periodic high temperature treatment to prevent legionella | on/off |
antilegionella_temp | number | Target temperature for anti-legionella treatment | °C (0-80) |
Entity | Type | Description | Values/Unit |
---|---|---|---|
power | switch | Power switch for swimming pool heating | on/off |
temperature | number | Target temperature for swimming pool water | °C (0-80) |
-
Add this repository to HACS:
- Open HACS in Home Assistant
- Click on "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add the repository URL:
https://github.com/alepee/hass-hitachi_yutaki
- Select category: "Integration"
- Click "Add"
-
Install the integration through HACS:
- Click on "Integrations"
- Search for "Hitachi Yutaki"
- Click "Download"
- Restart Home Assistant
- Copy the
custom_components/hitachi_yutaki
directory to your Home Assistantcustom_components
directory - Restart Home Assistant
- Go to Settings -> Devices & Services
- Click "Add Integration"
- Search for "Hitachi Yutaki"
- Fill in the required information:
- Modbus gateway IP address or serial port
- Modbus slave ID (default: 1)
- Port (default: 502 for TCP)
- Scan interval (seconds)
hitachi_yutaki/
├── .github/
│ └── workflows/ # CI/CD workflows
├── custom_components/ # The actual integration
│ └── hitachi_yutaki/
├── scripts/ # Development scripts
│ ├── setup_dev.sh # Linux/Mac setup
│ └── setup_dev.bat # Windows setup
└── tests/ # Test files
This repository includes a dev container configuration, which provides a fully configured development environment. To use it:
- Install Visual Studio Code and the Dev Containers extension
- Clone this repository
- Open the repository in VS Code
- When prompted to "Reopen in Container", click "Yes"
- Or click F1, type "Dev Containers: Rebuild and Reopen in Container"
The container includes:
- All required development dependencies
- Pre-configured development tools
- Pre-commit hooks
- A ready-to-use Home Assistant development instance
- Clone the repository:
git clone https://github.com/alepee/hass-hitachi_yutaki.git
cd hitachi_yutaki
- Set up the development environment:
# Linux/MacOS
chmod +x scripts/setup_dev.sh
./scripts/setup_dev.sh
# Windows
scripts\setup_dev.bat
- Run tests:
pytest
- Run Home Assistant with your development version:
hass -c config
The project uses pre-commit hooks to ensure code quality. They are automatically installed when you set up the development environment, but you can also install them manually:
pre-commit install
- Fork the repository
- Create a new branch for your feature
- Write tests for your changes
- Ensure all tests pass and pre-commit hooks are satisfied
- Submit a pull request
This project is under the MIT License. See the LICENSE file for details.
This integration was developed by Antoine Lépée and is not affiliated with Hitachi Ltd.
For bugs and feature requests, please use the GitHub issues page.