== ArbotiX IO Channels ==
'''This module is part of the [[arbotix_python]] package.'''

The ArbotiX package enables streaming of analog inputs, digital inputs, and digital outputs.

{{{
#!clearsilver CS/NodeAPI
name=driver.py
desc=
sub {
  0.name=~<name>
  0.type = arbotix_msgs/Digital
  0.desc = Command for digital outputs.
}
pub {
  0.name=~<name>
  0.type = arbotix_msgs/Digital or arbotix_msgs/Analog
  0.desc = Stream of data for an analog or digital input.
}
srv {
  0.name = ~SetupAnalogIn
  0.type = arbotix_msgs/SetupChannel
  0.desc = Setup a new analog topic broadcast.
  1.name = ~SetupDigitalIn
  1.type = arbotix_msgs/SetupChannel
  1.desc = Setup a new analog topic broadcast.
  2.name = ~SetupDigitalOut
  2.type = arbotix_msgs/SetupChannel
  2.desc = Setup a new analog topic broadcast.
}
param {
  0.name = ~<name>/rate
  0.type = int
  0.desc = Rate at which to publish inputs or update outputs. 
  0.default = 10
  1.name = ~base/pin
  1.type = int
  1.desc = Analog/Digital pin to connect to.
}}}

=== Starting New Topics ===
???

=== YAML Configuration ===
ArbotiX-ROS based robots are typically configured through a YAML configuration file. A typical configuration file that includes several IO topics might be:

{{{
}}}