Smart app to set maximum or minimum level on lights

(EinarS) #1

Would be nice to have an app that monitors a set of lights and adjust them down to a max level if the level is greater than the threshold.

Example, a group of led lights from different dimmers are monitored, and a max level is set at 80% in app. If anyone turn up the light on a switch to 100% it is automatically set down to 80%.
This could keep hallways as bright as you want it as a minimum, or extend life length on your led lamps due to 100% level usage.

I know that @rboy already have apps that would have most of the framework as basis controlling in the Device low Battery Notification and Monitoring.

Your thoughts @RBoy ?

(Robin) #2

Try CoRE, install guide and link to CoRE wiki in post 1 of the following thread:

(Robin) #3


(EinarS) #4

Thx a lot for reply @RobinWinbourne , I use something like this to sync two hue bulbs.
I am thinking a rule that adjust all in a group down to 80%
So if 3 in the group is under 80% they would not be touched, just the ones that is abowe 80%

I could make one for each lamp, but the battery level thingy from @RBoy does just this.
Group, level of battery, then notification pr device.
I have 10 different dimmers i want this to work on for max/min light.

The fibaro dimmer has a MAX level, but i does not work as intended when i set the paramerer.

(Robin) #5

Using ‘expert mode’ in CoRE you could achieve this in one piston… I’ll knock up an example for you later :wink:

In regards to the Fibaro parameter settings, these reset every time an auto (or forced) calibration takes place. When changing parameters 1 or 2 you must therefore ensure that parameter 13 is ‘0’ otherwise you get conflicts.

(EinarS) #6

Cool, look forward to that @RobinWinbourne

(Robin) #7

Try this… Add an extra ‘block’ for each light:

(EinarS) #8

Will do, hope it supports lots of “OR” then :slight_smile:

(Robin) #9

As many OR’s as you want… I have one piston with 78 OR’s lol!!

Only thing to avoid is mixing triggers and conditions… Needs to be ALL triggers or ALL Conditions, never a mixture.

My example above is all conditions (hollow bullet points)

(Robin) #10

Though it’s doable in CoRE, would be nice to have a dedicated app for this.

Select Dimmable Light(s)
Select Max Level
Select Min Level


Maybe someone reading this will take up the challenge???

@RBoy @nuttytree nudge nudge :wink:

( - Make your home your butler!) #11

It’s a fairly straight forward case, wondering if it would be easier to
just use the SmartLighting from the Marketplace or CoRE to define a simple
rule to do that, if level is > 80% set to 80%.

(Robin) #12


It’s a lot of work to individually set 10+ lights with max / min levels using individual SL or Core Conditions. (I exampled the CoRE method above)

One app to quickly select a group of lights and standard max / min for the lot (3 preferences in total) would be awesome and very quick for a user to setup / add to.

It’s also a lot of work to create a custom smart app, but I was hoping someone may jump on the challenge :wink:

(Robin) #13


It’s a shame that CoRE can’t utilise the sytem variable $currentEventDevice.

Any of XYZ level is greater than or equal to 81%
Using $currentEventDevice
|> Set Level to 80%

Would save writing a condition for each and every light!

Or am I just not seeing the ability?

[DEPRECATED THREAD] webCoRE design process
( I hate Mondays) #14

It is impossible for CoRE to use that because devices cannot be stored in state. Which means a device cannot be saved in a CoRE variable because the smart app will crash. Which means - well - what you discovered. I’ll see about it in the next version. I have a way there…

( - Make your home your butler!) #15

Why would you do it individually? If you’re settings all the lights to a
single settings you should be able to it with a single rule.

(Robin) #16


Light 1 @ 60%
Light 2 @ 55%
Light 3 @ 30%

Then light 2 changes to 85% (or above whatever max is defined). Want light 2 to drop down to 80% (the max setting) but leaving lights 1 and 3 where they were.

Easy with just 3 lights (see post 7)… Very time consuming with a whole house of lights.

(EinarS) #17

100% what i thougt about.

(Alan) #18

Maintain80 - Example CoRE Piston To Keep Light Levels at 80%

This example will demonstrate how to maintain all lights at a specific level even if a person turn on or raises the level above the maximum which in our example is 80.

The hardest trick to this piston was figuring out how to break up the statements and where to trigger the level change so that it would not affect the other lights. I would suggest you also put another condition of time on this to check every 5 minutes as without it, the continuous calls to see which lights are off could get expensive.

1 or more bulbs

Before starting, set for expert mode: Settings->ExpertFeatures turn ON Expert Mode

Piston Mode: Basic

You will note this will only affect lights that are on by using the call to Set Level Advanced.

[SHARE] CoRE - show & tell all about Pistons
(Robin) #19

So if you want to ‘relax’ in the bedroom at 20% and then someone turns the bathroom on at 100%, your nice 20% suddenly goes up to 80%.

Why have dimmers in the first place if you just want to lock in 80%?

Btw… if you use Fibaro Dimmers (and I’m sure other similar devices) you can set the max brightness to whatever you want, on the device itself.

(Alan) #20

Sometimes you have to think outside the box on situations like these. Perhaps the application is commercial rather than residential. In that case, it makes perfect sense to want to save money by limiting light levels. Also, it may be an ambiance type situation whereby setting the levels above a certain level breaks the mood of the space.

Sometimes, you have to think outside the box.