Filtering inputs

The software has to filter the changes reported by the hardware, because you only want certain changes to trigger an alarm. In the current software, for example, only switch closings generate the alarm; opening the switch back up does not.

We didn’t filter multiple triggers of the sensor, so if you happen to use a switch with very slow bounce characteristics — slower than the 100 ms loop time — you might want to either slow the polling loop or filter so you don’t send multiple e-mails when the switch bounces. Similarly, if you do slow the loop a lot, you might want to combine multiple e-mails into a single one reporting all the zones that are triggered.