TCS3200 arduino uno R3 pulsein returns 0

I have the Arduino uno r3 hooked up to the TCS3200 and I am trying to read the color red. For some reason pulsein() is always returning 0. Not sure why? Shouldn't pulsin() return a 0 or some high number?

Here is my Code:

void setup() {
pinMode(2, OUTPUT); //s0
pinMode(3, OUTPUT); //s1
pinMode(4, OUTPUT); //s2
pinMode(5, OUTPUT); //s3
pinMode(10, INPUT); //out
digitalWrite(2,HIGH);
digitalWrite(3,LOW);

Serial.begin(9600);
}

void loop() {
digitalWrite(4,LOW);
digitalWrite(5,LOW);
Serial.println("red");
float p = pulseIn(10, LOW);
Serial.print(p);
//Serial.print(digitalRead(10));
Serial.println();
delay(10000);

/**
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
Serial.println("green");
Serial.print(pulseIn(10, LOW));
//Serial.print(digitalRead(10));
Serial.println();
delay(10000);

digitalWrite(4,LOW);
digitalWrite(5,HIGH);
Serial.println("blue");
Serial.print(pulseIn(10, LOW));
//Serial.print(digitalRead(10));
Serial.println();
delay(10000);
**/
}

Because it timed out after 1 second.