A Home Assistant integration that collects HVAC sensor data for thermal learning and optimization.
- 5-minute sensor collection: Indoor temperature, humidity, HVAC state, and target temperature
- Daily thermal rate calculation: Heating, cooling, and natural drift rates calculated from your HVAC data
- Privacy-focused: Uses anonymous IDs, no personal information collected
- Lightweight: Simple data collection with minimal impact on Home Assistant performance
- Open HACS in Home Assistant
- Go to "Integrations"
- Click the "+" button
- Search for "Curve Control Data Collection"
- Click "Install"
- Restart Home Assistant
- Download the latest release
- Copy
custom_components/curve_control_datato your Home Assistantcustom_componentsdirectory - Restart Home Assistant
- Go to Settings → Devices & Services
- Click "Add Integration"
- Search for "Curve Control Data Collection"
- Configure the required entities:
- Temperature Entity: Sensor that reports current indoor temperature
- HVAC Entity: Climate entity that shows HVAC action (heating/cooling/off)
- Thermostat Entity: Climate entity for target temperature
- Humidity Entity (optional): Indoor humidity sensor
- Weather Entity (optional): Weather integration for forecasts
- Data Collection: Every 5 minutes, collects current temperature, humidity, HVAC state, and target temperature
- Batching: Sends data in 1-hour batches to minimize network requests
- Daily Processing: At midnight, sends daily summary and receives calculated thermal rates
- Thermal Learning: Creates Home Assistant sensors with calculated rates:
sensor.curve_control_heating_rate- °F/hour heating ratesensor.curve_control_cooling_rate- °F/hour cooling ratesensor.curve_control_natural_rate- °F/hour natural drift rate
- Uses anonymous UUIDs - no personal information collected
- Only HVAC performance data is transmitted
- Data is used solely for thermal learning calculations
- No user identification or location tracking
The integration creates sensors that can be used by other automations:
# Example automation using thermal rates
automation:
- alias: "Optimize heating based on learned rates"
trigger:
platform: state
entity_id: sensor.curve_control_heating_rate
action:
service: climate.set_temperature
data:
temperature: "{{ (states('sensor.target_temp') | float) + (states('sensor.curve_control_heating_rate') | float * 0.1) }}"- No thermal rates calculated: Ensure HVAC system runs regularly and check logs for data collection
- Integration won't load: Verify all required entities exist and are accessible
- Data not sending: Check internet connectivity and backend service status
- Curve Control HA Integration - Main HVAC optimization integration