Thank you for the quick fix!
Crille
Posts
-
[Solved] DynamicGroupController updating members issue -
[Solved] DynamicGroupController updating members issueLog level 5:
[latest-26193]2026-08-08T14:48:43.605Z <Rule:INFO> MONITOR - Rörelse hallen (rule-krnbos9q in Larm) starting rule state evaluation; because predicate-state-changed Predicate#rule-krnbos9q/trig [latest-26193]2026-08-08T14:48:45.300Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from SecuritySensor#vera>device_10095 by SecuritySensor#vera>device_10095 [latest-26193]2026-08-08T14:48:45.500Z <DynamicGroupController:INFO> DynamicGroupController#groups processing pending updates for Array(1) ["OKforLarm"] [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:519> DynamicGroupController#groups _update acquiring mutex for updates to Array(1) ["OKforLarm"] [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:522> DynamicGroupController#groups mutex acquired; going to work [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:371> DynamicGroupController#groups updating OKforLarm [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:399> DynamicGroupController#groups selecting entities for Group#groups>OKforLarm with Array(2) [{ "include_controller": "vera" }, { "include_capability": "door_sensor" }] [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:558> DynamicGroupController#groups _select group OKforLarm criteria Array(2) [{ "include_controller": "vera" }, { "include_capability": "door_sensor" }] [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:589> DynamicGroupController#groups handling group OKforLarm selector include_controller, val=Array(1) ["vera"], first=true, set has 0 [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:589> DynamicGroupController#groups set=Map(0) { } [latest-26193]2026-08-08T14:48:45.501Z <DynamicGroupController:5:DynamicGroupController.js:593> DynamicGroupController#groups group OKforLarm include_controller vera [latest-26193]2026-08-08T14:48:45.502Z <DynamicGroupController:5:DynamicGroupController.js:754> DynamicGroupController#groups group OKforLarm after criterion include_controller, set contains 91 [latest-26193]2026-08-08T14:48:45.502Z <DynamicGroupController:5:DynamicGroupController.js:589> DynamicGroupController#groups handling group OKforLarm selector include_capability, val=Array(1) ["door_sensor"], first=false, set has 91 [latest-26193]2026-08-08T14:48:45.502Z <DynamicGroupController:5:DynamicGroupController.js:589> DynamicGroupController#groups set=Map(91) {"vera>controller_all": Group(Group#vera>controller_all), "vera>system": System(System#vera>system), "vera>device_1": Entity(Entity#vera>device_1), "vera>device_10004": Entity(Entity#vera>device_10004), "vera>device_10006": Entity(Entity#vera>device_10006), "vera>device_10016": Entity(Lock#vera>device_10016), "vera>device_10027": Entity(Entity#vera>device_10027), "vera>device_10028": Entity(Entity#vera>device_10028), "vera>device_10032": Entity(Lock#vera>device_10032), "vera>device_10048": Entity(Switch#vera>device_10048), "vera>device_10050": Entity(Entity#vera>device_10050), "vera>device_10064": Entity(Switch#vera>device_10064), "vera>device_10065": Entity(Switch#vera>device_10065), "vera>device_10068": Entity(Entity#vera>device_10068), "vera>device_10069": Entity(Entity#vera>device_10069), "vera>device_10070": Entity(Entity#vera>device_10070), "vera>device_10071": Entity(Entity#vera>device_10071), "vera>device_10076": Entity(Entity#vera>device_10076), "vera>device_10086": Entity(ValueSensor#vera>device_10086), "vera>device_10094": Entity(Entity#vera>device_10094), "vera>device_10095": Entity(SecuritySensor#vera>device_10095), "vera>device_10096": Entity(Entity#vera>device_10096), "vera>device_10097": Entity(SecuritySensor#vera>device_10097), "vera>device_10098": Entity(Entity#vera>device_10098), "vera>device_10099": Entity(SecuritySensor#vera>device_10099), "vera>device_10104": Entity(Entity#vera>device_10104), "vera>device_10105": Entity(SecuritySensor#vera>device_10105), "vera>device_10106": Entity(Entity#vera>device_10106), "vera>device_10107": Entity(SecuritySensor#vera>device_10107), "vera>device_10109": Entity(Entity#vera>device_10109), "vera>device_10110": Entity(SecuritySensor#vera>device_10110), "vera>device_10111": Entity(Switch#vera>device_10111), "vera>device_10112": Entity(Entity#vera>device_10112), "vera>device_10113": Entity(Switch#vera>device_10113), "vera>device_10115": Entity(Entity#vera>device_10115), "vera>device_10116": Entity(ValueSensor#vera>device_10116), "vera>device_10127": Entity(Entity#vera>device_10127), "vera>device_10129": Entity(ValueSensor#vera>device_10129), "vera>device_10130": Entity(Switch#vera>device_10130), "vera>device_10131": Entity(SecuritySensor#vera>device_10131), "vera>device_10132": Entity(SecuritySensor#vera>device_10132), "vera>device_10133": Entity(SecuritySensor#vera>device_10133), "vera>device_10149": Entity(Switch#vera>device_10149), "vera>device_10162": Entity(Entity#vera>device_10162), "vera>device_10163": Entity(ValueSensor#vera>device_10163), "vera>device_10167": Entity(Light#vera>device_10167), "vera>device_10168": Entity(Light#vera>device_10168), "vera>device_10187": Entity(Entity#vera>device_10187), "vera>device_10188": Entity(Entity#vera>device_10188), "vera>device_10189": Entity(ValueSensor#vera>device_10189), "vera>device_10190": Entity(ValueSensor#vera>device_10190), "vera>device_10191": Entity(Entity#vera>device_10191), "vera>device_10192": Entity(Entity#vera>device_10192), "vera>device_10200": Entity(Light#vera>device_10200), "vera>device_10217": Entity(Entity#vera>device_10217), "vera>device_10229": Entity(Entity#vera>device_10229), "vera>device_10230": Entity(Entity#vera>device_10230), "vera>device_10231": Entity(SecuritySensor#vera>device_10231), "vera>device_10232": Entity(ValueSensor#vera>device_10232), "vera>device_10234": Entity(Entity#vera>device_10234), "vera>device_10235": Entity(Switch#vera>device_10235), "vera>device_10236": Entity(Switch#vera>device_10236), "vera>device_10258": Entity(Entity#vera>device_10258), "vera>device_2": Entity(Entity#vera>device_2), "vera>device_3": Entity(Entity#vera>device_3), "vera>device_30001": Entity(Entity#vera>device_30001), "vera>device_30005": Entity(Entity#vera>device_30005), "vera>device_30006": Entity(Entity#vera>device_30006), "vera>device_30014": Entity(Entity#vera>device_30014), "vera>device_30015": Entity(Entity#vera>device_30015), "vera>device_35": Entity(Entity#vera>device_35), "vera>device_4": Entity(Entity#vera>device_4), "vera>device_40001": Entity(Entity#vera>device_40001), "vera>device_40002": Entity(Light#vera>device_40002), "vera>device_5": Entity(Entity#vera>device_5), "vera>device_56": Entity(Entity#vera>device_56), "vera>device_59": Entity(Entity#vera>device_59), "vera>device_63": Entity(ValueSensor#vera>device_63), "vera>device_64": Entity(ValueSensor#vera>device_64), "vera>device_67": Entity(Entity#vera>device_67), "vera>device_68": Entity(ValueSensor#vera>device_68), "vera>device_69": Entity(ValueSensor#vera>device_69), "vera>device_76": Entity(Entity#vera>device_76), "vera>device_77": Entity(Entity#vera>device_77), "vera>housemode": Entity(Entity#vera>housemode), "vera>scene_10": Entity(Script#vera>scene_10), "vera>scene_11": Entity(Script#vera>scene_11), "vera>scene_9": Entity(Script#vera>scene_9), "vera>user_13775022": Entity(Entity#vera>user_13775022), "vera>user_2116531": Entity(Entity#vera>user_2116531), "vera>user_2975462": Entity(Entity#vera>user_2975462) } [latest-26193]2026-08-08T14:48:45.502Z <DynamicGroupController:5:DynamicGroupController.js:651> DynamicGroupController#groups group OKforLarm include_capability door_sensor [latest-26193]2026-08-08T14:48:45.502Z <DynamicGroupController:5:DynamicGroupController.js:661> DynamicGroupController#groups removing vera>controller_all from set, no matching capability ... *removed due to post length, lists all devices that don't match the filter* [latest-26193]2026-08-08T14:48:45.519Z <DynamicGroupController:5:DynamicGroupController.js:754> DynamicGroupController#groups group OKforLarm after criterion include_capability, set contains 6 [latest-26193]2026-08-08T14:48:45.520Z <DynamicGroupController:5:DynamicGroupController.js:481> DynamicGroupController#groups members=Map(1) {"vera>device_10097": Entity(SecuritySensor#vera>device_10097) } newMembers=Set(1) ["vera>device_10097"] current=Set(0) [] [latest-26193]2026-08-08T14:48:45.520Z <DynamicGroupController:5:DynamicGroupController.js:493> DynamicGroupController#groups group Group#groups>OKforLarm has 0 adds 1 removes 0 [latest-26193]2026-08-08T14:48:45.520Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from Group#groups>OKforLarm by Group#groups>OKforLarm [latest-26193]2026-08-08T14:48:45.524Z <DynamicGroupController:5:DynamicGroupController.js:536> DynamicGroupController#groups update group OKforLarm done 23ms [latest-26193]2026-08-08T14:48:45.524Z <DynamicGroupController:5:DynamicGroupController.js:549> DynamicGroupController#groups _update releasing mutex [latest-26193]2026-08-08T14:48:45.956Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from Entity#vera>device_10094 by Entity#vera>device_10094 [latest-26193]2026-08-08T14:48:45.958Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from SecuritySensor#vera>device_10095 by SecuritySensor#vera>device_10095 [latest-26193]2026-08-08T14:48:46.157Z <DynamicGroupController:INFO> DynamicGroupController#groups processing pending updates for Array(3) ["UnreachableVeraDevices", "LowBatteryDevices", "OKforLarm"] [latest-26193]2026-08-08T14:48:46.157Z <DynamicGroupController:5:DynamicGroupController.js:519> DynamicGroupController#groups _update acquiring mutex for updates to Array(3) ["UnreachableVeraDevices", "LowBatteryDevices", "OKforLarm"] [latest-26193]2026-08-08T14:48:46.157Z <DynamicGroupController:5:DynamicGroupController.js:522> DynamicGroupController#groups mutex acquired; going to work [latest-26193]2026-08-08T14:48:46.157Z <DynamicGroupController:5:DynamicGroupController.js:371> DynamicGroupController#groups updating UnreachableVeraDevices [latest-26193]2026-08-08T14:48:46.158Z <DynamicGroupController:5:DynamicGroupController.js:475> DynamicGroupController#groups group Group#groups>UnreachableVeraDevices removes all members [latest-26193]2026-08-08T14:48:46.159Z <DynamicGroupController:5:DynamicGroupController.js:536> DynamicGroupController#groups update group UnreachableVeraDevices done 1ms [latest-26193]2026-08-08T14:48:46.159Z <DynamicGroupController:5:DynamicGroupController.js:371> DynamicGroupController#groups updating LowBatteryDevices [latest-26193]2026-08-08T14:48:46.160Z <DynamicGroupController:5:DynamicGroupController.js:475> DynamicGroupController#groups group Group#groups>LowBatteryDevices removes all members [latest-26193]2026-08-08T14:48:46.160Z <DynamicGroupController:5:DynamicGroupController.js:536> DynamicGroupController#groups update group LowBatteryDevices done 1ms [latest-26193]2026-08-08T14:48:46.160Z <DynamicGroupController:5:DynamicGroupController.js:371> DynamicGroupController#groups updating OKforLarm [latest-26193]2026-08-08T14:48:46.160Z <DynamicGroupController:5:DynamicGroupController.js:481> DynamicGroupController#groups members=Map(2) {"vera>device_10095": Entity(SecuritySensor#vera>device_10095), "vera>device_10097": Entity(SecuritySensor#vera>device_10097) } newMembers=Set(2) ["vera>device_10095", "vera>device_10097"] current=Set(1) ["vera>device_10097"] [latest-26193]2026-08-08T14:48:46.161Z <DynamicGroupController:5:DynamicGroupController.js:493> DynamicGroupController#groups group Group#groups>OKforLarm has 1 adds 1 removes 0 [latest-26193]2026-08-08T14:48:46.161Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from Group#groups>OKforLarm by Group#groups>OKforLarm [latest-26193]2026-08-08T14:48:46.164Z <DynamicGroupController:5:DynamicGroupController.js:536> DynamicGroupController#groups update group OKforLarm done 4ms [latest-26193]2026-08-08T14:48:46.164Z <DynamicGroupController:5:DynamicGroupController.js:549> DynamicGroupController#groups _update releasing mutex [latest-26193]2026-08-08T14:48:47.828Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from SecuritySensor#vera>device_10095 by SecuritySensor#vera>device_10095 [latest-26193]2026-08-08T14:48:47.963Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from Entity#vera>device_10094 by Entity#vera>device_10094 [latest-26193]2026-08-08T14:48:48.028Z <DynamicGroupController:INFO> DynamicGroupController#groups processing pending updates for Array(3) ["OKforLarm", "UnreachableVeraDevices", "LowBatteryDevices"] [latest-26193]2026-08-08T14:48:48.029Z <DynamicGroupController:5:DynamicGroupController.js:519> DynamicGroupController#groups _update acquiring mutex for updates to Array(3) ["OKforLarm", "UnreachableVeraDevices", "LowBatteryDevices"] [latest-26193]2026-08-08T14:48:48.029Z <DynamicGroupController:5:DynamicGroupController.js:522> DynamicGroupController#groups mutex acquired; going to work [latest-26193]2026-08-08T14:48:48.029Z <DynamicGroupController:5:DynamicGroupController.js:371> DynamicGroupController#groups updating OKforLarm [latest-26193]2026-08-08T14:48:48.029Z <DynamicGroupController:5:DynamicGroupController.js:481> DynamicGroupController#groups members=Map(1) {"vera>device_10097": Entity(SecuritySensor#vera>device_10097) } newMembers=Set(1) ["vera>device_10097"] current=Set(2) ["vera>device_10097", "vera>device_10095"] [latest-26193]2026-08-08T14:48:48.029Z <DynamicGroupController:5:DynamicGroupController.js:493> DynamicGroupController#groups group Group#groups>OKforLarm has 2 adds 0 removes 1 [latest-26193]2026-08-08T14:48:48.030Z <DynamicGroupController:5:DynamicGroupController.js:336> DynamicGroupController#groups entity-change notification from Group#groups>OKforLarm by Group#groups>OKforLarm [latest-26193]2026-08-08T14:48:48.033Z <DynamicGroupController:5:DynamicGroupController.js:536> DynamicGroupController#groups update group OKforLarm done 4ms -
[Solved] DynamicGroupController updating members issueI'll add logs when I reduced the length to an acceptable size to post.
-
[Solved] DynamicGroupController updating members issueEdit: Solved in latest-26221.
Bare-metal latest-26193
I have this group:
"OKforLarm": name: OK för Larm select: - include_controller: vera - include_capability: door_sensor filter_expression: entity.attributes.door_sensor.stateIt contains the entities I expect but behaves a bit odd. When I open
vera>device_10097the entity attributedoor_sensor.statechanges totruebut it won't show up as member in the group, when I also openvera>device_10095they both shows as members and when I closevera>device_10095it disappear from the group but when I closevera>device_10097it lingers in the group until I restart Reactor. -
Do you Matter?Speaking of Matter and older Shelly (Gen 1 & 2) I found Matterbridge, very similar to Homebridge, paired it to Apple Home and installed matterbridge-shelly and as easy as that all my devices showed up in the Home app. Might be something for you @akbooer .
Matterbridge offer other plugins like Zigbee2MQTT, Home Assistant and more, this makes me start thinking of moving away from Homebridge (and some MQTT) to Matterbridge and Matter, especially if a MatterController is eventually in the making.Because I'm Swedish IKEA is very close by and super cheap on "Matter over Thread" devices and my HomePod mini act as a Thread Border Router, I can say Matter starts to grow on me

