WiFi Keyboard APP
It works as ordinary input method. In example, you can use it in terminal or to type SMS.
Use WiFi for low latency input. 3G may be blocked by some carriers. USB connection works best, but require some technical knowledge and connected cable.
Source Code is available under GPL2 licence.