Ben,
I loved your show but you did it the hard way!
An unmodified Chatpad has a 19200 serial interface which pumps out keypress and depress events.
All you needed to do is connect the keyboard directly to the Arduino with a pencil plug socket and use simple keyboard driver that converts the chatpad keyboard events into ASCII code for the BASIC.
Cheers!
Very Compact

