XBee Commander Remote Control

The XBee Commander is a wireless remote control unit available from  that uses XBee wireless transceivers for communications. It is typically used for robot control applications, but you can also plug it to your computer using a UartSBee to perform remote control within your simulations as well. This allows you to use the same remote control to manipulate your simulated robots as you do with your real robots. You can purchase a commander control system from Trossen Robotics. The XBee Commander IO controller is derived from the standard remote control framework built into AnimatLab. It is responsible for opening the communications port to the UartSBee and receiving serial data from the Commander controller. As data is received it sets values for the button and joystick states. There are data types that can be accessed to read those states and apply them to other parts, or chart them. These are described below. Also, each button and joystick also calculates when it starts and stops and has other data types for getting that information. For example, for the RT button there is a RT data type that is a 1 or 0 value for that corresponds with the current button state. There are also RT Start and RT Stop data types that are set to 1 for a single simulation time step when the RT button is first pushed down or let up. Another example is the joystick state. The Walk Horizontal data type ranges from -128 to 128 and tells you the current state of the left horizontal joystick. The Walk Horizontal Start data type is set to 1 when the user first moves the joystick to the right (positive values), and is set to -1 when the user first moves the joystick to the left (negative values). Whereas the Walk Horizontal Stop is the opposite. It is is set to 1 when the user lets the joystick go back to its default start from the right (from positive values), and it is set to -1 when it goes back to its default state from the left (from negative values). You use these data types as the source for pulsed or passthrough linkages to stimulate neurons in your system. When the commander IO control is first created it has default linkages setup for it for all the buttons and joysticks, but these are not configured to point to specific neurons yet. Below is a list of the data types available for this controller.

  • Walk Horizontal and (Start/Stop): This is the value from -128 to 128 for the left horizontal joystick value.
  • Walk Vertical and (Start/Stop): This is the value from -128 to 128 for the left vertical joystick value.
  • Look Horizontal and (Start/Stop): This is the value from -128 to 128 for the right horizontal joystick value.
  • Look Vertical and (Start/Stop): This is the value from -128 to 128 for the right vertical joystick value.
  • Pan and (Start/Stop): This is the value from -128 to 128 for the pan feature of the commander. Note that this only works if you have built this feature into your commander.
  • Tilt and (Start/Stop): This is the value from -128 to 128 for the tilt feature of the commander. Note that this only works if you have built this feature into your commander.
  • L1 and (Start/Stop): This is the Boolean value for the L1 button.
  • L2 and (Start/Stop): This is the Boolean value for the L2 button.
  • L3 and (Start/Stop): This is the Boolean value for the L3 button.
  • R4 and (Start/Stop): This is the Boolean value for the R4 button.
  • R5 and (Start/Stop): This is the Boolean value for the R5 button.
  • R6 and (Start/Stop): This is the Boolean value for the R6 button.
  • LT and (Start/Stop): This is the Boolean value for the LT button.
  • RT and (Start/Stop): This is the Boolean value for the RT button.