For one key, create an ASCII chart and navigate it via timed presses.
No tap, no hold, no input for 3 seconds = input accepted.
No tap, no, hold, no input for 5 seconds = input finished.
One tap, no hold = move selector one spot
One tap, key held = move selector in auto-scroll at 10 characters per second or so
So hello would be:
Press, hold to H.
Release, wait 3 seconds for acceptance.
Press, hold to E.
Release, wait 3 seconds for acceptance.
Press, hold to L….
…so on…
Press, hold for D.
Release, wait 3 seconds for acceptance.
Do nothing. Wait 5 more seconds to terminate with finished input.
Seems like a simple enough one-key input system. ;D