All functions are not yet tested.
A comprehensive Home Assistant custom integration for Aduro H1, H2, H5 [H3, H4 and H6 unconfirmed] hybrid pellet stoves.
✨ Complete Control
- Start/Stop stove remotely
- Adjust heat level (1-3)
- Set target temperature (5-35°C)
- Toggle between operation modes
🔥 Smart Operation
- Automatic retry on command failures
- Fast polling during mode changes
- External change detection (sync with mobile app)
- Wood mode support with automatic resume
🌡️ Temperature Monitoring & Alerts
- High smoke temperature alert (300-450°C, configurable)
- Low wood mode temperature alert (20-200°C, configurable)
- Customizable duration of time before alert (1-30 minutes)
- Real-time temperature monitoring with hysteresis
- Prevent dangerous overheating for all modes and fire extinction during wood mode
📊 Comprehensive Monitoring
- 42+ sensors (temperatures, power, pellets, consumption, alerts)
- Real-time state and status tracking
- Operating time statistics
- Network information (WiFi signal, IP address)
🌲 Pellet Management
- Pellet level tracking (amount and percentage)
- Consumption monitoring (daily, monthly, yearly, total)
- Low pellet notifications
- Automatic shutdown at critical level
- Refill counter and cleaning tracker
⏱️ Smart Features
- Ignition timer countdowns
- Mode transition tracking
- Change-in-progress detection
- Automatic state synchronization
🌍 Multi-Language Support
- English
- Swedish (Svenska)
- Easy to add more languages
Only Aduro H1, H2 & H5 have been tested.
Asumptions have been made for how the following stoves work, and are not yet confirmed. If you can confirm that the integration work for a stove, please let me know via GitHub Issues.
- Aduro H3
- Aduro H4
- Aduro H6
- Home Assistant 2023.1 or newer
- Aduro hybrid stove with network connectivity
- Stove serial number and PIN code
- Open HACS in Home Assistant
- Click on "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add
https://github.com/NewImproved/Aduroas a custom repository - Category: Integration
- Click "Add"
- Search for "Aduro Hybrid Stove"
- Click "Download"
- Restart Home Assistant
- Download the latest release from GitHub releases
- Extract the
adurofolder to yourcustom_componentsdirectory - Restart Home Assistant
- Go to Settings → Devices & Services
- Click "+ ADD INTEGRATION"
- Search for "Aduro Hybrid Stove"
- Enter only 3 required details:
- Serial Number: Your stove's serial number
- PIN Code: Your stove's PIN code
- Stove Model: Select your model (H1-H6)
The integration will automatically:
- Discover your stove on the network
- Create all entities
- Use sensible defaults for all settings
To customize settings after setup:
- Go to Settings → Devices & Services
- Find Aduro Hybrid Stove
- Click "CONFIGURE"
- Choose from three configuration areas:
- Pellet container capacity (kg)
- Low pellet notification level (%)
- Auto-shutdown level (%)
- Enable/disable automatic shutdown
- High Smoke Temperature Alert
- Threshold: 300-450°C (default: 370°C)
- Duration threshold: 1-30 minutes (default: 30 seconds)
- Alerts when smoke temperature is dangerously high
- Low Wood Mode Temperature Alert
- Threshold: 20-200°C (default: 175°C)
- Duration threshold: 1-30 minutes (default: 5 minutes)
- Alerts when wood fire might be going out
- Auto-resume after wood mode
- Status - Main status (Operating II, Stopped, etc.)
- Status Detail - Detailed status (with timers for i.e. start up)
- State - Raw state number
- Substate - Raw substate number
- Heat Level - Current heat level (1-3)
- Heat Level Display - Roman numerals (I, II, III)
- Operation Mode - Current mode (0=Heat Level, 1=Temperature, 2=Wood)
- Room Temperature - Current room/boiler temperature
- Target Temperature - Temperature setpoint
- Smoke Temperature - Exhaust temperature
- Shaft Temperature - Shaft temperature
- High Smoke Temperature Alert - Alert status with attributes
alert_active- Boolean alert statecurrent_temp- Current smoke temperaturethreshold_temp- Configured thresholdthreshold_duration_seconds- Alert duration
- Low Wood Temperature Alert - Alert status with attributes
alert_active- Boolean alert statein_wood_mode- Wood mode statuscurrent_temp- Current shaft temperaturethreshold_temp- Configured thresholdthreshold_duration_seconds- Alert duration
- Power Output - Power in kW
- Pellets Remaining - Remaining pellets (kg)
- Pellets Percentage - Remaining pellets (%)
- Pellets Consumed - Consumed since last refill (kg)
- Refill Counter - Refills since cleaning
- Today's Consumption - Current day (kg)
- Yesterday's Consumption - Previous day (kg)
- This Month's Consumption - Current month (kg)
- This Year's Consumption - Current year (kg)
- Total Consumption - Lifetime consumption (kg)
- Stove IP Address - Current IP
- WiFi Network - Connected SSID
- WiFi Signal Strength - RSSI in dBm
- MAC Address - Network MAC
- Firmware - Version and build
- Total Operating Time - Lifetime runtime
- Auger Operating Time - Auger runtime
- Ignition Operating Time - Ignition runtime
- Change In Progress - Boolean
- Display Format - Formatted display text
- Display Target - Current target value
- External Change Detected - App changes
- Power - Start/Stop the stove
- Auto Shutdown at Low Pellets - Enable automatic shutdown
- Auto Resume After Wood Mode - Enable automatic resume
- Heat Level - Set heat level (1-3)
- Target Temperature - Set temperature (5-35°C)
- Pellet Capacity - Configure hopper capacity (8-25 kg)
- Low Pellet Notification Level - Warning threshold (%)
- Auto-Shutdown Pellet Level - Shutdown threshold (%)
- High Smoke Temp Alert Threshold - Alert threshold (300-450°C)
- High Smoke Temp Alert Duration threshold - Alert duration threshold (60-1800 seconds)
- Low Wood Temp Alert Threshold - Alert threshold (20-200°C)
- Low Wood Temp Alert Duration threshold - Alert duration threshold (60-1800 seconds)
- Refill Pellets - Mark pellets as refilled
- Clean Stove - Reset refill counter after cleaning
- Toggle Mode - Switch between Heat Level/Temperature modes
- Resume After Wood Mode - Manual resume from wood mode
- Force Auger - Manually run auger (advanced)
All services are available under the aduro domain:
# Start the stove
service: aduro.start_stove
# Stop the stove
service: aduro.stop_stove
# Set heat level (1-3)
service: aduro.set_heatlevel
data:
heatlevel: 2
# Set target temperature (5-35°C)
service: aduro.set_temperature
data:
temperature: 22
# Set operation mode (0=Heat Level, 1=Temperature, 2=Wood)
service: aduro.set_operation_mode
data:
mode: 1
# Toggle between Heat Level and Temperature modes
service: aduro.toggle_mode# Resume pellet operation after wood mode
service: aduro.resume_after_wood_mode
# Force auger to run
service: aduro.force_auger
# Set custom parameter (advanced)
service: aduro.set_custom
data:
path: "auger.forced_run"
value: 1automation:
- alias: "Start Stove in Morning"
trigger:
- platform: time
at: "06:00:00"
condition:
- condition: numeric_state
entity_id: sensor.outdoor_temperature
below: 10
action:
- service: aduro.start_stove
- service: aduro.set_heatlevel
data:
heatlevel: 2automation:
- alias: "Adjust Heat by Weather"
trigger:
- platform: numeric_state
entity_id: sensor.outdoor_temperature
below: 0
action:
- service: aduro.set_heatlevel
data:
heatlevel: 3automation:
- alias: "Low Pellet Alert"
trigger:
- platform: numeric_state
entity_id: sensor.aduro_h2_pellets_percentage
below: 20
action:
- service: notify.mobile_app
data:
title: "Stove Alert"
message: "Pellets low: {{ states('sensor.aduro_h2_pellets_percentage') }}%"automation:
- alias: "Night Mode Temperature"
trigger:
- platform: time
at: "22:00:00"
action:
- service: aduro.set_temperature
data:
temperature: 18automation:
- alias: "High Smoke Temperature Alert"
trigger:
- platform: state
entity_id: sensor.aduro_h2_high_smoke_temperature_alert
to: "Alert"
action:
- service: notify.mobile_app
data:
title: "⚠️ Stove High Temperature Alert"
message: >
Smoke temperature too high!
Current: {{ state_attr('sensor.aduro_h2_high_smoke_temperature_alert', 'current_temp') }}°C
Threshold: {{ state_attr('sensor.aduro_h2_high_smoke_temperature_alert', 'threshold_temp') }}°C
data:
priority: highautomation:
- alias: "Low Wood Temperature Alert"
trigger:
- platform: state
entity_id: sensor.aduro_h2_low_wood_temperature_alert
to: "Alert"
action:
- service: notify.mobile_app
data:
title: "🔥 Add Wood to Stove"
message: >
Temperature too low in wood mode!
Current: {{ state_attr('sensor.aduro_h2_low_wood_temperature_alert', 'current_temp') }}°C
The fire may be going out.
data:
priority: highautomation:
- alias: "Stove Temperature Alert Cleared"
trigger:
- platform: state
entity_id: sensor.aduro_h2_high_smoke_temperature_alert
from: "Alert"
to: "OK"
action:
- service: notify.mobile_app
data:
title: "✅ Stove Alert Cleared"
message: "Smoke temperature has returned to normal"- Ensure stove is powered on and connected to network
- Check that serial number and PIN are correct
- Check firewall settings
- Check Home Assistant logs for errors
- Ensure stove is not in wood mode (state 9 or 14)
- Try restarting the integration
- Verify smoke and shaft temperature sensors are working
- Check that alert thresholds are appropriate for your stove
- Review logs for temperature detection messages
- Default thresholds (370°C for high smoke, 175°C for low wood) may need adjustment
If you see "Unknown State X" in sensors:
- Check Home Assistant logs for warnings
- Note the state and substate number
- Note the state and substate in aduro hybrid application
- See ADDING_STATES.md for how to add it
- Report it via GitHub Issues
Add to configuration.yaml:
logger:
default: info
logs:
custom_components.aduro: debugIf you're migrating from the manual YAML configuration:
- Backup your current configuration
- Remove old automations and files using
python_script.exec - Remove old template sensors
- Install this integration
- Configure via UI
- Update automations to use new service calls
- Test all functionality
The integration preserves all functionality:
- ✅ Mode change tracking with retries
- ✅ External change detection
- ✅ Pellet tracking and notifications
- ✅ Timer countdowns
- ✅ Auto start/stop detection
- ✅ Wood mode support
- ✅ Temperature monitoring and alerts
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
To add a new language:
- Copy
translations/en.jsontotranslations/[lang].json - Translate all text values
- Submit a pull request
If your stove reports states not in the integration:
- Check logs for state warnings
- Create a GitHub issue with:
- State number
- Stove model
- The state and substate number
- The corresponding state and substate in aduro hybrid application
See ADDING_STATES.md for details.
- For Alpha-releases: test that all functions are working as intended.
- Update integration with all relevant translations between state/substates-numbers and their related text string.
- Get confirmation/information about the remaining Aduro hybrid stoves.
- Estimation of pellets consumption over time, depending on temperature settings, heat level settings, outside temperature and other relevant factors to estimate a time for when the stove have consumed all pellets.
- External and wireless temperature sensor is available as an accessory. Could it be possible to use other temperature sensors and send the information to the stove via Home Assistant?
A custom and optional Lovelace card for controlling Aduro Hybrid Stoves in Home Assistant can be found here: Aduro Stove Card
- Real-time Status Display - Shows current stove state and operation mode
- Temperature & Heat Level Control - Easy +/- buttons for quick adjustments
- Pellet Monitoring - Visual pellet level indicator with refill counter
- Power Control - Start/stop the stove with a single tap
- Mode Toggle - Switch between Heat Level and Temperature modes
- Auto-Resume & Auto-Shutdown - Configure automatic behavior for wood mode and low pellet levels
- Maintenance Tracking - Quick access to pellet refill and stove cleaning buttons
- Change Indicator - Visual feedback when stove settings are updating
This integration is built upon the excellent work of:
- Clément Prévot - Creator of pyduro, the Python library for controlling Aduro hybrid stoves
- SpaceTeddy - Creator of Home Assistant Aduro stove control scripts
This project is licensed under the MIT License - see the LICENSE file for details.
This project incorporates code from:
- pyduro by Clément Prévot (MIT License)
- homeassistant_aduro_stove_control_python_scripts by SpaceTeddy (GPL-2.0 license)
See NOTICE file for full third-party attribution details.
This is an unofficial integration and is not affiliated with or endorsed by Aduro. Use at your own risk.
Enjoy your smart Aduro stove! 🔥
