Primary commands used
0123456789 ()!?#.* ABEFGHLRSUVWX abcilmnrstvw
   
COMMANDS
======== 
'Q',[Esc] - quit all, go to command mode
'.' - quit current operation - recording, playing, input
'S' - Stop/Start
'(' - start of a Do, a jump to an Act will on . continue in the Do,
      will show its location in EEPROM when played.
      If a jump is made to an Act which contains another Do then that Do 
      will not be implemented.
')' - end of a Do
      will show its location in EEPROM when played
'0' - use page0 for the next Act or command
'!' - use page3=Reacts for the next ReAct or command
'1'-'8' the routine or Act to record, replay, load etc
'9' - play Autorun act
'F' - Forwards one step
'B' - Backwards one step
'R' - turn Right one step
'L' - turn Left one step
'H' - Halt with both feet together
'V' - Voice, make a beep, whee
'U' - read Ultrasonic sensor and react to objectRange using reactUObjects() and ReActs in EEPROM
'W' - read Whisker sensors and avoid holes (if any) using reactObstacles() and ReActs in EEPROM
'G' - read Beard sensors and avoid obstacles (if any) using reactHoles() and ReActs in EEPROM
'A' - beAlive()  until '.' or Esc or reset      // the loop() from B_PM22_BeAlive
'X' - Xplore()   until '.' or Esc or reset      // Wander()
'E' - Experiment - user routine  until '.' or 'Q' or Esc or reset
'a','0' - Xplore         0 for IR
    {'1','b' - bip       1 for IR
    {'2','e' - whee      2 for IR
    {'3','o' - whoa      3 for IR
    {'4','c' - chatter   4 for IR
    {'5','r'}{'1'-'9'  rock
    {'6','s'}{'1'-'9'  shuffle
    '9' beAlive          9 for IR
    '-' turnUSto
    '+' turnUSaway
'i','w'{0-3  Whisker LEDS  
    't'{0-3  Toe LEDS  
'v','b' - bip
    'e' - whee       
    'o' - whoa
    'c' - chatter
    '$' - test Whiskers, scream until quit
'w', '1'-'9' - wait 1 - 9 seconds 
'n', '1'-'9' - wait 1 - 9 seconds/10 
's','1'-'9' set speed, both roll and pace speeds set to the same
    'u' - speedup, speed up/down enabled, speed is increased by 1 up to max
    'd' - speed down, speed up/down enabled, speed is divided by 2 down to 1
    'r','1'-'9' set roll speed          units of 4 servo degrees
    'p','1'-'9' set pace speed          units of 4 servo degrees
    'm' - set rollspeedmax to current rollspeed, 4 servo degrees
    'rm' - set rollspeedmax to current rollspeed
    'pm' - set pacespeedmax to current pacespeed
't','a' - turn Away from leading foot,        will be used in avoid Acts
    'm' - turn Memory (same way as last turn, will be used in avoid Acts
    'o' - turn Other way from last time,      will be used in avoid Acts
    'l' - turn to light
    'd' - turn to dark
    '+' - US turn away
    '-' - US turn to
    '@l' - turn until @ light
    '@d' - turn until @ dark
    '@-' - turn until @ USnear
    '@+' - turn until @ USfar    
'm','0'-'9' - set probability level of following commands to } being executed
'u','<','0'-'9',cmnds'}' - do cmnds if ultrasonic objectRange < digit  eg u<2FV} - do FV if closer than 2
'u','>','0'-'9',cmnds'}' - do cmnds if ultrasonic objectRange > digit
    '}' - end of a mind    
BEHAVES
( #$@ 012345678 alpqrstuw  GUW )
'b0' - reload current behaviour to RAM BeHaves
'b','1'-'8' - set current default behaviour and copy to RAM BeHaves
    's','1'-'8' - save current RAM BeHaviour to EEPROM Behaviour
        '0'     - save RAM BeHaves to current EEPROM Behaviour
    'l','1'-'8' - load EEPROM behaviour 1-8, at prompt enter BeHave number and BeHave data
           eg bl4 prompt 30,85.      load slot 4 position 30 with 85 and quit loading
           eg bl5 prompt 30,85,20,2. load slot 5 position 30 with 85 and position 20 with 2 and quit loading
        '9' - load entry in all behaviours  
           eg bl9 prompt 22,B.      load group 'B' to all Behaviours and quit loading
           eg bl9 prompt 22,B,21,2. load group 'B', name 2 to all Behaviours and quit loading
    '#','A'-'z' - robot name  A-z
        '0'-'9' - robot group 0-9
    'a','0'-'8' - set Autorun act '1' - '8', '0' no Autorun act   
    'a','9'     - set Autorun act to run when there is nothing else to do, ## turns it off 
                  not remembered through reset/power-off - default off  
    'q' - Quiet - turn off status messages, ## restores
    'v','0','1' - verbose, report sensor values when read, 0=off, 1=on
    'w0' - turn off walking 
    'w1' - turn on walking
    'wf' - forwards,  set stepping direction in L and R, used in Reactions 
    'wb' - backwards, set stepping direction in L and R, used in Reactions
    'p','1'-'9' - set paceby - step length                units of 4 servo degrees
    't','1'-'9' - set turnby - step length in turns       units of 4 servo degrees
    'r','1'-'9' - set rollby - roll amount when stepping  units of 4 servo degrees
    'p+','0'-'9' - alter paceC in current behaviour in RAM - +ve offset from paceC in current behaviour in EEPROM
    'p-','0'-'9' - alter paceC in current behaviour in RAM - -ve offset from paceC in current behaviour in EEPROM
    'r+','0'-'9' - alter rollC in current behaviour in RAM - +ve offset from rollC in current behaviour in EEPROM
    'r-','0'-'9' - alter rollC in current behaviour in RAM - -ve offset from rollC in current behaviour in EEPROM
    'um+' - set manually SonarAwareAt, units 50mm
    'um-' - set manually SonarTooNear, units 50mm
    'u+','0'-'9' - set SonarAwareAt, units 50mm    
    'u-','0'-'9' - set SonarTooNear, units 50mm    
    'uc0' - Sonar distance in inches   
    'uc1' - Sonar distance in centimetres      
    'us' - save current Sonar settings to EEPROM
    'G','0','1' - react to Ground holes,      0=off, 1=on
    'W','0','1' - react to Whisker obstacles, 0=off, 1=on
    'U','0','1' - react to Ultrasonic ojects, 0=off, 1=on
    '$','0','1' - Automatically sense UWG before every command if reaction enabled, 0=off, 1=on
    '@' - Adjust Servos
          'Q' or '.' or 'Esc' to quit adjusting
          'I' to display instructions
          '*' to display current EEPROM values
          '-' adjust Servo position -ve
          '+' adjust Servo position +ve
          '/' to change servo
          'C' save the Roll or Pace positions as default Centre angles RollC or PaceC to EEPROM 
          'R' save the Roll amount as default to EEPROM 
          'P' save the Pace length as default to EEPROM
          'S' Stand with the servos at RollC and PaceC 
SYSTEM
'r',('0'),'1'-'8' - Record moves into selected Act in EEPROM
'c',('0'),'1'-'8','1'-'8' -  copy one Act to another Act, xy,x0y,0xy,0x0y
'l',('0'),'1'-'8' - load Act, like 'r' but records commands into EEPROM without playing them
'?','hh' - print all Help
    'ha' - print Help Act
    'hb' - print Help Behaviour
    'hs' - print Help System
    '1'-'8' - Print moves in selected Act '1' - '8', for '01'-'08' enter '0' first
    'p' - print current Page
    '?' - print current Page
    'd' - Dump out all acts to the PC, same as 'p' but without the Act and moves numbers.
    'b' - print Behaviour - behaviour variables in RAM
    'B' - print all Behaviours in EEPROM
    'm' - print Mind - all Acts, Behaviour
    '!' - print ReActs
    'U' - print US sensor
    'E' - print Eye sensors
    'W' - print Whisker sensors
    'T' - print ToeWhisker sensors
    'O' - print Obstacles
    'G' - print Ground sensors
'#','0' - message for all robots, robots silent
    '1-9' - message for robot group 1-9, robots silent
    'A-z' - message for robot name A-z in current group, other robots silent
    '#' - (default) robots stop, obey all commands and send messages     
          useful to talk to an unknown robot or put all in the stopped state
          turns off AutoSense, b$1 turns it on 
    '<' - do Default Act (enables walking, useful if using IR and behaviour default is walking off)
    '>' - resume Act     (enables walking, useful if using IR and behaviour default is walking off)
    '?' - all robots reply with their name and group - delayed according to name
	'.' - end a # session
'*','i','M' - initialise EEPROM, ignored if recording
  *r and *w will allow a higher processor to access the whole of the EEPROM
'*','r'<EEadress>',' - read EERPOM address
'*','w'<EEadress>','<behaveValue>','   - write EERPOM address, behaveValue
   
The whiskerLEDs glowing dim indicate Bambino is ready for a command.
If other keys are pressed, including lower case keys, then the Whisker LEDs will flash badkey().
(MM - mouth glows dim while ready and Beard LEDs used for badkey().) 

RESPONSES
sense44.ino - readLight()  // read ambient Light levels   0 - 1023
  [a<LeyeLight>|<ReyeLight>]
sense44.ino - readWhiskers()
  [W<LwhiskerLight>,<LwhiskerDark>,<LwhiskerLight -LwhiskerDark>|<RwhiskerLight>,<RwhiskerDark>,<RwhiskerLight -RwhiskerDark>]
sense44.ino - readBeard()
  [B<LbeardLight>,<LbeardDark>,<LbeardLight -LbeardDark>|<RbeardLight>,<RbeardDark>,<RbeardLight -RbeardDark>]
sense44.ino - showObstacles()
  [o%<f_obstacleLeft><f_obstacleRight>]
sense44.ino - showHoles()
  [h%<f_holeLeft><f_holeRight>]
=============================================================
