The phonebounce command-line tool can be used to convert a handset into a modem for access from an instance of Qt Extended running on a desktop system.
This tool is primarily used for development and testing when getting a new handset to work. The desktop Qt Extended can be built with debug symbols and instrumented with additional debugging code, making it easier to find problems with Qt Extended before it is actually transferred onto a device.
The tool also allows parallel development, with some developers focusing on getting Qt Extended to build for the handset environment, and other developers focusing on GSM Modem Integration and user interface customization.
The phonebounce tool runs on the handset, opens the modem serial device, and then redirects it to a socket on the handset. The desktop instance of Qt Extended then connects to this socket as though it was using the modem directly. It is important that a Qt Extended instance is not running on the handset and using the modem while phonebounce is in use.
The phonebounce tool is launched as follows:
phonebounce [device[:baudrate] [port]]
The device[:baudrate] parameter specifies the name of the modem serial device to use. It defaults to the value of the QTOPIA_PHONE_DEVICE environment variable. The port parameter specifies the port to bind to to accept incoming socket connections. The default value for port is 12345, which is the same as the Modem Simulator port. For example:
phonebounce /dev/ttyS0:115200 12345
This will connect to the modem on /dev/ttyS0 at 115200 baud, and export the modem to the desktop machine on port 12345.
On the desktop side, the desktop's QTOPIA_PHONE_DEVICE environment variable should be set to sim:ipaddress where ipaddress is the IP address of the handset connected to the desktop (usually via USB). It is also a good idea to set the QTOPIA_PHONE_VENDOR environment variable to the name of the modem vendor plugin to use for the handset's modem. Qt Extended can then be launched on the desktop in the usual fashion.
Because phonebounce connects via TCP/IP, it will be necessary to bring up USB networking on the handset and the desktop sides of the connection before using phonebounce.