Skip to main content

How are the Virtual Inputs defined in BVMS and how do they work?

Question

How are the Virtual Inputs defined in BVMS and how do they work?

Answer

A Virtual Input does not behave like a typical “open = ON / close = OFF” signal.

Instead, it works like this, the Virtual Input having 2 states: 

  • SwitchOn → Virtual Input becomes Closed (in BVMS Operator Client: Input closed) → Event state ON

  • SwitchOff → Virtual Input becomes Opened (in BVMS Operator Client: Input opened) → Event state OFF

In the Operator Client, you will see:

  • Closed = ON

  • Opened = OFF

What does happen in your configuration?

If your setup is:

  • Input Open → Start Script 1 → SwitchOn (activate Virtual Input)

  • Input Close → Start Script 2 → SwitchOff (deactivate Virtual Input)

Then internally BVMS does this:

  • When the physical input opens → Virtual Input is set to Closed (ON)

  • When the physical input closes → Virtual Input is set to Opened (OFF)

Why does it look like it’s wrong?

From a user perspective, you may expect:

  • Input Open → Virtual Input “Open” alarm

  • Input Close → Virtual Input “Close” alarm

But BVMS does the opposite in terms of naming:

  • SwitchOn does NOT mean “open” - it means “closed”

  • SwitchOff does NOT mean “close” - it means “opened”

Note:

If the same command is executed twice (for example, SwitchOff when the Virtual Input is already opened), no new event will be shown in the Operator Client.

This is because BVMS only logs state changes, not repeated states.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.