Hello folks,
I need help to create my own sensors from “raw data” of the connected Homematic accesspoint.
Background: I have several HmIP-eTRV-E radiator thermostats, but these are not yet properly supported by the HA.
Problems arise with the measured temperature, the status of the valve and temporarily the condition of the battery. It would also be nice to be able to access additional information, such as the temperature offset.
If you use the developer tools to output a dump of the config (HomematicIP Cloud: Dump hap config) do all values are filled correctly.
Is there a way to access this “raw data”?
Sample output of one of the thermostats:
"3014F7110000000000000009": {
"automaticValveAdaptionNeeded": false,
"availableFirmwareVersion": "0.0.0",
"connectionType": "HMIP_RF",
"deviceArchetype": "HMIP",
"firmwareVersion": "1.0.10",
"firmwareVersionInteger": 65546,
"functionalChannels": {
"0": {
"busConfigMismatch": null,
"coProFaulty": false,
"coProRestartNeeded": false,
"coProUpdateFailure": false,
"configPending": false,
"controlsMountingOrientation": null,
"deviceCommunicationError": null,
"deviceDriveError": null,
"deviceDriveModeError": null,
"deviceId": "3014F7110000000000000009",
"deviceOperationMode": null,
"deviceOverheated": false,
"deviceOverloaded": false,
"devicePowerFailureDetected": false,
"deviceUndervoltage": false,
"displayContrast": 6,
"dutyCycle": false,
"functionalChannelType": "DEVICE_OPERATIONLOCK",
"groupIndex": 0,
"groups": [
"00000000-0000-0000-0000-000000000020"
],
"index": 0,
"label": "",
"lockJammed": null,
"lowBat": false,
"mountingOrientation": "RIGHT",
"multicastRoutingEnabled": false,
"operationLockActive": false,
"particulateMatterSensorCommunicationError": null,
"particulateMatterSensorError": null,
"powerShortCircuit": null,
"profilePeriodLimitReached": null,
"routerModuleEnabled": false,
"routerModuleSupported": false,
"rssiDeviceValue": -58,
"rssiPeerValue": -63,
"shortCircuitDataLine": null,
"supportedOptionalFeatures": {
"IFeatureBusConfigMismatch": false,
"IFeatureDeviceCoProError": false,
"IFeatureDeviceCoProRestart": false,
"IFeatureDeviceCoProUpdate": false,
"IFeatureDeviceCommunicationError": false,
"IFeatureDeviceDriveError": false,
"IFeatureDeviceDriveModeError": false,
"IFeatureDeviceIdentify": false,
"IFeatureDeviceOverheated": false,
"IFeatureDeviceOverloaded": false,
"IFeatureDeviceParticulateMatterSensorCommunicationError": false,
"IFeatureDeviceParticulateMatterSensorError": false,
"IFeatureDevicePowerFailure": false,
"IFeatureDeviceTemperatureHumiditySensorCommunicationError": false,
"IFeatureDeviceTemperatureHumiditySensorError": false,
"IFeatureDeviceTemperatureOutOfRange": false,
"IFeatureDeviceUndervoltage": false,
"IFeatureMulticastRouter": false,
"IFeaturePowerShortCircuit": false,
"IFeatureProfilePeriodLimit": false,
"IFeatureRssiValue": true,
"IFeatureShortCircuitDataLine": false,
"IOptionalFeatureDeviceErrorLockJammed": false,
"IOptionalFeatureDeviceOperationMode": false,
"IOptionalFeatureDisplayContrast": true,
"IOptionalFeatureDutyCycle": true,
"IOptionalFeatureLowBat": true,
"IOptionalFeatureMountingOrientation": true
},
"temperatureHumiditySensorCommunicationError": null,
"temperatureHumiditySensorError": null,
"temperatureOutOfRange": false,
"unreach": false
},
"1": {
"channelRole": "HEATING_CONTROLLER",
"deviceId": "3014F7110000000000000009",
"functionalChannelType": "HEATING_THERMOSTAT_CHANNEL",
"groupIndex": 1,
"groups": [
"00000000-0000-0000-0000-000000000021",
"00000000-0000-0000-0000-000000000022"
],
"index": 1,
"label": "",
"setPointTemperature": 20.0,
"temperatureOffset": -1.5,
"valveActualTemperature": 20.5,
"valvePosition": 0.225,
"valveState": "ADAPTION_DONE"
}
},
"homeId": "00000000-0000-0000-0000-000000000001",
"id": "3014F7110000000000000009",
"label": "WZ_HzRegl",
"lastStatusUpdate": 1665212342642,
"liveUpdateState": "LIVE_UPDATE_NOT_SUPPORTED",
"manufacturerCode": 1,
"modelId": 425,
"modelType": "HmIP-eTRV-E",
"oem": "eQ-3",
"permanentlyReachable": true,
"serializedGlobalTradeItemNumber": "3014F7110000000000000009",
"type": "HEATING_THERMOSTAT_EVO",
"updateState": "UP_TO_DATE"
},
type or paste code here
Best wishes
Andy