Ye Olde Day Job occupied way more of my waking hours this week than it ever should.
I did manage to get a little bit done:
Added a new driver to the linux kernel for configuring and driving the GPIO pins needed to interface to the pinball machine. Removed a couple of the test drivers that come with the prebuilt kernel that conflict with the GPIO usage I need. The pinball driver is not complete, but it does allow me to reconfigure the GPIO registers to use the pins exactly how I want. Hopefully I will get to test it this weekend.
I have been doing a lot of scratch pad calculations on how many GPIO pins I actually need. For certain I will use 6 for the DMD and 11 for the switch matrix (3 for selecting and 8 inputs). For the lamp matrix I'm pretty sold on using an LED driver which would only require 3 pins. The final decision to make is exactly how to drive the solenoids and flash lamps. I'm thinking, if 3 pins loading and running the lamp matrix is fast enough, would a similar driver also work to drive the coils? At this point it will all be theoretical until I actually wire something up and test it.
That's it for this week, but under the circumstances at the "day job", I'll take it.