-
Do you Matter?I bought a new Sonoff device (ESP32) and flashed it with Tasmota v.15.3.0 and discovered it was possible to enable Matter (actually implemented in v.13.0).
Tested it and as you say it was a very easy configuration. Having other thoughts about Matter now as there is no need for MQTT configuration in Homebridge, makes it a little bit smoother to add new devices.
I still need to configure MQTT so Reactor picks it up though, @toggledbits any considerations of a MatterController? -
How to upgrade from an old version of MSR?For Zigbee I have an older Sonoff 3.0 USB Dongle Plus and Zigbee2MQTT running rock solid but if I were to replace it I would go for the Sonoff Dongle Max, looks pretty impressive and can be placed wherever there’s an ethernet port (or WiFi).
-
[Solved] function isRuleEnabled() issueNever mind. I found the issue, this works as expected
isRuleEnabled('rule-mj4xiyr8')where the rule id needs to be quoted with ' or ".
Not obvious in the docs, my bad for not testing that first. -
[Solved] function isRuleEnabled() issue -
[Solved] function isRuleEnabled() issueEdit: Rule id needs to be quoted, e.g. isRuleEnabled( 'rule_id' )
Bare metal 25325.
I'm getting
nullin both global and local expressions for the functionisRuleEnabled(). It doesn't matter if the rule is enabled or disabled. Let me know if you can't replicate and need logs at higher level or I'm doing something wrong.[latest-25325]2026-01-12T14:15:04.773Z <Rule:INFO> Laddning - Lastbalansering (rule-lj5kfvi6 in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-lj5kfvi6 [latest-25325]2026-01-12T14:15:07.348Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) configuration changed; reloading [latest-25325]2026-01-12T14:15:07.349Z <Engine:INFO> Engine#1 rule Rule#rule-mkb8uytt changed; reloading and restarting it [latest-25325]2026-01-12T14:15:07.349Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) stopping [latest-25325]2026-01-12T14:15:07.350Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) stopped [latest-25325]2026-01-12T14:15:07.350Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) starting [latest-25325]2026-01-12T14:15:07.350Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) can't start -- rule is disabled [latest-25325]2026-01-12T14:15:09.589Z <Rule:INFO> Ljusstyrka - Baksida (rule-kz3ygi32 in Ljusstyrka) starting rule state evaluation; because entity-changed Entity#mosquitto-mqtt>baksida [latest-25325]2026-01-12T14:15:09.772Z <Rule:INFO> Laddning - Lastbalansering (rule-lj5kfvi6 in Funktioner) starting rule state evaluation; because expression-state-changed GlobalExpression#chargeAmps [latest-25325]2026-01-12T14:15:09.773Z <Rule:INFO> Laddning - Återstarta om stoppad av lastbalansering (rule-m3yhrbvs in Funktioner) starting rule state evaluation; because expression-state-changed GlobalExpression#chargeAmps [latest-25325]2026-01-12T14:15:09.787Z <Rule:INFO> Laddning - Lastbalansering (rule-lj5kfvi6 in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-lj5kfvi6 [latest-25325]2026-01-12T14:15:10.024Z <Rule:INFO> Laddning - Ladda bil (rule-mgb4e7bl in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-mgb4e7bl [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl local values has_local_deps false has_object_deps true need_eval false [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl local title has_local_deps false has_object_deps true need_eval false [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl local text has_local_deps false has_object_deps true need_eval false [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl local chargingTime has_local_deps true has_object_deps false need_eval true [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl evaluating eligible local chargingTime [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl local currentValues has_local_deps true has_object_deps false need_eval true [latest-25325]2026-01-12T14:15:10.025Z <Rule:INFO> Rule#rule-mgb4e7bl evaluating eligible local currentValues [latest-25325]2026-01-12T14:15:10.746Z <Rule:INFO> Ljusstyrka - Badrummet (rule-m23jno54 in Ljusstyrka) starting rule state evaluation; because entity-changed Entity#mosquitto-mqtt>badrummet [latest-25325]2026-01-12T14:15:10.983Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) configuration changed; reloading [latest-25325]2026-01-12T14:15:10.984Z <Engine:INFO> Engine#1 rule Rule#rule-mkb8uytt changed; reloading and restarting it [latest-25325]2026-01-12T14:15:10.984Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) stopping [latest-25325]2026-01-12T14:15:10.985Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) stopped [latest-25325]2026-01-12T14:15:10.985Z <Rule:NOTICE> rule-mkb8uytt (rule-mkb8uytt in Funktioner) starting [latest-25325]2026-01-12T14:15:10.986Z <Rule:INFO> rule-mkb8uytt (rule-mkb8uytt in Funktioner) starting rule state evaluation; because startup [latest-25325]2026-01-12T14:15:10.986Z <Rule:INFO> Rule#rule-mkb8uytt initializing expressions: stage one - compile and dependency scan [latest-25325]2026-01-12T14:15:10.987Z <Rule:INFO> Rule#rule-mkb8uytt initializing expressions: stage two - topological sort [latest-25325]2026-01-12T14:15:10.987Z <Rule:INFO> Rule#rule-mkb8uytt initializing expressions: stage three - startup evaluation [latest-25325]2026-01-12T14:15:10.987Z <Rule:INFO> Rule#rule-mkb8uytt evaluating eligible local test [latest-25325]2026-01-12T14:15:10.989Z <Rule:INFO> rule-mkb8uytt (rule-mkb8uytt in Funktioner) started [latest-25325]2026-01-12T14:15:14.787Z <Rule:INFO> Laddning - Lastbalansering (rule-lj5kfvi6 in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-lj5kfvi6 [latest-25325]2026-01-12T14:15:15.026Z <Rule:INFO> Varmvattenberedare (rule-mgffrozr in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-mgffrozr -
Logic Assistance: Exterior Lights on when Illuminance Below Threshold@CatmanV2 This is from my hallway and the sensor is placed near a light source so the level goes up when lights are on. This is to handle cloudy days and the hallway is a bit dark and needs artificial light but when the sun finds its way in, the lights turn off.
-
Logic Assistance: Exterior Lights on when Illuminance Below ThresholdI have a local variable as trigger for cases like this. When
lightsOnistruethe rule sets.
lightsOn =do lux = getEntity( "mosquitto-mqtt>rorelse_hallen" ).attributes.light_sensor.value, lights = getEntity( "mosquitto-mqtt>hallen1" ).attributes.power_switch.state, case when lux <= 17 : bool(true) when lights and lux >= 18 and lux <= 25 : bool(true) else bool(false) end done -
MQTT templates for ZIgbee scene controller, or a better way?You may take a look at the Reactor docs for Handling Home Assistant Events or build/modify your own MQTT template where you need to map all published actions to standard actions e.g.
1_singletosingle. -
[Solved] Local expression in Rule does not evaluate as they used to doSuper, it now behaves as expected. Once again thank you!
-
[Solved] Local expression in Rule does not evaluate as they used to doNo change after restart, files uploaded.
-
[Solved] Local expression in Rule does not evaluate as they used to doEdit: Solved in 25323.
I experience some issues since local expressions changed behavior in some previous build.
I've set up a test rule to verify my suspicions.
Previously this worked, when Reactor uptime changed all local expressions were evaluated but now only timeNowis updated andtriggerNowdoes not change (even though it is dependent ontimeNow), so the Rule never sets.
I can work around the issue bygetEntity(...uptime)intriggerNow, then the expression is evaluated and changes totrueand the rule sets.Log from different test time:
[latest-25321]2025-11-18T14:16:44.026Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) started [latest-25321]2025-11-18T14:17:33.345Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) starting rule state evaluation; because entity-changed System#reactor_system>system [latest-25321]2025-11-18T14:17:33.345Z <Rule:INFO> Rule#rule-mi4ldhta local triggerNow is a dependency of another variable [latest-25321]2025-11-18T14:17:33.348Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) starting rule state evaluation; because entity-changed System#reactor_system>system [latest-25321]2025-11-18T14:17:33.348Z <Rule:INFO> Rule#rule-mi4ldhta local triggerNow is a dependency of another variable [latest-25321]2025-11-18T14:17:33.350Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) starting rule state evaluation; because entity-changed System#reactor_system>system [latest-25321]2025-11-18T14:17:33.350Z <Rule:INFO> Rule#rule-mi4ldhta local triggerNow is a dependency of another variable [latest-25321]2025-11-18T14:17:33.354Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) starting rule state evaluation; because entity-changed System#reactor_system>system [latest-25321]2025-11-18T14:17:33.355Z <Rule:INFO> Rule#rule-mi4ldhta local triggerNow is a dependency of another variable [latest-25321]2025-11-18T14:17:38.345Z <Rule:INFO> TEST - time in expression as trigger (rule-mi4ldhta in Funktioner) starting rule state evaluation; because timer-trigger Timer#rule-mi4ldhta [latest-25321]2025-11-18T14:17:38.345Z <Rule:INFO> Rule#rule-mi4ldhta local triggerNow is a dependency of another variableIs this the expected behavior?
Bare metal, latest-25321
-
Home Assistant 2025.11.2 and latest-25315Yes, solved. Thank you! Next time I will remember to do a manual backup of HASS before upgrading

