EUROTRONIC-Technology / Spirit-ZigBee

Support for Spirit ZigBee thermostatic device (https://eurotronic.org/produkte/zigbee-heizkoerperthermostat/spirit-zigbee/)
42 stars 2 forks source link

local temperature is showing fron temparatur of room #7

Open vrabac opened 3 years ago

vrabac commented 3 years ago

I own two of these thermostatic valves and have noticed the following problem: The SPZB0001 shows wrong "local_temperature" so setting the value to keep room temperature to 20 degrees Celsius (ºC) (directly on device itself without any home automation) is incorrect and room temperature will be actually 23 degrees Celsius (ºC) .

Hardware:

"model":"SPZB0001"
"vendor":"Eurotronic"}
"genIdentify","hvacThermostat"
"power_source":"Battery"
"software_build_id":"22190930"

I saw someone else also reported this on this URL: https://github.com/dresden-elektronik/deconz-rest-plugin/issues/1098#issuecomment-733627481

I have two more Temperature device in this room and this is what all there device then shows

Zigbee2MQTT:info  2021-01-12 12:06:03: MQTT publish: topic 'zigbee2mqtt/AqaraSchlafzimmer', payload '{"battery":100,"humidity":38.59,"linkquality":99,"pressure":990,"temperature":20.09,"voltage":3015}'
Zigbee2MQTT:info  2021-01-12 12:06:03: MQTT publish: topic 'zigbee2mqtt/AqaraSchlafzimmer', payload '{"battery":100,"humidity":38.18,"linkquality":99,"pressure":990,"temperature":20.09,"voltage":3015}'
Zigbee2MQTT:info  2021-01-12 12:06:03: MQTT publish: topic 'zigbee2mqtt/AqaraSchlafzimmer', payload '{"battery":100,"humidity":38.18,"linkquality":99,"pressure":990,"temperature":20.09,"voltage":3015}'
Zigbee2MQTT:info  2021-01-12 12:07:33: MQTT publish: topic 'zigbee2mqtt/BlitzWolfSchlafzimmer', payload '{"battery":80,"humidity":26.4,"linkquality":0,"temperature":19.6,"voltage":2700}'
Zigbee2MQTT:info  2021-01-12 12:07:33: MQTT publish: topic 'zigbee2mqtt/BlitzWolfSchlafzimmer', payload '{"battery":80,"humidity":30.1,"linkquality":0,"temperature":19.6,"voltage":2700}'
Zigbee2MQTT:info  2021-01-12 12:08:39: MQTT publish: topic 'zigbee2mqtt/TermostatSchlafzimmer', payload '{"battery_low":true,"current_heating_setpoint":5,"eurotronic_error_status":1,"eurotronic_host_flags":{"boost":false,"child_protection":false,"mirror_display":false,"window_open":false},"eurotronic_system_mode":1,"linkquality":36,"local_temperature":17.5,"occupied_heating_setpoint":5,"pi_heating_demand":0,"system_mode":"auto","unoccupied_heating_setpoint":16}'
Zigbee2MQTT:info  2021-01-12 12:08:40: MQTT publish: topic 'zigbee2mqtt/TermostatSchlafzimmer', payload '{"battery_low":true,"current_heating_setpoint":5,"eurotronic_error_status":1,"eurotronic_host_flags":{"boost":false,"child_protection":false,"mirror_display":false,"window_open":false},"eurotronic_system_mode":1,"linkquality":34,"local_temperature":17,"occupied_heating_setpoint":5,"pi_heating_demand":0,"system_mode":"auto","unoccupied_heating_setpoint":16}'
Zigbee2MQTT:info  2021-01-12 12:08:43: MQTT publish: topic 'zigbee2mqtt/TermostatSchlafzimmer', payload '{"battery_low":true,"current_heating_setpoint":5,"eurotronic_error_status":1,"eurotronic_host_flags":{"boost":false,"child_protection":false,"mirror_display":false,"window_open":false},"eurotronic_system_mode":1,"linkquality":36,"local_temperature":17,"occupied_heating_setpoint":5,"pi_heating_demand":0,"system_mode":"auto","unoccupied_heating_setpoint":16}'

I already returned two of these device to Amazon because of these issue (there have had different Firmware version). Is this what could be fixed in Firmware or is this an Hardware issue of the thermostatic valves.

Seems the "local_temperature_calibration" could be updated as written on the link below. But then I have issue as a lot of user with the thermostatic valves, that is just goes offline for zigbee network (all other device in this room are always online)
URL: https://github.com/Koenkk/zigbee-herdsman-converters/issues/734

WolfRevo commented 3 years ago

Honestly I don't think that's incorrect from a logical point of view. This is by design. I coped with that a long time so let me explain.

The "local_temperature" correctly (or maybe incorrectly if the sensor isn't calibrated well) senses the temperature directly around the thermostat itself. I use 6 of them at the moment. If the calibration is not good you need to use (as you already mentioned) the "local_temperature_calibration" to give an offset to correct the locally measured temperature.

What you want is the temperature of your room. But the temperature of your room differs on each single cm². For that I bought some external sensor (like you did) to measure the "real" room temperature at least at the position I think I want to have the "comfort temperature". In sense of home automation and/or thermostats this is not the "local_temperature". This is a remote or external temperature. Unfortunately only the ZWave version of the thermostat supports the direct integration of an external temperature sensor to control the heat setpoint. The Zigbee version does indeed have a flag in the firmware but it isn't used and there is no documented way to send a externally measured temperature to the Zigbee version.

As I don't find any good alternative (Zigbee thermostat without the need of another bridge) I stick with these thermostats and the last days I created a custom generic_thermostat integration for Home Assistant to control my SPZB0001s making use of external temperature sensors (all connected using deconz for Home Assistant). I didn't release this code so far as it is "dirty hacking" IMHO 😉 but if there are several people interested in it I will put in on my github account or anywhere else (e.g. in any of the custom integration git repos) for bringing up my code to be further improved for anybodies use.

bcutter commented 3 years ago

There are e. g. for Home Assistant blueprints which use an external temperature sensor to control the TRV. You could also set the offset value to roughly get to the actual room temperature.

Nothing to blame the TRV for, as WolfRevo said it´s "by design".

LennyPenny commented 3 years ago

couldn't they publish a firmware update to add support for an external temp sensor?