Files

202 lines
5.6 KiB
Markdown

---
layout: default
title: Troubleshooting
nav_order: 5
---
# Troubleshooting
## Common Issues
### Integration Not Appearing
**Symptoms:** After copying files and restarting, "Heat Pump Monitor" doesn't appear in the integrations list.
**Solutions:**
1. Verify the folder structure is correct:
```
custom_components/
└── rdz_innova_heatpump/
├── __init__.py
├── manifest.json
└── ... other files
```
2. Check file permissions
3. Perform a full restart (not just reload)
4. Check Home Assistant logs for errors
![Check Logs](assets/images/troubleshoot-logs.png)
*Check Home Assistant logs for error messages*
### Connection Failed
**Symptoms:** "Failed to connect" error during setup.
**Solutions:**
1. Verify the URL is accessible from your HA server:
```bash
curl http://YOUR_HEAT_PUMP_IP/installedplugin/com.innova.pdc/VERSION/server/index.php?Action=GetStatus
```
2. Check network connectivity between HA and heat pump
3. Verify the URL format is correct
4. Check if heat pump web interface is responding
### Missing Sensors
**Symptoms:** Some sensors show "Unknown" or "Unavailable".
**Solutions:**
This is often due to firmware version differences. Different versions have different JSON structures.
![Missing Sensors](assets/images/troubleshoot-missing-sensors.png)
*Some sensors may show unavailable due to firmware differences*
## Firmware Version Differences
### Known Differences
| Field | v3.0.49+ | v2.3.x |
|-------|----------|--------|
| ISP (Inlet Setpoint) | `"34.3 °C"` (string with unit) | May not exist |
| SSP (System Setpoint) | Present | May not exist |
| alarm.status | `true/false` | May only have `type` field |
| res (aux heater state) | Present | May not exist |
| sce | Present | May not exist |
### Checking Your Firmware Version
1. Access your heat pump URL in a browser
2. Look for the `sw.V` field in the response:
```json
{
"sw": { "V": "3.0.49" },
...
}
```
### Adapting for Different Firmware
If your firmware has different field names, you may need to modify `__init__.py`.
**Key mappings (line ~122-158):**
```python
"inlet_setpoint_temp": float(status.get("ISP", "0").split()[0]),
"system_setpoint_temp": status.get("SSP"),
"water_temp_t1": status.get("watert1"),
"water_temp_t2": status.get("watert2"),
"dhw_temp_t3": status.get("dhwt3"),
"outdoor_temp_t4": status.get("t4"),
"water_setpoint": status.get("watersetpoint"),
"dhw_setpoint": status.get("dhwsetpoint"),
"is_heating": status.get("heating", False),
"is_working": status.get("pwr", False),
"is_cooling": status.get("cooling", False),
"is_dhw": status.get("san", False),
"is_pump_active": status.get("pump", False),
"is_aux_heater": status.get("res", False),
"is_standby": status.get("standby", False),
```
**To find correct field names:**
1. Save your heat pump's JSON response to a file
2. Compare with the sample files in `jsons/` folder
3. Adjust the field names in `__init__.py` accordingly
## Temperature Reading Issues
### Incorrect Values
**Symptoms:** Temperature shows wrong values (e.g., 0 or very high numbers).
**Solutions:**
1. Check the JSON response format for temperature fields
2. Some fields may be strings with units (e.g., `"34.3 °C"`) that need parsing
3. Verify field names match your firmware version
### ISP Field Parsing Error
The ISP field often contains a string with unit: `"34.3 °C"`
The code parses this with:
```python
float(status.get("ISP", "0").split()[0])
```
If your firmware returns a different format, adjust accordingly.
## Setting Temperature Issues
### Set Temperature Not Working
**Symptoms:** Changing temperature in thermostat card doesn't affect heat pump.
**Solutions:**
1. Check Home Assistant logs for errors
2. Verify the SetParameter endpoint is correct
3. Test manually:
```bash
curl -X POST "http://YOUR_IP/installedplugin/com.innova.pdc/VERSION/server/index.php?Action=SetParameter" \
-d "Key=watersetpoint&Value=45&manual=forever"
```
![Set Temperature Logs](assets/images/troubleshoot-set-temp.png)
*Check logs when setting temperature fails*
## Debug Logging
Enable debug logging for more information:
Add to `configuration.yaml`:
```yaml
logger:
default: info
logs:
custom_components.rdz_innova_heatpump: debug
```
Then restart Home Assistant and check logs.
## Sample JSON Files
The repository includes sample JSON responses for reference:
| File | Firmware | Description |
|------|----------|-------------|
| `jsons/og.json` | v3.0.49 | Full feature set |
| `jsons/bogdan.json` | v2.3.2 | Reduced features |
Compare your heat pump's response with these files to identify differences.
## Getting Help
### Gathering Information
When reporting issues, include:
1. Home Assistant version
2. Heat pump firmware version (from JSON `sw.V` field)
3. Full JSON response from your heat pump (sanitize IP if needed)
4. Relevant log entries
5. Steps to reproduce
### Sharing Your JSON
If you have a different firmware version, consider sharing your JSON response to help improve compatibility:
1. Save your JSON response
2. Remove any sensitive information
3. Submit as an issue or pull request
## FAQ
**Q: How often does the integration poll the heat pump?**
A: Default is every 3 seconds. Configurable during setup or in options.
**Q: Can I use this with other heat pump brands?**
A: This integration is designed for RDZ PDC heat pumps with Innova web interface. Other brands may have different APIs.
**Q: Does this work without internet?**
A: Yes, this is a local polling integration. No cloud services required.
**Q: Why are some fields missing in my version?**
A: Different firmware versions expose different data. Older versions may lack some sensors.