These sensors can be obtained on Amazon/Ebay, are fairly cheap, and work by converting current from photodiodes into a square wave output. Don't expect much from them as they have a lot of limitations but can detect colors and match them to some degree. I noticed an old posting on 43oh about this sensor but it wasn't apparent they were successful so I gave it a try. The photo below shows the sensor and examples from the demonstration sketch I wrote in Energia V16 using the MSP432P401R LaunchPad.
I tried using pulseIn() and got it working quickly on the MSP432. I tried the same code with the F5529 and it was somewhat less successful - it was flaky matching colors which I suspect was due to the limitations of pulseIn() on the F5529. The sensor output is adjustable but I didn't find it worked well at the lowest frequency setting. A better approach for the F5529 would be to use a timer and count pulses but I lost interest :-)
The sensor is sensitive to incidental light/shadows, material properties, distance from subject, and probably all sorts of other things. It is more sensitive to red (and infrared) than other frequencies and the datasheet gives some help but in the end everyone seems to slap something together using the raw readings or just use the raw readings. I didn't find the raw readings useful and developed empirical factors for the frequency response from some colored card stock and made up an algorithm based loosely on an approach I saw in some Arduino code.
The pin connections and code are here for those interested.