Driver Type
Categories
- Recent Updates
- Access Control
- Amplifier
- A/V Receiver
- Climate and Pool Control
- Disc Player / Changer
- Display
- DSP
- DVR
- Irrigation / Sprinklers
- Lighting Control
- Matrix Switch
- Media Server and Player
- Multi-Room A/V
- Networking
- Power and Rack Management
- Security
- Surveillance
- Teleconferencing
- Training
- Tuner
- Utility
- Video Projector
Driver Type
Categories
- Recent Updates
- Access Control
- Amplifier
- A/V Receiver
- Climate and Pool Control
- Disc Player / Changer
- Display
- DSP
- DVR
- Irrigation / Sprinklers
- Lighting Control
- Matrix Switch
- Media Server and Player
- Multi-Room A/V
- Networking
- Power and Rack Management
- Security
- Surveillance
- Teleconferencing
- Training
- Tuner
- Utility
- Video Projector
Lambda
By: Ryan Melena
Updated: May 21, 2026
Version: 2.4
The Lambda driver allows for unprecedented integration between drivers and can wildly simplify UI design!
This driver allows you to assign input variables from other drivers (currently up to 20) and then define a logical expression based on those variables using the full power of javascript. The expression can be automatically evaluated each time one of the input variables changes. If the result of the expression evaluation changes, it is written to a variable within the Lambda driver and an event is fired.
Multiple instances of the Lambda driver can be used and combined so that the result of one Lambda can be fed into another Lambda as an input.
Lambda
Driver provides ability to convert multiple input variables to a single output variable.
Revision History
1.0: The original release of the driver
1.1: Add Error variable to expose evaluation errors
Add Description setting to allow documentation of Lambda functionality
Add prevResult argument allowing comparisons between current and previous evaluation result
Add Image and List output variable options
2.0: Support multiple lambdas per driver instance
2.1: Provide sample value for string variables
2.2: Add support for use of JSON.parse and JSON.stringify inside Expression
2.3: Add setting to disable automatic evaluation of lambda expression
2.4: Code clean-up and small array bug fix
Driver Properties
General Settings
Description: Description of Lambda function
Enable Automatic Evaluation: When enabled, expression is automatically evaluated when input variables change. When disabled, expression is only updated when Force Evaluation function is called.
Number of Input Variables: Number of input variables to use in lambda.
Expression: Javascript expression to be evaluated when input variable changes. Input variables are represented as x1 to xN (where N is Number of Input Variables). The previous expression result is available as the variable prevResult.
ex. if (x1 % 2 == 0) { return “a”; } else { return “b”; }
Result Type: Type of value returned by Expression
Input N
Type: The type of the input variable.
Variable: The driver variable the input is bound to.
Variables
Bool Result: Variable used to store Expression result when Result Type is Boolean.
Integer Result: Variable used to store Expression result when Result Type is Integer.
String Result: Variable used to store Expression result when Result Type is String.
Image Result: Variable used to store Expression result when Result Type is Image.
List Result: Variable used to store Expression result when Result Type is List.
Driver Events
Result Changed: Triggered each time the evaluated lambda result changes.
Functions
Force Evaluation: Forces evaluation of Expression, primarily useful for testing.