I need Momentary/follow with DIM value rather than ON

OK, the scenario first…

I have a PIR at the stairs.
I have that PIR set to be on for 2 minutes if it detects movement.
(actually using Motion 1, Light Dependent)

I have set it to have an action
Simply a “104 Momentary/Follow” to a VMBDMI dimmer that controls a downlight.

That is great! Now the light comes on automatically just for 2 minutes if I try walk up or down the stairs at night.

Only one problem: My wife says, “Does it have to be so bright?”
I cannot change the lamp (it is an Aurora MPro fire-rated downlight). And anyway, why did I install all these fancy dimmers… I want to dim it.

So how do I change the ON part of momentary/follow to be an DIM value instead of just ON?
I have several other PIRs. I would like to do this all over the house.
An extended version of Follow but with DIM values for ON and OFF would be very useful.

Edit: Similar feature would be useful on a virtual relay output.
ie. to be able to set DIM values, not just ON/OFF.

Use an Atmospheric Dim action with the Motion channel

Use the “Absence Channel” to turn off the lights.

This is how we can also achieve different dim levels, depending on time of day / light level etc

But all being cancelled by the Absence trigger

Do you mean —

  • One trigger of VR puts the 4DC / DMI channel to a %

  • Next trigger of VR turns that same channel off?

Use a “Multi-Step Dimmer” action

But setup the Multi-Step Dimmer, to just TWO steps

The level you want & 0

Ah - but then it would TOGGLE wouldn’t it? It could end up going ON when it should be OFF, and OFF when it should be ON. I would much prefer not to be dependent on previous state.

