background image

Programmer’s Manual 

Communication with the robot through the USB port

 

The robot has a USB port next to the power jack at the rear of the robot. You will need a USB 5-pin mini 
cable to connect to the robot. You will also need to install a device driver to talk with the robot. The best 
way to install the device driver is to install it from the 

Software Update Page

Communication to a robot through a terminal emulator

 

Commands can be sent to a real robot via a terminal emulator. The robot is running an API command 
interpreter on the USB port. Connection to the robot is made through a USB cable. The driver converts the 
USB port connection to a Com port connection. This allows you to use any terminal emulator program 
(such as Hyperterm or TeraTerm) to communicate with the robot. Use the following procedure: 

1. Turn on the robot and connect the USB 5 pin mini cable between your computer and your robot. 

2. Bring up the Terminal Emulator program. 

3. Find the COM port that the robot is connected to. This is usually the last one on the list. The 
communication parameters (Baud, start/stop bits, parity, etc.) are unimportant. They apply only to a real 
COM port. 

4. Type GetVersion. If you are connected to the robot, then it will echo back each character that you type. 
Hit the enter key. The robot will now process the command and supply a response. 

5. Now type help to get a list of available commands. 

Command Syntax 

Commands are matched with a case insensitive method. Partial word match is supported. You only need to 
type in enough letters of the command to make it unique. Commands have a flexible format. In the strictly 
non-sequenced format, the syntax consists of only 3 elements: 

Cmd – This is the command name. 
Flag – Flags are always initialized to zero. Specifying a flag on the command line sets the flag to one. 
ParamName ParamValue – The ParamName specifies what parameter the next argument (ParamValue) is. 

Flags and Param(Name/Value) pairs can be specified on the command line in any order. All Flags and 
ParamNames are matched with a case insensitve method. Partial word match is supported. You only need to 
type in enough letters of the Flag or ParamName to make it unique. In a less verbose format, the user can 
omit the ParamName from the Param(Name/Value) pairs. However, this format requires that all 
ParamValues are specified in the correct sequence. This sequence is the sequence shown in the Usage 
command. Unnamed ParamValues are assigned in sequence to the earliest ParamName in the sequence that 
does not already have a value assigned. 

Response Syntax 

All responses will have a control-Z (^Z) at the end of the response string. Command responses are in the 
form of CSV spread sheets. E.G. GetVersion returns: 

Component,Major,Minor,Build 
Product Model,XV-11,, 
Serial Number,AAAnnnnnAA,0000000,D 
Software,6,1,13328 
LDS Software,V1.0.0,, 
LDS Serial,XXX-YYY,, 
MainBoard Vendor ID,1,, 

Summary of Contents for XV

Page 1: ...ponse 5 Now type help to get a list of available commands Command Syntax Commands are matched with a case insensitive method Partial word match is supported You only need to type in enough letters of...

Page 2: ...ma and then data associated with that label The order and number of the rows and columns is not gauranteed to stay the same from release to release The labels used will not be changed but new rows and...

Page 3: ...mation for the system software and hardware GetWarranty Get the warranty validation codes Help Without any argument this prints a list of all possible cmds With a command name it prints the help for t...

Page 4: ...ff Stop Diagnostic Test and clears all diagnostic test modes DrivePath Sets DrivePath TestMode Press start button to start Robot travels straight by commanded distance as path Mutually exclusive with...

Page 5: ...Speed DropTest argument to set the robot speed in mm s BrushSpeed DropTest argument to set the speed of the brush in rpm Return Format None Command GetAccel Description Get the Accelerometer readings...

Page 6: ...50 0 NotConnected3 0 0 0 50 0 BatteryTemp0InC 1759 1759 1759 50 0 Command GetButtons Description Get the state of the UI Buttons Usage GetButtons Options None Return Format Button Name Pressed BTN_SOF...

Page 7: ...t 222 Please put my Dirt Bin back in 223 Please check my Dirt Bin and Filter Empty them as needed 224 My Brush is overheated Please wait while I cool down 225 My Battery is overheated Please wait whil...

Page 8: ...G 3 29 64 0x60 0xc00 0 LS_ERROR_SHUTDOWN 3 30 66 0x63 0xcc3 0 LS_NEW_BATTERY 3 31 68 0x66 0xd8c 0 LS_ERROR_WDT 3 32 70 0x69 0xe5b 0 LS_LDS_DotTooWide 3 33 72 0x6c 0xf30 0 LS_LDS_DoubleDot 3 34 74 0x6f...

Page 9: ...0x72db Command GetMotors Description Get the diagnostic data for the motors Usage GetMotors Brush Vacuum LeftWheel RightWheel Laser Charger Options Flag Description Brush Return Brush Motor stats Vacu...

Page 10: ...e version information for the system software and hardware Usage GetVersion Options None Return Format Component Major Minor Build ModelID 0 XV11 ConfigID 1 Serial Number AAAnnnnnAA 0000000 D Software...

Page 11: ...r Time GetVersion Get the version information for the system software and hardware GetWarranty Get the warranty validation codes PlaySound Play the specified sound in the robot RestoreDefaults Restore...

Page 12: ...ts Options None Return Format None Command SetDistanceCal Description Set distance sensor calibration values for min and max distances Usage SetDistanceCal DropMinimum DropMiddle DropMaximum WallMinim...

Page 13: ...k HLine HLine_value VLine VLine_value HBars VBars FGWhite FGBlack Contrast Contrast_value Options Flag Description BGWhite Fill LCD background with White BGBlack Fill LCD background with Black HLine D...

Page 14: ...er Button options ButtonGreenDim Start Button Green Dim mutually exclusive of other Button options ButtonOff Start Button Off Return Format None Command SetMotor Description Sets the specified motor t...

Page 15: ...aning for Sun 0 Sat 6 required Hour Hour value 0 23 required Min Minutes value 0 59 required House Schedule to Clean whole house default Mutually exclusive with None None Remove Scheduled Cleaning for...

Page 16: ...lFollower Description Enables Disables wall follower Usage SetWallFollower Enable Disable Options Flag Description Enable Enable wall follower Disable Disable wall follower Return Format None Command...

Page 17: ...S Upload file is an LDS module Mutually exclusive with sound code xmodem Use xmodem protocal when transmitting upload module size data size to upload to device noburn test option do NOT burn the flash...

Reviews: