Being in control
So that we know what controls we want on our alarm control panel, we need to map out our system with the number of zone inputs and control inputs and outputs. As you'll remember from Chapter 3, Extending Your Pi to Connect More Things we can essentially have up to 16 zones in our system using the two I/O ports on our port expander. We also have the eight GPIO pins at our disposal on the Raspberry Pi board itself. So, let's now allocate these outputs and document them in the table that follows.
I'm going to set up an 8-zone system for my alarm inputs using port A on the I/O expander board, using the native GPIO pins for things such as buttons and alert outputs. One reason for doing it in this configuration is that the system can always fail-safe—so if the expander board fails, the Raspberry Pi can still communicate alerts and buzzers connected to it.
Port |
I/O Pin |
Label/Purpose |
---|---|---|
Expander A |
0 (A0) |
Zone 1 Input (Entry/Exit Channel) |
1 (A1) |
Zone 2 Input | |
2 (A2) |
Zone 3... |