#TODO: measure robot dimensions, and laser offset.
driver
(
  name "obot" 
  provides ["position2d:0" "power:0"]
  port "/dev/ttyS0"
)
driver
(
  name "sicklms200"
  provides ["laser:0"]
  pose [0.08 0.0 0.0]
  port "/dev/ttyUSB0" 
  invert 1 
  connect_rate 38400
  transfer_rate 38400
  alwayson 1
)
driver
(
  name "vfh"
  provides ["position2d:1"]
  requires ["position2d:0" "laser:0"]
  safety_dist_0ms 0.1
  safety_dist_1ms 0.3
  distance_epsilon 0.3
  angle_epsilon 5
)

#driver
#(
#  name "mapfile" 
#  provides ["map:0"]
#  filename "gates-dorothy1-cropped-clean-invert.pnm"
#  resolution 0.1
#  negate 1
#)
#driver
#(
#  name "mapcspace"
#  provides ["6665:map:1"]
#  requires ["6665:map:0"]
#  robot_shape "circle"
#  robot_radius 0.25
#)
#driver
#(
#  name "mapscale"
#  provides ["6665:map:2"]
#  requires ["6665:map:1"]
#  resolution 0.3
#  alwayson 1
#)
#
#driver
#(
#  name "amcl"
#  provides ["localize:0" "position:2"]
#
#  requires ["odometry::position:0" "laser:0" "laser::map:0"]
#
#  init_pose [-20 9 0]
#  init_pose_var [1 1 180]
#
#  pf_max_samples 2000
#  pf_min_samples 100
#
#  update_thresh [0.1 3]
#
#  odom_drift[0] [0.3 0.0 0.0]
#  odom_drift[1] [0.0 0.2 0.0]
#  odom_drift[2] [0.2 0.0 0.2]
#
#  #enable_gui 1
#  #alwayson 1
#)
#driver
#(
#  name "vfh" 
#  provides ["position:1"]
#  requires ["position:0" "laser:0"]
#  cell_size 0.1 
#  window_diameter 61
#  sector_angle 1
#  safety_dist 0.25
#  max_speed 0.5
#  min_turnrate 10
#  max_turnrate 100
#  free_space_cutoff  1000000.0
#  weight_desired_dir 5.0
#  weight_current_dir 3.0
#  distance_epsilon 0.35
#  angle_epsilon 5
#)
#driver
#(
#  name "wavefront"
#  provides ["planner:0"]
#  requires ["position:1" "localize:0" "map:0"]
#  safety_dist 0.25
#  max_radius 1.0
#  dist_penalty 1.0
#  distance_epsilon 0.5
#  angle_epsilon 10
#  replan_min_time 2.0
#  replan_dist_thresh 2.0
#  alwayson 1
#)
#driver
#(
#  name "writelog"
#  provides ["log:0"]
#  requires ["position:2"]
#  autorecord 0
#  alwayson 0
#)
