Custom Scenarios
Introduction to Custom Scenarios functionality
To meet the diverse and evolving needs of our clients, we have developed the Custom Scenarios feature. This solution allows users to define specific conditions using customizable parameters to generate events or control a device’s digital outputs. By connecting the device to peripherals like alarms, buzzers, or relays, this functionality can notify drivers or perform targeted actions seamlessly.
The feature enables the device to operate autonomously based on predefined conditions, eliminating the need for constant monitoring of device status or complex backend integrations. With Custom Scenarios, any data the device can read becomes a potential input for controlling digital outputs, providing flexibility and efficiency.
Custom Scenarios description
The Custom Scenarios functionality enables configuration of up to three independent scenarios, each with up to three unique triggers. Triggers are defined using data as source from various I/O elements, such as: Fuel Level, Engine RPM, Seatbelt Status, DTC Faults, Movement Status, Ignition State, GSM Signal Level, 1-Wire/Bluetooth sensor temperature and etc. Each source is configured with specific logic operands (e.g., "On Entrance," "On Exit"), threshold values (Low and High levels), and an activation delay timer, which specifies how long a value must remain within the defined range before the trigger is activated.
When all triggers of a scenario evaluate as true, the scenario becomes active. This can generate a record (if configured) and control the digital output (DOUT) by toggling it on or off based on the active conditions. Additionally, if configured for continuous operation, the DOUT remains active as long as the conditions are met.
Key features include:
- Support for dynamic trigger logic based on selected operands and conditions.
- Autonomous device operation, even in low-power or deep-sleep modes, provided compatible I/O sources are used.
- Adjustable ON/OFF durations or permanent output control, enabling versatile device behaviors such as blinking or continuous activation.
- Custom Scenarios operate independently from the I/O menu, with priority management ensuring that higher-priority scenarios take precedence in controlling the DOUT when multiple scenarios are configured.
Custom Scenarios functionality configuration and parameters
Configuration UI
Configuration parameters description
Parameter Name | Parameter ID | Value Range | Default Value | Value | Value Definition | Description | |||
---|---|---|---|---|---|---|---|---|---|
Custom Scenario 1 ID | Custom Scenario 2 ID | Custom Scenario 3 ID | Min | Max | |||||
Priority | 19101 | 19131 | 19161 | 0 | 3 | 0 | 0 | None | No priority is set for the scenario, eventual records will not be generated. |
1 | Low | Low priority is set for the scenario. | |||||||
2 | High | High priority is set for the scenario. | |||||||
3 | Panic | Panic priority is set for the scenario. | |||||||
Output Control | 19100 | 19130 | 19160 | 0 | 3 | 0 | 0 | None | Specifies that no DOUT is controlled by the scenario. |
1 | DOUT1 | Specifies that DOUT1 is controlled by the scenario. | |||||||
2 | DOUT2 | Specifies that DOUT2 is controlled by the scenario. | |||||||
3 | DOUT3 | Specifies that DOUT3 is controlled by the scenario. | |||||||
Permanent Output Control | 19124 | 19154 | 19184 | 0 | 1 | 0 | 0 | Disabled | DOUT will be controlled continously on and off according to DOUT ON Duration and DOUT OFF Duration parameters. |
1 | Enabled | DOUT will be constantly ON while scenario is active. | |||||||
DOUT ON Duration | 19102 | 19132 | 19162 | 100 | 65000000 | 200 | - | milliseconds | Duration for which DOUT remainsturned ON |
DOUT OFF Duration | 19103 | 19133 | 19163 | 0 | 65000000 | 200 | - | milliseconds | Duration for which DOUT remains OFF. If Permanent Output Control and DOUT OFF Duration values are set to 0, DOUT will be turned on for the period configured in DOUT ON Duration parameter. |
Source #1 | 19105 | 19135 | 19165 | - | - | Device-specific | - | AVL ID | Data source for primary trigger for the scenario. This trigger can not be ignored. Value determined following Custom Scenarios source calculation |
Source #2 | 19110 | 19140 | 19170 | - | - | Device-specific | - | AVL ID | Data source for secondary trigger for the scenario. This trigger can be ignored. Value determined following Custom Scenarios source calculation |
Source #3 | 19116 | 19146 | 19176 | - | - | Device-specific | - | AVL ID | Data source for Tertiary trigger for the scenario. This trigger can be ignored. Value determined following Custom Scenarios source calculation |
Operand | 19106 | 19136 | 19166 | 0 | 6 | 0 | 0 | On Exit | Trigger activates on exit of the defined condition. |
1 | On Entrance | Trigger activates on entrance of the defined condition. | |||||||
2 | On Both | Trigger activates on both entrance and exit of the condition. | |||||||
3 | On Hysteresis | Trigger activates on hysteresis of the condition. | |||||||
4 | On Change | Trigger activates on any change in the condition. | |||||||
5 | On Delta Change | Trigger activates on a specified delta change. | |||||||
6 | Is | Trigger activates as long as source value is in range between Low and High. | |||||||
Low Level | 19107 | 19137 | 19167 | Dynamic | Dynamic | 0 | - | - | Sets the lower threshold value for the trigger. |
High Level | 19108 | 19138 | 19168 | Dynamic | Dynamic | 0 | - | - | Sets the upper threshold value for the trigger. |
Activation Delay Timer | 19109 | 19139 | 19169 | 0 | 65535 | 0 | - | seconds | Time the trigger must remain true for activation of the scenario. |
Ignore | 19114 | 19144 | 19174 | 0 | 1 | 1 | 0 | No | The trigger will not be ignored and is actively checked. |
1 | Yes | The trigger will be ignored and will not affect scenario activation. | |||||||
Logic | 19115 | 19145 | 19175 | 0 | 1 | 1 | 0 | OR | Trigger evaluation logic: any enabled trigger activates the scenario. |
1 | AND | Trigger evaluation logic: all enabled triggers must be true to activate the scenario. |
Custom Scenarios source value calculation
Source value is the Param ID of the selected source. The possible sources depend on the hardware. The sources are based on the IO, their Param IDs (which are needed when setting sources via commands) can be calculated:
Param ID = (IO ID - IO Group First Element ID) * 10 + IO Group ID
IO Group Name | IO Group ID | IO Group First Element ID |
---|---|---|
Base | 50000 | 0 |
LVCAN | 45100 | 478 |
OBD | 40100 | 398 |
For example: IButton IO ID is 39, so param ID will be (39 - 0) * 10 + 50000 = 50390 50390 can be used with setparam to set a custom scenarios source to be IButton
Custom Scenarios AVL IDs and record values
Records are generated when all enabled trigger conditions are met, and the scenario activates, aligning with the configured DOUT state. If the priority is set to 'None,' no record will be created; however, the scenario will still control the DOUT based on your configuration. For more details on Priority, refer to this page
Custom Scenario | AVL ID | DOUTx State | Record Value |
---|---|---|---|
Custom Scenario 1 | 1163 | OFF -> ON | 1 |
Custom Scenario 1 | 1163 | ON -> OFF | 0 |
Custom Scenario 2 | 1164 | OFF -> ON | 1 |
Custom Scenario 2 | 1164 | ON -> OFF | 0 |
Custom Scenario 3 | 1165 | OFF -> ON | 1 |
Custom Scenario 3 | 1165 | ON -> OFF | 0 |
Example use cases
- **Scenario 1**: Control a relay when fuel level drops below 10%. - **Scenario 2**: Trigger a buzzer if RPM exceeds 3000 while ignition is ON. - **Scenario 3**: Activate an alarm when GSM signal strength drops below 20%.