With the PIR doing the timing it goes ON at the start and then OFF after 2 minutes.
There can be multiple ONs… staircase has two PIRs, one at the bottom, one at the top) all should turn it ON, never OFF. I also have light switches that toggle these same lights (amongst others) on/off (actually done as scenes with push-buttons in multi-mode… although in theory I could use the inhibit to disable the PIR when they turn on.

It works perfectly as it is now… apart from it is too bright.

If I have the PIR set a (214) DIM value but then I suppose would need to also use a timer on a virtual relay to turn it off. I would need a new virtual relay channel for every channel I want to operate this way.

It would be much neater to us the PIR’s existing ON timer so it gets configured with the PIR.
If virtual relay timer outputs could also send (214) DIM values then I could also use those to control my ventilation better (which is 0-10V control on VMB4DC).

I am tempted to have an arduino watch for ON from the PIR etc and send a (214) DIM value pretending to be from another pushbutton but I am trying to do this with standard parts.

would you not be able to do this with a virtual relay?

PIR motion ==> set DIM value
PIR motion ==> timer on virtual relay (2min)
virtual relay ==> DIM == 302 Slow off when initiator opens

and you can run this on both PIR’s

The issue with that command is that it is

0302 “Slow On when Initiator Closes, Slow Off when Initiator opens”

Which could countermand the 0214 Atmospheric Dim value command

I stand by my initial reply.

With the amendment @EvAndy that the “External Override” checkbox should be active

This will accommodate (almost) everything you have asked for


Yes, I agree a simple command for dimmers that is just like 0213 “Slave (Following Initiator)” but with a Dim level would be very nice

Not quite. Looking for a follow (but DIM) rather than a toggle.
Trigger of PIR should turn lights on but only dimly. If it triggers again then it remains ON.
Lights should only go off when the PIR built-in timer turns its output off.

ie.as long as there is movement at the PIR the lights should stay on (but dim)
So that if I get up and walk about the house in the night the lights will come on dimly automatically.
Especially important at the staircase (a spiral with varying step length) but it would be handy all over the house (we have ten VMBPIRM).

Yes, I totally understand

ON (@ a level) is the easy bit, with many PIRs, using any combination of Motion channels

It’s the OFF when ALL PIRs are inactive that is the issue.

I’ve built this VLP project, with a VMB4DC, VMBRY1RS and 3 x VMBPIRM as an example of what I think might work.
2023 PIR DIM.vlp (17.4 KB)

Premise is this

  • MASTER PIR is the device that decides is it if DAY or NIGHT
    The light level trigger for the DAY and NIGHT channels will cause a pair relays channels of lock and unlock Motion 1 and Motion 2 of Every PIR
    The status of these Relays could be shown in a UX or as feedback LEDs somewhere
    (there is a pair of actions between them that prevent both from being ON)
    Of-course it could be anything that sets the state of these relays, a pair of virtual buttons and timed events if you prefer.

  • Each Motion channel has the same 0214 dim action
    Timer Duration = 10 seconds
    Dim Duration = I have set to 3 seconds for arts sake
    Dim Level :-
    Day channel (Motion 1) = 100 %
    Night Channel (Motion 2) = 20%

  • Each Motion channel is set to issue a Pulse (momentary) Press on the bus every 5 seconds, while it sees motion.
    Theory being, the 0214 timer will expire after 10 seconds, but as long as another trigger happens, the light will stay on (adapt this to whatever you need, as in, if it takes 15 seconds to walk between PIRs for the same lamp, set a longer Duration in action 0214)

Give this kind of logic a try and see if it works for you

Good luck

I think we need a simpler approach.
I don’t have enough virtual relays to do this for every zone and adding several more VMB1RLYNO to get virtual relays seems a bit OTT.

It is already SO close as standard. Works great. It just needs to be Follow/DIM rather than Follow/ON.

Arduino approach is still looking more attractive at the moment :-/

I know.

That relay is only in there (once) to set Day & Night

You don’t need to use a relay if you don’t want to, you could use a pair of buttons just as easily or the Dark & Light channels of one PIR to lock / unlock motion channels (one master PIR for all or each one looks after itself)

Have you seen the reply to the Help request I put in?

You don’t need to use a relay if you don’t want to, you could use a pair of buttons just as easily.

Ah - I have lots of spare VMB8PBU buttons. So I could just use one as a program to set day/night based on sunset/sunrise?

Looking at that VLP file, I cannot see what turns the dimmer OFF?
What am I missing?

Have you seen the reply to the Help request I put in?

Oh… Thanks. Although at first I did not understand it.
It would be nice if it appeared in a VMBDMI-R (and VMB4DC) firmware update.
I won’t hold my breath though :slight_smile:

I am puzzled… when I set a button to set a DIMMER to eg 25%, the button does not get programmed to do anything differently, only the dimmer gets told how to respond. The button still sends the same 3 signals (on, hold, off) but the dimmer now responds to ON (just from that button) by setting a DIM value. After that the dimmer is clearly ignoring the OFF. All we need is for it to still respond to the OFF. This would seem to me to be a VERY small firmware change? If I understand correctly?

I can presumably fake it on the bus by sending PB1 ON… and then sending PB2 OFF later.
Where PB1 has been set to atmospheric DIM 25% at DIMMER1
and PB2 has been set to momentary/follow for DIMMER1.
To be clear, nothing here ever sends PB2 ON.

Are you using Acton 0214 ?
With a short duration? Or have you left it at “continuous”?

And are you waiting for the time out?

Repeatedly triggering the action will keep the light on


When it times out…


Meaning, if you set the PIR motion to timeout in less time that the Atmospheric Dim value duration, the light will stay on, for as long as the PIR keeps triggering

Think of it a “restartable timer”, but for a dimmer, with a Dim value


We have added this feature to the backlog to be implemented.


I look forward to trying it out.

If I understand what you’re looking for, I have a similar thing set up in my corridor. Here’s how I did it (for a single PIR channel)

  1. Set up the dimmer channel to the dim level you want, say 5%;
  2. Keep your PIR channel configured to close for the desired duration (2 minutes);
  3. Connect the PIR channel as an initiator to your DIM channel with a 703. Inhibit while initiator is open.

That way, whenever somebody walks past the PIR sensor, its channel will close, which will uninhibit the dim channel, causing the lights to turn on to precisely the dim level that you’ve preset (e.g. 5%.) Bonus point is that you can control the dim level at any time using any action regardless of whether the channel is inhibited or not. So e.g. you can make so that the light turns on brighter at day and dimmer at night.

Hard part: if the velbus system resets, the dim level will also reset to 0%. Use calendar events or OpenHAB or some other tool to ensure the dim level stays set to the desired value when the system powers on.

If the single initiator solution works for you this can be extended to multiple initiators as well. If the multiple PIR initiators are directly connected, the Inhibit while open will act as a logical OR, I believe, and the lights will not turn on until both of the PIR sensors detect motion. If you want any of the PIR channels to turn on the light, you will need to combine the multiple PIR initiator channels into a single virtual relay to make it an “AND”. Refer to https://www.velbus.eu/downloads/velbus/01_faq/faq_velbus_logische_functies_en.pdf for examples.

Similarly for integration of the button control. Ultimately it helps a lot to set up a virtual relay channel that basically means “Should this light be on?” and then control the state of that relay, rather than trying to get the inhibit state right directly.

1 Like

Oh! I had missed that detail in our example. I did not realise 214 “Atmospheric Dim” could so those other timer things. I had not considered anything other than continuous and the time taken to dim up/down.

Also the bit about using “abscence” for another action to turn things off.

This seems good for my one channel on the stairs but I am going to try it or the adjoining corridors too.
Very interesting. I will play with this some more as soon as my wife is out of the house. For some reason experimenting with all the lights does not go down well with an audience :slight_smile:


1 Like

Oh! I have never used any of the inhibit commands… that is really interesting.
I think this will be useful with my ventilation system… to turn things on and off at low speeds (the fans are 0-10V controlled from several VMB4DC), and all without needing a virtual relay too.

Only downside I have for lighting (so far) is the initial state. In order to get the DIM value to stick I have to first set a DIM value… and that means the light remains ON until something turns it off. AND if I remove power to the velbus, it does not come back on in the right state… the DIM values are forgotten and then the lights do not come on at all. But if I have another action somewhere to set that DIM value then the lights stay on.