IT Command — Digital Input Debounce
The IT command configures debounce (anti-bounce) times for digital inputs and ignition, preventing false alarms.
What is it for?
🚪 Door sensors — Filters mechanical bouncing when opening/closing
🔑 Stable ignition — Prevents false changes when starting engine
🆘 Panic button — Quick response with bounce filtering
📳 Vibration sensors — Ignores normal vehicle vibrations
Allows defining independent delays for positive (ON) and negative (OFF) edges.
Syntax
| Operation | Command | Description |
|---|---|---|
| Configure | SITindex delay_on delay_off | Define debounce times |
| Query | QITindex | Read current configuration |
Parameters
| Field | Description | Range |
|---|---|---|
index | Digital input slot | 00-06 (IN00-IN06), 07 (generic slot) |
delay_on | Tenths of second + edge | 0001-9999 |
delay_off | Tenths of second - edge | 0001-9999 |
Default Values
| Input | Debounce ON | Debounce OFF |
|---|---|---|
| IN00-IN06 | 100 ms | 100 ms |
| Slot 07 | 100 ms | 100 ms |
Index 07 does not configure ignition. SIT and QIT always read and write the same array of
digital inputs, and slot 07 is just one more entry in that array: it has no relation to the ignition
sensor.
The real IGN debounce lives in variables of its own inside the ignition module, with 10 seconds by
default on both edges, and is configured with
SCXIGN.
Sending SIT07... has no effect whatsoever on engine startup.
Examples
Door sensor with anti-bounce
>SIT0200100003<
// IN02: ON=1.0s, OFF=0.3sBehavior:
- 🚪 Door must be open for 1s to generate
IN02+ - 🚪 Door must be closed for 0.3s to generate
IN02-
>QIT02<
>RIT0200100003;ID=1234;*3A<
// Configuration confirmationVibration sensor
>SIT0100500050<
// IN01: both edges 5.0 seconds
// Prevents alarms from momentary vibrationsPanic button (quick response)
>SIT0300020001<
// IN03: ON=0.2s (fast), OFF=0.1s
// Immediate activation with mechanical bounce filteringIgnition debounce
To change the ignition debounce SIT is not used, instead
SCXIGN, which
accepts the mode and, optionally, the on and off times:
// See the CXIGN page for the full time syntax
>QCXIGN<Recommended Times
By Sensor Type
| Sensor Type | ON (ms) | OFF (ms) | Reason |
|---|---|---|---|
| Door | 100-500 | 50-200 | Avoid mechanical bounce |
| Vibration | 500-2000 | 500-2000 | Filter normal vibrations |
| Button | 20-100 | 10-50 | Quick response |
| Pressure | 1000-5000 | 1000-5000 | Stabilize readings |
| Temperature | 2000-10000 | 2000-10000 | Avoid transient changes |
| Ignition | 1000-10000 | 1000-10000 | Filter startups |
| Impact | 10-100 | 10-100 | Immediate detection |
Considerations
Very long debounce times (>30s) may cause loss of legitimate events. Adjust according to specific application.
For critical applications (panic button, impacts), use minimum debounce (10-50ms) and validate events on platform.
Relation with Events
Debounce affects when triggers are generated:
// Without adequate debounce (default 100ms)
Door opens/closes quickly → multiple IN02+/IN02- events
// With appropriate debounce (1000ms)
>SIT02 1000 0300<
Door opens/closes quickly → no events (doesn't reach time)
Door opens and stays open → IN02+ event after 1sCompatibility
See Also
- IO Command - Input/output query
- SS Command - Input signals
- Event Engine - Events with inputs
- Trigger List - IN00-IN06 events