ayuda porfavor arduino motor paso a paso ULN2803A

tengo que hacer mover un motor paso a paso izquierda, derecha y stop presionando las teclas I.D y S, junto con Arduino uno y un puente Darlington ULN2803A pero no funciona, las salidas 8,9,10 y 11 están conectadas en las entradas 1,2,3 y 4.
y las salen en 18(1),17(2),16(3),15(4) tomando en cuenta esta imagen http://tinyurl.com/a7l33hg
hacia el motor de 5 hilos el cual 1 es la tierra
así se ve como esta conectado
http://tinyurl.com/awpwzdb
http://tinyurl.com/b224n5u
http://tinyurl.com/abq7f53
http://tinyurl.com/agtxxj3
http://tinyurl.com/bau4q6m

int motorPin1 = 8;
int motorPin2 = 9;
int motorPin3 = 10;
int motorPin4 = 11;
int delayTime = 20;
int contador = 25;

void setup() {

pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
pinMode(motorPin3, OUTPUT);
pinMode(motorPin4, OUTPUT);

Serial.begin(9600);
Serial.println("Arduino Motor Control");
Serial.println("Girar Izquierda");
Serial.println("Girar Derecha");
Serial.println();

}
void izq(){

if(Serial.read() == 105)

{
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, LOW);
delay(delayTime);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, LOW);
delay(delayTime);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime);
}
}
void derecha() {

if(Serial.read() == 100)
{

digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, HIGH);
delay(delayTime);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, HIGH);
digitalWrite(motorPin4, LOW);
delay(delayTime);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, LOW);
delay(delayTime);
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(motorPin3, LOW);
digitalWrite(motorPin4, LOW);
delay(delayTime);
}
}
void loop()
{
derecha();
delay(1000);
izq();
delay(1000);

}

hola solo por preguntar. por que no usas la libreria de paso a paso? no es mas facil eso?
yo me hice un tacometro con un motor pap usando la libreria. recuerdo que probando tambien movi el pap con el serial....

como la verdad soy medio novato aqui y no se que tanto sabes... te paso el link del ejemplo clasico de paso a paso. http://arduino.cc/es/Tutorial/MotorKnob