Here is a project a couple of years in the making, but I’m almost there I hope. I have completed the basic input /output controller an Arduino to control them, this schematic will eventually control the input and output of a pinball playfield when it is built (the controller that is, I have the playfield already complete). The input is handled through 6 4021 ic’s, the feature lights and flashers are handled by a MAX7221 ic, and the solenoids (or in my case 12vdc liner actuators) are handled by 2 4094 ic’s.
I suspect that my newbness is going to lead to a few errors but I feel pretty confident I got most of it right, I’m thinking about switching the MAX ic to the SPI port but was trying to find a way to flip all the input and output to I2C, I believe this might add more speed to the project as well as reduce the pin count that I am currently using. I know that someone had told me that I should be using SPI for the MAX ic but I want to incorporate a wave shield into this controller and the flash card uses that port so I am open to any suggestions.
I intentionally left the RX and TX ports open to interface another Arduino for the instructions and more sound as well, but that is still in the thinking about it phase.