-
Home Assistant 2025.11.2 and latest-25315Heads up!
It might be just my system or it might be a good idea to wait for HASSController to bless 2025.11.2 before you update HASS.
@toggledbits can you confirm?[latest-25315]2025-11-17T14:05:05.818Z <HassController:NOTICE> HassController#hass connecting to ws://192.168.1.180:8123/api/websocket [latest-25315]2025-11-17T14:05:05.820Z <HassController:NOTICE> HassController#hass connected, starting protocol [latest-25315]2025-11-17T14:05:05.821Z <HassController:INFO> HassController#hass successful authentication with ws://192.168.1.180:8123; fetching initial data... [latest-25315]2025-11-17T14:05:05.822Z <HassController:INFO> HassController#hass HA reports version "2025.11.2" location Hem timezone Europe/Stockholm state RUNNING safe_mode false [latest-25315]2025-11-17T14:05:05.822Z <HassController:ERR> HassController#hass error while attempting config dump: [TypeError] Cannot read properties of undefined (reading 'tag') [-] [latest-25315]2025-11-17T14:05:05.823Z <HassController:ERR> HassController#hass failed to complete startup: [TypeError] Cannot read properties of undefined (reading 'tag') [-] [latest-25315]2025-11-17T14:05:05.823Z <HassController:CRIT> TypeError: Cannot read properties of undefined (reading 'tag') [-] TypeError: Cannot read properties of undefined (reading 'tag') at /home/homebridge/reactor/server/lib/AlertManager.js:141:144 at Array.findIndex (<anonymous>) at AlertManager.addAlert (/home/homebridge/reactor/server/lib/AlertManager.js:141:114) at /home/homebridge/reactor/server/lib/HassController.js:1464:367 at process.processTicksAndRejections (node:internal/process/task_queues:103:5) [latest-25315]2025-11-17T14:05:05.825Z <HassController:NOTICE> HassController#hass websocket closing, 1000 -
Reactor w/HA 2025.11 error on set_datetime service call setting only timeSounds good, thank you for your work!
-
Reactor w/HA 2025.11 error on set_datetime service call setting only time
















