Linear CCDs are an exceptionally cool component. They can be used for DIY spectrometers, and if you’re feeling very adventurous, a homemade version of those crappy handheld scanners of the early 90s. Linear CCDs don’t see much use around these parts, though, which makes [esben]’s Hackaday Prize entry very cool. He’s building a breakout to make using these linear CCDs easier.
A linear CCD module looks like an overgrown DIP chip with a glass window right on top of a few thousand pixels laid out in a straight line. The data from these pixels isn’t output as a series of ones and zeros, though: its old school, and the data this CCD produces is analog. This means reading light from one of these modules requires a fast microcontroller with a good ADC.
For this project, [esben] is using a Nucleo F401RE, a development board built around an STM32F4 microcontroller. This processor is fast enough to read the data off its 12 bit ADC, and store all three thousand pixels. Now the problem is getting this data off the microcontroller and onto some storage. With a UART limited to 230kB/s, each ‘frame’ of the CCD takes 300ms to transfer to a computer. [esben] really wishes that could be done a little faster, so he’s trying to hack the DMA controller to do his bidding. It looks like [esben] is on track to make a fast interface for a very common linear CCD, which means more cool tools and toys for all of us.