Available Controls

This text is dumped from the online help in version 2.3.  Additional commands for navigation through the menus are described in Level 2: Console.

  1. Mode Switch: Contains the "major" applications - mutually exclusive selection
    1. Hello World: A little demo of text output
    2. Alan's Behavior: Lifts the left/right front legs higher as more pressure is applied to the front/back head buttons
    3. Follow Head: Walks whereever you point the head - press the chin button to loosen the head, release to lock it
    4. Stare at Pink Ball: Tracks any pink objects seen by the vision system
    5. Simple Chase Ball:
    6. Chase Ball: Follows ball with head and walks whereever the head is pointing
    7. Sound Test: Plays different sounds when buttons are pressed. Holding the chin button queues the sounds.
    8. Look at Sound: Looking for Sound Behavior Class
    9. State Machine Demos: More fully developed demo applications
      1. -WalkToTarget: Class WalkToTarget: walks towards a visual target until it gets "close"
      2. Bandit State Machine: Plays k-armed bandit with a computer
      3. Explore State Machine:
      4. Pace Targets State Machine:
    10. Kinematics Demos: Showcases some of the newly developed kinematics code
      1. Kinematic Sample 1: Uses kinematics to mirror leg positions (note that it mirrors the paw position - not necessarily the joint angles used to get there!)
      2. Kinematic Sample 2: Uses kinematics to make the back toe (Toe{LR}BkPaw) touch the lower thigh (Lower{LeftBackL,RightBackR}FrThigh)
      3. Stare at Paw (pre-2.2): Uses kinematics to track the paw which last received a button press with the camera
      4. New Stare at Paw: Uses kinematics to track the paw which last received a button press with the camera
      5. Ground Plane Test: Reports the location of the center of the camera image on the ground plane
      6. Wall Test: Measures the relative angle of surrounding walls
  2. Background Behaviors: Background daemons and monitors
    1. #Flash IP Address: Class FlashIPAddrBehavior: Displays IP address by flashing a series of numbers on the LED face panel; Hold down ChinBut and HeadBut to trigger any time while running
    2. Simple Chase Ball:
    3. Stare at Ball: Tracks any pink objects seen by the vision system
    4. Head Level: Uses the internal accelerometers to attempt to keep the head level.
    5. Wag Tail:
    6. Relax: Sets PID parameters for all applicable joints to 0, allowing the joints to move freely, reducing noise and power consumption
    7. Camera: Push head button to save a picture
    8. ASCIIVision: streams low-resolution ASCII-art of the camera image to sout
    9. Debugging Tests: Stress tests
      1. Motion Stress Test: uses a separate MotionCommand for each of several joints to test for region leaks
      2. Crash Test: A little demo of blocking output before a crash after output #33 (yes, this crashes the AIBO)
      3. Freeze Test: A little demo of a Main process infinite loop freeze (yes, this hangs the AIBO)
    10. System Daemons: Provide some common sensor or event processing
      1. Auto Getup: Monitors gravity's influence on the accelerometers - if it seems the robot has fallen over, it runs appropriate getup script
      2. #World State Vel Daemon: Class WorldStateVelDaemon: Keeps the WorldState's velocity fields up to date
      3. #Battery Monitor: Class BatteryMonitorBehavior: Reports the current battery status, and starts flicks the ears to warn when it gets too low
  3. TekkotsuMon: Servers for GUIs
    1. Head Remote Control: Listens to head control commands coming in from port 10052
    2. Walk Remote Control: Listens to walk control commands coming in from port 10050
    3. View WMVars: Brings up the WatchableMemory GUI on port 10061 (connects to WMMonitorBehavior, this just launches the GUI)
    4. #Watchable Memory Monitor: Class WMMonitorBehavior: Bidirectional control communication with WMMonitor on port 10061
    5. Aibo 3D: Listens to aibo3d control commands coming in from port 10051
    6. World State Serializer: Sends sensor information to port 10031 and current pid values to port 10032
    7. Raw Cam Server: Forwards images from camera over port 10012
    8. Seg Cam Server: Forwards segmented images from camera over port 10012
    9. #EStopControllerBehavior: Class EStopControllerBehavior: Listens to estop commands coming in from port 10053
    10. -Microphone Server: Class Microphone Server: Microphone Server
    11. -Speaker Server: Class Speaker Server: Speaker Server
  4. Status Reports: Displays information about the runtime environment on the console
    1. Behavior Report: Generates a summary of currently instantiated behaviors
    2. Battery Check: Reports % power remaining, and gives details on console
    3. Profiler Check: Reports time spent in all of the profiled sections in all processes
    4. Event Logger: Allows you to see/log all of the un-trapped events as they are generated
      1. [ ] unknownEGID: Show/hide events from unknownEGID
      2. [ ] aiEGID: Show/hide events from aiEGID
      3. [ ] audioEGID: Show/hide events from audioEGID
      4. [ ] buttonEGID: Show/hide events from buttonEGID
      5. [ ] erouterEGID: Show/hide events from erouterEGID
      6. [ ] estopEGID: Show/hide events from estopEGID
      7. [ ] locomotionEGID: Show/hide events from locomotionEGID
      8. [ ] micOSndEGID: Show/hide events from micOSndEGID
      9. [ ] micRawEGID: Show/hide events from micRawEGID
      10. [ ] micFFTEGID: Show/hide events from micFFTEGID
      11. [ ] motmanEGID: Show/hide events from motmanEGID
      12. [ ] powerEGID: Show/hide events from powerEGID
      13. [ ] sensorEGID: Show/hide events from sensorEGID
      14. [ ] stateMachineEGID: Show/hide events from stateMachineEGID
      15. [ ] testmsgEGID: Show/hide events from testmsgEGID
      16. [ ] timerEGID: Show/hide events from timerEGID
      17. [ ] visOFbkEGID: Show/hide events from visOFbkEGID
      18. [ ] visRawCameraEGID: Show/hide events from visRawCameraEGID
      19. [ ] visInterleaveEGID: Show/hide events from visInterleaveEGID
      20. [ ] visJPEGEGID: Show/hide events from visJPEGEGID
      21. [ ] visSegmentEGID: Show/hide events from visSegmentEGID
      22. [ ] visRLEEGID: Show/hide events from visRLEEGID
      23. [ ] visRegionEGID: Show/hide events from visRegionEGID
      24. [ ] visObjEGID: Show/hide events from visObjEGID
      25. [ ] wmVarEGID: Show/hide events from wmVarEGID
      26. [ ] worldModelEGID: Show/hide events from worldModelEGID
      27. Verbosity (0): Controls verbosity level: 0=name,type; 1=0+duration,timestamp; 2=1+magnitude; 3=2+subclass info
      28. [X] Console Output: If selected, outputs events to the console
      29. [ ] File Output: Please enter the filename to log to (in /ms/...)
    5. Sensor Observer: Allows you to see/log the sensor data
      1. [ ] Console Output: If selected, outputs events to the console
      2. [ ] File Output: Please enter the filename to log to (in /ms/...)
      3. Real-Time View: Please enter the filename to log to (in /ms/...)
      4. Real-Time Update Period: Please enter the filename to log to (in /ms/...)
      5. Help:
        [...]
      6. Sensors:: Toggles logging of various sensors
        [...]
      7. Buttons:: Toggles logging of various buttons
        [...]
      8. Outputs:: Toggles logging of various outputs' positions
        [...]
      9. Duties:: Toggles logging of various PID joint's duty cycles
        [...]
    6. #Free Memory Report: Reports size of free memory, and monitors for low memory warning
      1. Toggle: Toggles the behavior's activation
      2. Free Mem: unknown:
      3. Report Frequency (-1): Controls how often to generate free memory reports (in milliseconds)
      4. Low Memory Threshold (256): Controls when to start warning about low memory (in KB)
      5. Monitor Frequency (1000): Controls how often to check for low memory (in milliseconds)
    7. Network Status: Displays current network status such as wireless signal strength
  5. File Access: Access/load files on the memory stick
    1. Load Posture: Loads a posture from user-selected file
    2. Save Posture: Saves current posture to filename read from user
    3. Posture Editor: Allows you to load, save, and numerically edit the posture
      1. Load Posture: Select a posture to open
      2. Save Posture: Please enter the filename to save to (in /ms/data/motion)
      3. <>Weights: Set the weights for outputs
        [...]
    4. Run Motion Sequence: Runs a motion sequence from a user-specified file
    5. Play Sound: Plays a sound from a user specified sound file
    6. WaypointWalkControl: Allows interactive control and execution of a set of waypoints
      1. Execute: Begin running waypoint list
      2. [ ] Loop Waypoints: When last waypoint is reached, start over
      3. Add Egocentric Waypoint: Appends a new egocentric waypoint (heading and location relative) at the end of the list
      4. Add Offset Waypoint: Appends a new offset waypoint (location relative) at the end of the list
      5. Add Absolute Waypoint: Appends a new absolute waypoint at the end of the list
      6. Load Waypoints: Reads a path from a file
      7. Save Waypoints: Writes the current path to a file
      8. Drift Error Correction: Enter 3 numbers 'x y a' reprenting current error
    7. Walk Edit: Edit the walk parameters
      1. -WalkControllerBehavior: Class WalkControllerBehavior: Listens to walk control commands coming in from port 10050
      2. Slow Motion (1): Please enter a new value for Slow Motion
      3. Body: Edit the walk parameters
        1. Body Height (105): Please enter a new value for Body Height
        2. Body Angle (0.20944): Please enter a new value for Body Angle
        3. Hop (0): Please enter a new value for Hop
        4. Sway (0): Please enter a new value for Sway
        5. Period (670): Please enter a new value for Period
        6. Use Diff Drive (0): Please enter a new value for Use Diff Drive
        7. Sag (0): Please enter a new value for Sag
      4. Neutral: Edit the walk parameters
        1. NeuLeg[xFL] (120): Please enter a new value for NeuLeg[xFL]
        2. NeuLeg[xFR] (120): Please enter a new value for NeuLeg[xFR]
        3. NeuLeg[xBL] (-90): Please enter a new value for NeuLeg[xBL]
        4. NeuLeg[xBR] (-90): Please enter a new value for NeuLeg[xBR]
        5. NeuLeg[yFL] (80): Please enter a new value for NeuLeg[yFL]
        6. NeuLeg[yFR] (-80): Please enter a new value for NeuLeg[yFR]
        7. NeuLeg[yBL] (70): Please enter a new value for NeuLeg[yBL]
        8. NeuLeg[yBR] (-70): Please enter a new value for NeuLeg[yBR]
        9. NeuLeg[zFL] (0): Please enter a new value for NeuLeg[zFL]
        10. NeuLeg[zFR] (0): Please enter a new value for NeuLeg[zFR]
        11. NeuLeg[zBL] (0): Please enter a new value for NeuLeg[zBL]
        12. NeuLeg[zBR] (0): Please enter a new value for NeuLeg[zBR]
      5. lift_vel: Edit the walk parameters
        1. liftLeg[xFL] (0): Please enter a new value for liftLeg[xFL]
        2. liftLeg[xFR] (0): Please enter a new value for liftLeg[xFR]
        3. liftLeg[xBL] (0): Please enter a new value for liftLeg[xBL]
        4. liftLeg[xBR] (0): Please enter a new value for liftLeg[xBR]
        5. liftLeg[yFL] (0): Please enter a new value for liftLeg[yFL]
        6. liftLeg[yFR] (0): Please enter a new value for liftLeg[yFR]
        7. liftLeg[yBL] (0): Please enter a new value for liftLeg[yBL]
        8. liftLeg[yBR] (0): Please enter a new value for liftLeg[yBR]
        9. liftLeg[zFL] (100): Please enter a new value for liftLeg[zFL]
        10. liftLeg[zFR] (100): Please enter a new value for liftLeg[zFR]
        11. liftLeg[zBL] (200): Please enter a new value for liftLeg[zBL]
        12. liftLeg[zBR] (200): Please enter a new value for liftLeg[zBR]
      6. down_vel: Edit the walk parameters
        1. downLeg[xFL] (0): Please enter a new value for downLeg[xFL]
        2. downLeg[xFR] (0): Please enter a new value for downLeg[xFR]
        3. downLeg[xBL] (0): Please enter a new value for downLeg[xBL]
        4. downLeg[xBR] (0): Please enter a new value for downLeg[xBR]
        5. downLeg[yFL] (0): Please enter a new value for downLeg[yFL]
        6. downLeg[yFR] (0): Please enter a new value for downLeg[yFR]
        7. downLeg[yBL] (0): Please enter a new value for downLeg[yBL]
        8. downLeg[yBR] (0): Please enter a new value for downLeg[yBR]
        9. downLeg[zFL] (-100): Please enter a new value for downLeg[zFL]
        10. downLeg[zFR] (-100): Please enter a new value for downLeg[zFR]
        11. downLeg[zBL] (-100): Please enter a new value for downLeg[zBL]
        12. downLeg[zBR] (-100): Please enter a new value for downLeg[zBR]
      7. lift_time: Edit the walk parameters
        1. liftimeLeg[FL] (0): Please enter a new value for liftimeLeg[FL]
        2. liftimeLeg[FR] (0.5): Please enter a new value for liftimeLeg[FR]
        3. liftimeLeg[BL] (0.5): Please enter a new value for liftimeLeg[BL]
        4. liftimeLeg[BR] (0): Please enter a new value for liftimeLeg[BR]
      8. down_time: Edit the walk parameters
        1. downimeLeg[FL] (0.5): Please enter a new value for downimeLeg[FL]
        2. downimeLeg[FR] (1): Please enter a new value for downimeLeg[FR]
        3. downimeLeg[BL] (1): Please enter a new value for downimeLeg[BL]
        4. downimeLeg[BR] (0.5): Please enter a new value for downimeLeg[BR]
      9. calibration: Edit the walk parameters
        1. Interactive Calibration: Leads you through the process of calibrating the current walk
          1. Help:
          2. Load Data Set: Load data files - select any file from the set, all will be loaded
          3. Save Data Set: Saves current data (/ms)
          4. Take Measurements: Begins the data gathering process
          5. Clear Data: Clear the current data and start over
        2. Load Calibration...:
        3. forward max_accel (0): Please enter a new value for forward max_accel
        4. reverse max_accel (0): Please enter a new value for reverse max_accel
        5. strafe max_accel (0): Please enter a new value for strafe max_accel
        6. rotate max_accel (0): Please enter a new value for rotate max_accel
        7. forward max_vel (160): Please enter a new value for forward max_vel
        8. reverse max_vel (156): Please enter a new value for reverse max_vel
        9. strafe max_vel (103): Please enter a new value for strafe max_vel
        10. rotate max_vel (2.03): Please enter a new value for rotate max_vel
      10. Load Walk: Loads a set of walk parameters from a file specified by user
      11. Save Walk: Saves Walk parameters to filename read from user
    8. Files: Dumps a user specified file to the console
  6. Vision Pipeline: Start/Stop stages of the vision pipeline
    1. #RawCameraGenerator: Class RawCameraGenerator: RawCameraGenerator
    2. #InterleavedYUVGenerator: Class InterleavedYUVGenerator: InterleavedYUVGenerator
    3. #ColorJPEGGenerator: Class JPEGGenerator: ColorJPEGGenerator
    4. #GrayscaleJPEGGenerator: Class JPEGGenerator: GrayscaleJPEGGenerator
    5. #SegmentedColorGenerator: Class SegmentedColorGenerator: SegmentedColorGenerator
    6. #RLEGenerator: Class RLEGenerator: RLEGenerator
    7. #RegionGenerator: Class RegionGenerator: RegionGenerator
    8. #PinkBallDetectionGenerator: Class BallDetectionGenerator: PinkBallDetectionGenerator
    9. #BlueBallDetectionGenerator: Class BallDetectionGenerator: BlueBallDetectionGenerator
    10. #HandBallDetectionGenerator: Class BallDetectionGenerator: HandBallDetectionGenerator
  7. Shutdown?: Confirms decision to reboot or shut down
    1. Shutdown: Turns the Aibo off
    2. Reboot: Reboots the Aibo
  8. Help: Recurses through the menu system and outputs the name and description of each item