Dominic Cleal's Blog

Arduino powered switch to trigger VoIP PTT

TSPTT is a simple project to link up a physical switch, via an Arduino to the PC in order to trigger the PTT on a VoIP program (e.g. TeamSpeak, hence "TS").

The Arduino program is small and just prints a 0 or 1 to the USB->serial connection whenever the state of the switch changes, making it easy to read from the PC.

On the PC, I tried Gobetwino, a closed-source "proxy" that parses commands sent over serial to the Arduino. Unfortunately it can't hold keys down, only press them, at which point I found Rajarshi Roy's blog post on the same subject.

Rajarshi pointed out the Java API (java.awt.Robot) for key presses, in order to trigger the PTT. Along with the rxtx serial Java library, this makes up TSPTT. The code simply installs a systray icon, monitors the serial port and applies key presses and releases as required.

My TSPTT JAR is available here, set up for F5 as the PTT and COM3 or /dev/ttyUSB0 as the serial port (rxtx must be installed too).