Time to get started on one of the Pad Control Modules which is probably the most complex of all the modules in the system.
It may be hard to visualize but this board actually sits under the top panel directly below the various LEDs and switches. The module controls 4 pads so the 8 pad wireless controller will have two of these under the top panel. It mounts upside down and the LEDs and switches for 4 pads all solder directly to the board.
On the large controller I built a few years ago all the LEDs and switches were wired individually. That was around 100 LEDs and a bunch of switches. Two wires per component. A whole lot of wires. These were all formed into harnesses and routed to controller PCBs. The controller PCBs were in turn wired to a backplane where Cat5 cables were connected to run to the pads. It all worked fine but it was a whole lot of work. Too much work, too much time. Wire is expensive too.
I decided if I was going to build more of these (I was considering the wireless design at the time) I would have to eliminate most if not all of those wires. There were a few design iterations but what I ended up doing was moving all the controller functions to this board now sitting under the panel. Lots and lots of wires eliminated. Even the Cat5 cable now connects direct to the board. The master arm switch, sonalert and launch button are still separate but that's about all.
The rectangle area at the top left of the board is for the RS232 interface and Cat5 connector. There are actually two versions of this board. On the other version that rectangle is a separate piece and connects as a daughterboard. Works the same. The version used depends on the application. The 8 pad controller uses an enclosure that is relatively shallow. So the daughterboard makes the assembly too tall. But in the configuration shown here it works fine. In a larger controller where the grouping of modules horizontally and vertically is more dense, and the enclosure is taller, the daughterboard version works best.
Another design choice was that this module uses two CPUs instead of one. Microcontrollers actually. One CPU would be more than enough but it would need to have enough I/O pins for all the LEDs and switches and other functions. A 28 pin CPU would work but there was no way I could fit that on the board. The locations of the LEDs and switches were fixed since they soldered directly to the board from the panel above. Everything else had to work around them. So I ended up using two smaller CPUs which fit ok. One to handle display, which is all the LEDs, and the other to do everything else. That worked out great and the two communicate via a single serial pin.
Of course I could have used SSOP or TSSOP CPU packages which are really small, vs the DIP packages. But at the time I had almost no experience with surface mount technology. And also as I would experiment with and test these boards, I would sometimes mess up and blow out the CPUs. Replacing a DIP in a socket is a whole lot easier than replacing a tiny soldered on SSOP or TSSOP. So it's DIPs for the IC and CPU chips now and forever. That said, there was still a lot of other stuff to put on this board. And it was a real challenge to design. But it works.
Enough background babble for now. Time to build.