To start with, the code runs at 100% CPU usage, which is unacceptable. I need to find a way to cut down on that, and still have the thing function. Not sure how I'm going to do that, to be honest.
Next, of course, would be to put this into some sort of permanent home, and not just have wires lying on my desk.
The code currently has no functionality to cancel the call. Once you start dialing, you need to finish the process. That needs to be added to the code.
I'd like to use a bigger keypad, more like this one
. The added buttons would make it easier to use--Press A to start dialing, and B to place the call. That kind of thing. Also, it's a straight 4x4 matrix, and comes with the 8 header pins already in place. A much better solution, but it cost more than the two keypads I got combined.
I'd like to explore other features of Google Voice. Perhaps hookup a speaker to the audio out of the Raspberry Pi, and play back voicemail. Or check for incoming SMS messages (outgoing would be tough on this small keypad, but then again, it wouldn't be impossible).
There's a ton of features that can be implemented. The fun has just begun!