The communication server uses a simple format so that clients for languages that are unable to interface with C can be easily developed. In addition, telnet can be used to connect directly to the communication server to test it and to "override" commands from a bad control program. The communication server listens to port 47718 by default. The communication server expects a message of the form: id left_speed right_speed\n (Note: extra whitespace (tabs, spaces, newlines) is ignored) Where: id represents the id number of the desired robot's radio turret and should be an integer in [0,31] left_speed is the speed to set (in units of 0.78 cm/s) for the left motor and should be an integer in [-126,127] right_speed is the speed to set (in units of 0.78 cm/s) for the right motor and should be an integer in [-126,127] On success, the server will respond with: ok\n On an error, a textual message will be returned. If the error is the result of a bad message format, the server will respond with: Invalid Command\n\0 If the message's content is invalid it will respond with one of the following: ID out of range\n Left Speed Out of Range\n Right Speed Out of Range\n If the server is unable to open a serial port it will respond with: Unable to open serial port\n