My Pew Pew arrived today. I figured pong was a good place to start so I had a go at making this project work on it. Spoiler: we made it!
When I made this game initially it was on an Edgebadge and the use of the pybadger library allowed it to work on all pybadges and the pygamer.
I see now this is actually somewhat limiting. For now I have re-written it to use gamepad instead of pybadger. This allows the dpad buttons to work with the pew pew. But it does not translate back to the pybadger because the buttons are connected to a shift register. Perhaps we can have abstraction layer somewhere that can check which device it's on and make commonly used buttons work the same way.