Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
12.11k stars 1.68k forks source link

Saswell SEA801-Zigbee/SEA802-Zigbee - Fully ON or OFF valve #5576

Closed semihselcuk closed 3 years ago

semihselcuk commented 3 years ago

Is your feature request related to a problem? Please describe

I have a few of these TRVs at home and I'm always frustrated when I turn the heater on and TRVs built-in temperature sensors heat up very quickly (since they are right near the radiators) before the rest of room and valves automatically closes to restrict the water flow. That's why I use external temperature sensors. So basically what I am doing, monitoring the external temp. sensor and when room needs to be heated, I am setting the TRV's temperature set point to the max which is 30.

Describe the solution you'd like

During my tests I`ve realized that even though it is set to maximum sometimes it stills closes the valves little bit to restrict water flow but when I go near the TRV and just click the (+) plus symbol one more time LCD changes to "ON" and opens the valve fully for full flow. So I am hoping is there any way to trigger this "ON" functionality via mqtt.

I have already checked what changes on state when click (+) plus symbol to activate "ON" functionality. Pretty much nothing changes "current_heating_setpoint" still 30.0.

Example state: { "anti_scaling": "ON", "away_mode": "OFF", "battery_low": "false", "child_lock": "LOCKED", "current_heating_setpoint": "30.0", "frost_detection": "ON", "linkquality": 39, "local_temperature": "25.6", "local_temperature_calibration": 0, "preset_mode": "none", "system_mode": "heat", "window_detection": "ON" }

Describe alternatives you've considered

I have also tried to set temperature more than 30C. Such as 31C but unfortunately nothing happened.

A few photos

Max (30C) temp. you can set via mqtt. image

After clicking the plus button on the TRV. It activates the "ON" image

Relates to this device: https://www.zigbee2mqtt.io/devices/SEA801-Zigbee_SEA802-Zigbee.html

chrisghz commented 3 years ago

I'm glad I came across this post. I too have been left scratching my head over this. It doesn't seem that there is a command exposed for the on feature which I also would like control over. I can confirm that when the TRV is at 30.0°c the valve is almost half closed, if you indeed press the + once or the middle button with the thermometer, moon and dot symbols on this also activated the "on" function. The off is available if you send set heat to off mqtt command it's just the ON we need. Position would be lovely too! Has anyone else worked out a way around it? They're great little TRV's for the money.

semihselcuk commented 3 years ago

Thanks @chrisghz for your comment. I agree with you this great little TRVs definitely worth the money. Thanks for the tip for turning the OFF functionality. I hope somebody figure out how to turn on the ON functionality as well.

insipiens commented 3 years ago

It doesn't support those options unfortunately, at least when I sniffed it for setting up in Z2M it never showed. I guess its possible the firmware might have changed and it offers this functionality - the manual that came with it would possibly indicate that.

I have a new one on order so will see if its got newer firmware when it arrives etc.

semihselcuk commented 3 years ago

@insipiens thanks for your comment. I do not have ability to sniff MQTT messages so would be great if you could do that.

denbue commented 3 years ago

I'd also highly appreciate this feature! For our heater the temperature difference between 30°C and ON is immense.

chrisghz commented 3 years ago

I'd also highly appreciate this feature! For our heater the temperature difference between 30°C and ON is immense.

Absolutely. I watched the difference in the valve position between 30° and ON and you're right it's about 4-5mm of displacement, which is a fair amount.

github-actions[bot] commented 3 years ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

semihselcuk commented 3 years ago

Has anyone knows how to sniff the MQTT messages in easy way? I have a free CC2351 to use it but don't know where to start.

sorryusernameisalreadytaken commented 3 years ago

Has anyone knows how to sniff the MQTT messages in easy way? I have a free CC2351 to use it but don't know where to start.

https://www.zigbee2mqtt.io/how_tos/how_to_sniff_zigbee_traffic.html Is that to difficult?

semihselcuk commented 3 years ago

@sorryusernameisalreadytaken thanks for sharing the link. I will follow the directions.

denbue commented 3 years ago

Thanks @semihselcuk for looking into it!

chrisghz commented 3 years ago

Yeah thanks for the link. I'd really appreciate if someone could document their experience with doing it this way?

sorryusernameisalreadytaken commented 3 years ago

It doesn't support those options unfortunately, at least when I sniffed it for setting up in Z2M it never showed. I guess its possible the firmware might have changed and it offers this functionality - the manual that came with it would possibly indicate that.

I have a new one on order so will see if its got newer firmware when it arrives etc.

How can I see my firmwares?

github-actions[bot] commented 3 years ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

joschi36 commented 3 years ago

@insipiens Have you got your new TRV? Did you have a chance to sniff the traffic for the valve? @semihselcuk Were you successful with your sniffing tests?

maz3max commented 3 years ago

The TuYa App doesn't support Boost Mode for the SEA802-Zigbee. I tested this device thoroughly.

joschi36 commented 3 years ago

The TuYa App doesn't support Boost Mode for the SEA802-Zigbee. I tested this device thoroughly.

@maz3max Sad to hear, but thank you very much for your work!

tzbuu commented 2 years ago

Hi,

I don't know if there is anyone interested about this topic but I found a way to hack all my 5 SEA801 to full open when I set them to 30degree. I don't know if this work for all SEA 801 but here is what I observed: After I set TRV to 30 degree I noticed that after a while motor was running even it display 30degree. So I was wondering if there is a feature inside to full open when there is a big difference between set and read temperature only . And I was right. So I tested my TRV outside at 10C and it was always open when temperature was set to 30C. So what I did, I soldered a 39K resistor seried with the temperature sensor in order to trick the TRV that there is a high difference between set and read. You can compensate this 39k resistor by changing local_temperature_calibration . You can use other resistor but you need to find out the limit. In my devices, I found an termistor-ntc-100k. You can search for the chart.

Hope this will help you also Here are two photo's to know how to disassembly it.

IMG_1072 IMG_1077

sorryusernameisalreadytaken commented 2 years ago

Hi,

I don't know if there is anyone interested about this topic but I found a way to hack all my 5 SEA801 to full open when I set them to 30degree. I don't know if this work for all SEA 801 but here is what I observed: After I set TRV to 30 degree I noticed that after a while motor was running even it display 30degree. So I was wondering if there is a feature inside to full open when there is a big difference between set and read temperature only . And I was right. So I tested my TRV outside at 10C and it was always open when temperature was set to 30C. So what I did, I soldered a 39K resistor seried with the temperature sensor in order to trick the TRV that there is a high difference between set and read. You can compensate this 39k resistor by changing local_temperature_calibration . You can use other resistor but you need to find out the limit. In my devices, I found an termistor-ntc-100k. You can search for the chart.

Hope this will help you also Here are two photo's to know how to disassembly it.

IMG_1072 IMG_1077

Awesome finding! I will try to check it this week on my Adapters.

Jarikk commented 2 years ago

Hello, Are you able to control the property "local_temperature_calibration"? I have this TRV, Z2M web interface shows that firmware version is 20180727. Zigbee2MQTT version [1.27.2] Coordinator type zStack3x0 (ZigStar Lan stick, CC2652) Coordinator revision 20220219

But I can't control over this property. I tried to change it using the z2m web interface - it won’t change. I tried to follow recommendations from the official documentation page (https://www.zigbee2mqtt.io/devices/SEA801-Zigbee_SEA802-Zigbee.html) and sent the following message using the MQTT Explorer: topic: zigbee2mqtt_livingroom/Livingroom, TRV 1/set payload: {"local_temperature_calibration": 5} but without success.

What I found is that if I set current heating temperature from the lovelace UI climate card, the following message appears in the mqtt broker: topic - zigbee2mqtt_livingroom/Livingroom, TRV 1/set/current_heating_setpoint payload - 27 This doesn't follow official instructions, but this definitely works!

I tried to set local_temperature_calibration accordingly topic: zigbee2mqtt_livingroom/Livingroom, TRV 1/set/local_temperature_calibration payload: 3 but it still doesn't work.

In all these cases I see in the z2m log only messages like these: Debug 2022-09-24 12:29:21Received MQTT message on 'zigbee2mqtt_livingroom/Livingroom, TRV 1/set/current_heating_setpoint' with data '{ "local_temperature_calibration": 3 }' Debug 2022-09-24 12:29:21Publishing 'set' 'current_heating_setpoint' to 'Livingroom, TRV 1'

No any responses from the valve. It doesn't asleep for sure, because it immediately reacts to changes of the property 'current_heating_setpoint'.

I will appreciate for any help!

codeclinic commented 1 month ago

Hi,

I soldered a 39K resistor seried with the temperature sensor in order to trick the TRV that there is a high difference between set and read.

Doesn't this then put the TRV in to a state where the valve is always fully open or fully closed? Thus preventing it from making smoother increases/decreases in temperature?