This Home Assistant integration allows you to monitor and control Systemair SAVE and Legacy Residential / D24810 ventilation units through supported device profiles. It supports communication via Modbus TCP, Modbus Serial (RS485), Web API, and experimental HomeSolution / SAVE CONNECT Cloud access.
This integration was tested with SAVE VSR 300 and VSR 500 models. Legacy Residential / D24810 support is available through Modbus only.
Systemair SAVE units are residential ventilation systems designed for heat recovery. This integration brings your ventilation unit into Home Assistant, allowing you to create advanced automations and gain deep insights into your home's air quality and energy consumption.
- Device Profiles: Support for
SAVEandLegacy Residential / D24810register maps. Modbus connections can auto-detect the profile or use manual selection. - Multiple Connection Methods: Support for four different connection types:
- Modbus TCP - SAVE and Legacy Residential / D24810
- Modbus Serial (RS485) - SAVE and Legacy Residential / D24810
- Web API (HTTP) - SAVE via Systemair SAVECONNECT 2.0 IAM module
- HomeSolution / SAVE CONNECT (Cloud) - SAVE via a Systemair cloud account (Experimental)
- Climate Control: Full control over HVAC modes (Off, Fan Only, Heat, Cool), target temperature, fan speed, and preset modes (Auto, Manual, Away, Holiday, etc.).
- Estimated Airflow: Calculates supply and extract airflow from the live fan output percentage and the selected model's maximum airflow, or from a user-configured installed maximum airflow.
- Estimated Power and Energy: Calculates supply fan, extract fan, and total power consumption from live unit outputs and model specifications, then integrates those power estimates over time for energy tracking in Home Assistant.
- Advanced Configuration Controls: Directly configure key operational parameters from Home Assistant, including:
- Temperature Control Mode (Supply air, Room air, etc.)
- Fan Regulation Unit (Manual %, RPM, Pressure, etc.)
- Defrosting Mode (Soft, Normal, Hard)
- Allowing/disallowing manual fan stop.
- Enhanced Diagnostic Sensors: Gain deeper insights into the unit's current state with sensors for:
- Indoor Air Quality (IAQ) Level
- Active Demand Controller (CO2 or RH)
- Current Defrosting State
- Sensor Monitoring: Track key environmental data, including outdoor, supply, and extract air temperatures, as well as relative humidity.
- Device Status: Monitor fan RPM, fan speed percentages, and heater output.
- Diagnostics: Keep an eye on filter lifetime and view detailed alarm statuses.
- A Systemair SAVE or Legacy Residential / D24810 ventilation unit with Modbus TCP access, using SAVECONNECT 1.0 (IAM) or another Modbus TCP-to-RTU converter.
- The module must be connected to the same local network as your Home Assistant instance.
- You need to know the IP address of the module. You can typically find this in your router's client list.
- A Systemair SAVE or Legacy Residential / D24810 ventilation unit with accessible Modbus RS485 port.
- A USB-to-Modbus RS485 converter connected to your Home Assistant server.
- The serial port path (e.g.,
/dev/ttyUSB0on Linux,COM3on Windows). - Communication parameters (usually 19200 baud, 8 data bits, no parity, 1 stop bit).
- A Systemair SAVE ventilation unit equipped with a SAVECONNECT 2.0 module.
- The IAM module must be connected to the same local network as your Home Assistant instance.
- You need to know the IP address of the IAM module. You can typically find this in your router's client list.
- The IAM module's web interface should be accessible via HTTP.
- If the IAM web interface is password-protected, you need to know the device password.
- A Systemair SAVE ventilation unit linked to your HomeSolution / SAVE CONNECT account.
- The email address and password used to sign in to that account.
- The ventilation unit and Home Assistant instance must both have internet access.
- At least one ventilation unit must be visible in the SAVE CONNECT application or HomeSolution web portal.
⚠️ Experimental: This connection uses Systemair's cloud services and depends on their availability. The entities and controls exposed to Home Assistant may vary according to the capabilities reported for your ventilation unit.
- Open HACS and go to "Custom integrations". Enter the URL
https://github.com/AN3Orik/systemair, choose type Integration and click Add. - Restart Home Assistant.
- Go to settings and add new integration. You will find Systemair in the list of available integrations.
- Using the tool of choice open the directory (folder) for your HA configuration (where you find
configuration.yaml). - If you do not have a
custom_componentsdirectory (folder) there, you need to create it. - In the
custom_componentsdirectory (folder) create a new folder calledsystemair. - Download all files from the
custom_components/systemair/directory (folder) in this repository. - Place the files you downloaded in the new directory (folder) you created.
- Restart Home Assistant.
Configuration is done entirely through the Home Assistant user interface.
- Navigate to Settings > Devices & Services.
- Click the + Add Integration button in the bottom right corner.
- Search for "Systemair" and select it.
- Select your connection type:
Configure connection to SAVECONNECT 1.0 or compatible Modbus TCP module:
- Host: The IP address of your Systemair module (e.g.,
192.168.1.50). - Port: The Modbus TCP port for the module. The default is
502. - Slave ID: The Modbus slave ID of the unit. The default is
1. - Device Profile: Select
Auto,SAVE, orLegacy Residential / D24810. Auto-detection is available for Modbus only. - Ventilation Unit Model: Select your specific unit model from the dropdown list. For SAVE units, this is used for power consumption calculations.
Configure connection via USB-to-Modbus RS485 converter:
- Serial Port: The serial port path (e.g.,
/dev/ttyUSB0on Linux,COM3on Windows). - Baud Rate: Communication speed. Default is
19200. - Data Bits: Number of data bits. Options:
7or8(default:8). - Parity: Parity checking. Options:
N(None),E(Even),O(Odd). Default isN. - Stop Bits: Number of stop bits. Options:
1or2(default:1). - Slave ID: The Modbus slave ID of the unit. The default is
1. - Device Profile: Select
Auto,SAVE, orLegacy Residential / D24810. Auto-detection is available for Modbus only. - Ventilation Unit Model: Select your specific unit model from the dropdown list.
Configure connection to SAVECONNECT 2.0 IAM module:
- IP Address: The IP address of your SAVECONNECT 2.0 IAM module (e.g.,
192.168.1.50). - Device Password (Optional): Enter the password used by the SAVECONNECT 2.0 IAM web interface if one is configured.
- Ventilation Unit Model (Optional): You can manually select your unit model, or leave it empty to auto-detect from the device.
Web API uses the SAVE profile only.
Configure the integration using the same account as the SAVE CONNECT application or HomeSolution web portal. A local IP address is not required:
- Email: The email address associated with your HomeSolution / SAVE CONNECT account.
- Password: The password for your HomeSolution / SAVE CONNECT account.
- Ventilation Unit: Select the unit to add from the devices available in your account.
- Ventilation Unit Model: Select the model of the chosen unit. This is used for airflow and power consumption calculations.
HomeSolution uses the SAVE profile only.
⚠️ Experimental: This connection depends on Systemair's cloud service and requires internet access. Entity availability may differ from local Modbus or Web API connections because only capabilities exposed by the cloud service can be used.
- Click Submit. The integration will test the connection and add the Systemair device and its entities to Home Assistant.
You can change the model at any time after installation by navigating to the integration's page and clicking Configure.
After installation, configure these options via Settings > Devices & Services > Systemair > Configure:
| Option | Range | Default | Description |
|---|---|---|---|
| Ventilation Unit Model | — | VSR 300 | Select your unit model; used for SAVE airflow, power, and energy calculations |
| Installed Maximum Supply Airflow | 1-5000 m³/h | Model specification | Optional measured or commissioned maximum supply airflow used to improve the airflow estimate |
| Installed Maximum Extract Airflow | 1-5000 m³/h | Model specification | Optional measured or commissioned maximum extract airflow used to improve the airflow estimate |
| Update Interval | 10-120s | 60s | How often to poll the device for updates |
| Max Registers per Web API Request | 30-125 | 70 | Registers per request (Web API only) |
| Enable Alarm History | True/False | False | Enable fetching alarm history (increases Modbus load) |
⚠️ Note: Some units (e.g., VTR 300) may experience Modbus communication hangs with low update intervals. If you experience connectivity issues, increase the update interval. Lowering below default is at your own risk.
This integration creates a single device for your ventilation unit with the following entities:
Entity availability depends on the selected device profile. The SAVE profile exposes the full entity set. The Legacy Residential / D24810 profile exposes the subset supported by the D24810 register map.
The primary entity for controlling the unit.
- HVAC Modes:
Off,Fan Only,Heat,Cool,Heat/Cool. - Fan Modes:
Low,Medium,High. - Preset Modes:
Auto,Manual,Crowded,Refresh,Fireplace,Away,Holiday. - Controls: Target Temperature, Current Temperature, Current Humidity.
- Temperatures: Outside Air, Supply Air, Extract Air, Overheat Sensor.
- Humidity: Extract Air Relative Humidity.
- Fan Speeds: Supply & Extract Air Fan RPM, Supply & Extract Air Fan Regulated Speed (%).
- Heater: Heater Output Value (%).
- Estimated Airflow: Supply and Extract Airflow (m³/h), calculated as the live fan output percentage multiplied by the selected model's maximum airflow. A separately measured or commissioned maximum can be configured for each side.
- Estimated Power: Supply Fan, Extract Fan, and Total Power (W), calculated from the selected model's fan and heater specifications together with live fan and heater output values.
- Estimated Energy: Supply Fan, Extract Fan, and Total Energy (kWh), accumulated by integrating the corresponding estimated power values over time.
- Diagnostics: Indoor Air Quality, Active Demand Controller, Defrosting State.
- Filter: Filter Remaining Time (in seconds).
- Alarms: Individual sensors for each possible alarm (e.g., Frost Protection, Filter Alarm) showing its current state.
⚠️ Estimated values: Airflow, power, and energy sensors are calculated estimates; they are not direct readings from airflow instruments or electricity meters. Their accuracy depends on the selected model, available live output signals, model specifications, duct-system resistance, filter condition, and installation balancing. Configure measured maximum supply and extract airflow values when available to improve airflow estimates. Do not use these sensors for billing, safety-critical decisions, or professional system commissioning.
- Heat Exchange Active:
onwhen the heat exchanger is running. - Heater Active:
onwhen the heating element is active.
- Eco Mode: A switch to enable or disable the energy-saving Eco mode.
- Free Cooling: A switch to enable or disable the free cooling function.
- Allow Manual Fan Stop: A configuration switch to permit the fans to be turned completely off.
- Time Delays: Entities to configure the duration for timed preset modes like
Holiday,Away, andFireplace.
- Temperature Control Mode: Choose the sensor used for temperature regulation (Supply air, Room air, Extract air).
- Fan Regulation Unit: Select the fan control method (Manual %, RPM, Pressure, etc.).
- Defrosting Mode: Configure the aggressiveness of the defrosting cycle (Soft, Normal, Hard).
To get the best experience, it is recommended to also install the Systemair Lovelace Cards pack, which provides specific way to display some information from integration (example: alarm history).
- Open HACS and go to "Custom integrations". Enter the URL
https://github.com/AN3Orik/systemair-lovelace, choose type Dashboard and click Add. - Find the "Systemair Lovelace Cards" in the list and click Download.
- Follow the instructions to add the card to your dashboard.
⚠️ Important: To use the Alarm History feature in these cards, you must enable theEnable Alarm Historyoption in the integration configuration. Be aware that enabling this option will significantly increase the data read from Modbus (adds ~250 registers per poll) and may cause slowdowns or timeouts on some units.