From 40215b6519e07131726c8b3b081b94547372d7e1 Mon Sep 17 00:00:00 2001 From: matmai Date: Fri, 7 Mar 2025 11:23:45 +0100 Subject: [PATCH] [shelly] Improve smoke sensor wake-up period handling (#18309) * [shelly] increase smoke sensor regular update period by half an hour (#17767) Signed-off-by: Matthias Maier --- .../binding/shelly/internal/handler/ShellyBaseHandler.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBaseHandler.java b/bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBaseHandler.java index 77b184792f..a663c8b595 100644 --- a/bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBaseHandler.java +++ b/bundles/org.openhab.binding.shelly/src/main/java/org/openhab/binding/shelly/internal/handler/ShellyBaseHandler.java @@ -356,7 +356,11 @@ public abstract class ShellyBaseHandler extends BaseThingHandler tmpPrf.updatePeriod = "m".equalsIgnoreCase(getString(tmpPrf.settings.sleepMode.unit)) ? tmpPrf.settings.sleepMode.period * 60 // minutes : tmpPrf.settings.sleepMode.period * 3600; // hours - tmpPrf.updatePeriod += 60; // give 1min extra + if (tmpPrf.isSmoke) { + tmpPrf.updatePeriod += 1800; // for smoke sensor give 30min extra + } else { + tmpPrf.updatePeriod += 60; // give 1min extra + } } else if (tmpPrf.settings.coiot != null && tmpPrf.settings.coiot.updatePeriod != null) { // Derive from CoAP update interval, usually 2*15+10s=40sec -> 70sec tmpPrf.updatePeriod = Math.max(UPDATE_SETTINGS_INTERVAL_SECONDS,