GPIOA:
   0-9  = ADC 0-9
    6   = Input1 (Pickup Zero)
    7   = Input2 (Ramp zero)
    8   = Input3 (Pickup End)
    11  = Input 4
    12  = Input 5
    15  = Input 6
GPIOB:
   3-6  = Stepper1
   7-10 = Stepper2
    11  = Pickup Solinoid
    12  = Extra  Solinoid
     

Stepper motor connectors:
2  4  6  8 10 12
1  3  5  7  9 11

 1+2    = Phase1        Brown
 3+4    = Phase2        Yellow
 5+6    = Phase3        Green
 7+8    = Phase4        Blue
 9+10   = n/c           Orange
11+12   = +12v          Violet

Solinoid connector:
2  4  6
1  3  5

 1+2    = Solinoid11    Brown   (pickup)
 3+4    = Solinoid12    Grey
 5+6    = +12v          Violet

I/O connector
2  4  6  8 10 12 14
1  3  5  7  9 11 13

 1+2    = Gnd           DarkBrown
  3     = Input1        Brown#1
  4     = Input4        Yellow
  5     = Input2        Brown#2
  6     = Input5        Orange
  7     = Input3        Brown#3
  8     = Input6        Blue
  9     = Analog0       Brown#4
 10     = Analog1       Green
 11     = Output13      Brown#5
 12     = Output14      Grey
13+14   = +5v           REd

Controller commands:

Sm              = Select motor          (m=1-2)
G p [e [s [e]]] = Go                    (p=0-9999 e=0-6 s=1-100 f-1-100)
C [m [s]]       = Calibrate             (m=0-9999 s=1-100)
W               = Wait for operation
P               = show Position
A a             = read Analog           (a=0-9)
I i             = read Input            (i=0-6)
V               = View controller info
H               = Halt movement
R               = Reset controller
N o             = turn oN output        (o=0-15)
F o             = turn oFf output       (o=0-15)

R{A-E} b        = Raise bit gpio{A-E}   (b=0-15)
D{A-E} b        = Drop bit gpio{A-E}    (b=0-15)
W{A-E} v        = Write gpio{A-E}       (v=0-FFFF)
V{A-E} [b]      = View gpio{A-E}        (b=0-15)
C{A-E} b m c    = Configure gpio{A-E}   (b=0-15) m=0-3 c=0-3)
    m = Mode: 0=Input   1=Out10mhz  2=Out2mhz       3=Out50mhz
    c = Config:
        I: 0=Analog     1=Floating  2=Pullup/down   3=n/a
        O: 0=PushPull   1=OpenDrain 2=AltPushPull   2=AltOpenDrain
MD a            = Memory Dump           (a=0-FFFFFFFF)
MRB a           = Memory Read Byte      (a=0-FFFFFFFF)
MRH a           = Memory Read Halfword  (a=0-FFFFFFFF)
MRW a           = Memory Read Word      (a=0-FFFFFFFF)
MWB a b         = Memory Write Byte     (a=0-FFFFFFFF b=0-FF)
MWH a b         = Memory Write Halfword (a=0-FFFFFFFF b=0-FFFF)
MWW a b         = Memory Write Word     (a=0-FFFFFFFF b=0-FFFFFFFF)
ADR a           = Analog->Digital Read  (a=0-17)
DBG [m]         = view/set DeBuG mask   (m=0-FFFF)
