Edit: I admire your work @BigJ, just wanted to show another thing that does what you want, and can be programmed with arduino aswell.
This could also be done with the fairly compact RK-002
And a link to a Blokas Midihub for reference