Skip to content
  • David Johnson's avatar
    This commit adds software reset of the brainstem modules. First, the Moto · 1784c13d
    David Johnson authored
    is reset, then the GP (it seems that the GP acts as the I2C router... so
    moto has to be reset first -- this may not be true, not sure yet).  Reset
    can be toggled in pilot by sending a USR2 to the pilot process.  If reset
    is sent while robot is executing any sort of move, the only way to recover
    is to kill pilot.  Reset can be toggled whenever the robot is not moving
    without consequence (obviously, brainstem state (including wheel odometry)
    is lost).  There is also a separate reset command (brainstem-reset) that
    works independently.  This command is now called in the pilot-wrapper.sh
    script before pilot is (re)started.
    
      * GNUmakefile.in: new target `brainstem-reset'.
    
      * garcia-pilot.cc: not much.
    
      * garciaUtil.cc: the brainstem_reset function.
    
      * garciaUtil.hh: prototypes...
    
      * pilot-wrapper.sh: call brainstem-reset (NOTE: this always fails the
        first time, and I'm not sure why.  It always succeeds subsequently...
        so it makes no difference at the moment).
    
      * brainstem-reset.cc: new command to reset the brainstem modules.
    1784c13d