LIDL PARKSIDE Smart Watering Timer issue

Just got this water switch from LIDL and found out that it has a default timer that turns off the switch after 1 minute.
Apparently if you have the LIDL Hub this can be set to a bigger time out using the LIDL app, but instead of having to buy the HUB device was just wondering if this can be improved in the Zigbee Binding.
Any clues or maybe a workaround?

Product name: PARKSIDE Smart Watering Timer PSBZS A1
Manufacturer: _TZE200_htnnfasr
Model identifier: TS0601.

Also found this discussion about the issue on Github , not sure if it helps clear out what is happening.

I’m not really sure how this works - can you for starters provide the XML file for this device - it will be in the userdata/zigbee folder (folder names will be dependant on your coordinator - the file name will depend on the address of the device).

sure, here you go:
847127FFFE17CB50.xml (34.7 KB)

1 Like

Thanks.

So, for my understanding… This device should present an On/Off switch in openHAB - correct? And what happens if you manually turn this switch on and off - does it control the switch? Does it then turn off after 60 seconds?

If you send On, then 30 seconds later, send On again, when does the switch turn off after 1 minute from the first ON command, or 1 minute from the second ON command? ie, is the timer retriggerable?

If it’s the timer can be retrigerred, then I’d suggest to simply do this using a rule - ie send the ON command every X seconds, then when you want to stop, send the OFF command.

From a very quick look in the deconz issue, it seems it might be possible to use a timer feature of zigbee, but this isn’t easy to use in openHAB as it’s not possible to set supplementary information when sending a command.

I hope this helps - but if I misunderstand the way the device works, feel free to correct me :slight_smile:

Yes its just a switch, if I turn ON or OFF it works normally. If I turn ON after 60 seconds the valve switch turns off, BUT, it doesnt update the status to OFF, it keeps showing the ON status, even though the valve has switched OFF

Since the status doesnt change to OFF even though it automatically changes to OFF due to the timer, I cannot retrigger, I need to basically change to OFF on openhab and again to ON to turn it back on

I think I can still make a rule to retrigger, regardless, but its just not the best way to do things I guess, specially because I use the gcal binding to schedule things for specific times to operate.

Ideally this is more of a setting that would need to be exposed, so we could just setup the timer on Paper UI thing.

Ok, I guess that the device doesn’t send out status reports. There is probably not a lot that can be done to fix this. If the device is always listening, which seems to be the case, then you could poll - either by changing the polling period, or sending the REFRESH command in a rule. The latter is likely to be better - ie only polling, from the rule, when you think that the device is being operated. Otherwise it might impact on the battery life (it seems it doesn’t report battery from what I can tell).

But if you use a rule, you should still be able to send the ON command - the binding will not stop you sending an ON command even if the device is already ON.

If this is the auto off time, and this attribute is supported by the device, then the binding will provide you the ability to change this. This is limited to a maximum time of 6000 seconds.

I was not aware this could be changed, still on OH 2.5, where can I find this auto off time? Maybe it could work…

The configuration is on the channel, and unfortunately I think there was a bug in PaperUI that meant it doesn’t allow configuration of channel configuration so it is probably not configurable in OH2.5. You might be able to find a way to do it through the REST API, but that would likely be painful.

I’m also assuming that this is the configuration attribute that the device supports - I will try and find some time to look through the long deconz thread to see what it says later.

Thanks Chris
I hope this has a better solution, because I just made a rule to workaround this issue and the timer doesn’t really reset, which means it always switch flicks off and on every minute, so I guess ill have to keep changing batteries very often to keep this going…:frowning:

I couldn’t find anything in the deconz thread that says that the timer can be changed. I didn’t read it all - it’s very long - but I see other people using Home Assistant rules do effectively do the same thing in the rule by sending multiple 60 second commands.

If I’ve missed something that shows how to change the timer, please feel free to point me more directly at this and I will take a look.

Hi Chris
Seems like the good stuff on that thread started a couple days ago, they reached a conclusion that they need to send a ON command coupled with an ONTime value otherwise the valve will turn off at a default time of 60 seconds. They managed to send a command with the time and the valve kept on longer than 60 seconds, but just didnt went off at the set timer, so they are still trying to figure out what went wrong but it seems they are actively on it, so maybe we just need to keep an eye on their progress in the next days.

Here is the link to that point of the thread

Not sure if this is of any value for people around, I’ve got two of the valves installed and solved the timeout problem with a simple rule:

var Timer waterTimer1 = null
var Timer waterTimer2 = null

rule "Continuous water flow 1"
when
    Item Ventil1_OnOff changed to ON
then
    logInfo("continuousWaterFlow", "Rule triggered...")
    if (waterTimer1 !== null) {
        logInfo("continuousWaterFlow", "...but timer already intitialised. Rescheduling now.")
        waterTimer1.reschedule(now);
        return;
    }

    waterTimer1 = createTimer(now, [ |
        if (Ventil1_OnOff.state == ON) {
            Ventil1_OnOff.sendCommand("ON")
            logInfo("continuousWaterFlow", "Sent 'on' command to valve, rescheduling timer. ")

            waterTimer1.reschedule(now.plusSeconds(40))
        } else {
            logInfo("continuousWaterFlow", "State switched to 'off' stopped sending commands")
            waterTimer1.cancel()
        } 
    ])
end

rule "Continuous water flow 2"
when
    Item Ventil2_OnOff changed to ON
then
    logInfo("continuousWaterFlow", "Rule triggered...")
    if (waterTimer2 !== null) {
        logInfo("continuousWaterFlow", "...but timer already intitialised. Rescheduling now.")
        waterTimer2.reschedule(now);
        return;
    }

    waterTimer2 = createTimer(now, [ |
        if (Ventil2_OnOff.state == ON) {
            Ventil2_OnOff.sendCommand("ON")
            logInfo("continuousWaterFlow", "Sent 'on' command to valve, rescheduling timer. ")

            waterTimer2.reschedule(now.plusSeconds(40))
        } else {
            logInfo("continuousWaterFlow", "State switched to 'off' stopped sending commands")
            waterTimer2.cancel()
        } 
    ])
end

Based on this: Design Pattern: Looping Timers

With that rule in a rules file, I am able to just switch the valves like there is no timeout.

Any hints for further improvement apreciated! :slight_smile:

1 Like

This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.