I spent yesterday evening working on the rhythm-robot, and have completed its main control panel. I am really happy to see it coming together. I have a clear image in my head of the instrument I want to play, and it feels good to see steady progress toward it.
Only after powering the board up did I discover I’d misread the datasheet for the PCF8574 port expanders: they’re advertised as having “latched outputs with high current drive capability for directly driving LEDs”, but this only works when you drive the pins LOW (logical false) – the chip can sink current but can’t source it. Of course I’d laid everything out the opposite way, since I want to turn the lights on by setting their pins HIGH (logical true)! Grr. Half a dozen NPN transistors solved the problem, but fitting the new components into the board and splicing them into the logic lines added almost two extra hours to the project.