UAI CCD Camera Project

Current Project - UAI CCD Variation 

UAI CCD Variation

While searching the Internet for long exposure ideas I came across the Cookbook and Audine camera designs and thought how interesting it would be to build a camera. I looked for similar projects and was surprised that so few exist.

Marco Paolilli, a member of the QCUIAG group, posted a message saying his camera design was progressing so I thought I’d take a look and see what it was all about.

Marco and the team involved in the UAI CCD Project had come up with a simple design to make use of easily available components that wouldn’t be too difficult to build or require any special manufacturing techniques. Their idea was to use through the board components rather than surface mount which can be a bit tricky for amateurs.

I spent some time looking at the high level schematic thinking “I’m sure I could make that” but I wasn’t sure about the USB interface and how that would work. The UAI CCD Project uses a custom USB board from FTDI which has all the electronics neatly packaged into an easy to use board. I wasn’t familiar with the FTDI range so spent some time side-tracked looking through what they had to offer.

When I returned to the UAI CCD design I was struck by the idea that if I replaced the USB245M module with the DLP-2232PB, not only would I have the USB functionality but also the micro-controller which could be programmed through the USB port which again meant the RS232 portion of the design was not required. Could this be right? I can replace 3 of the modules with one easy to use board?

I haven’t programmed a PIC micro-controller before, but I had a little experience with the old Zilog Z80 so wasn’t completely new to low level coding. I downloaded some PDFs on how to program the PIC and to my amazement found it also contains a 10bit Analogue to Digital Converter or ADC. The UAI design uses a 16 bit ADC giving 64K colours or shades, but 10 bit would give 1024 which is huge improvement over the 256 found in most webcams.

So I’ve taken a carefully thought out and constructed design and replaced half of it with some crazy ideas of my own and to top it all decided to use the ICX255 with the 2 dead pixels that came out of my first 1004x as a sensor (see 1004x below).

Seperate BoardsI thought that if I make each of the component parts on a separate board I could change things later on and even add a 16bit ADC at some point.

I built the amplifier using a pin compatible op-amp which was pennies rather than pounds, if it doesn’t work I can always drop the correct chip into the socket. It has a similar construction being low noise high gain MOSFET in design, but I have my doubts and will not be surprised if I have to resort to plan B before too long.

For the vertical drivers I had no choice but to use the MAX333A chips which the Audine Camera also uses. This circuit was again built onto a separate board using headers and ribbon cable to connect them. I’ve been playing with PCs for some time so ribbon cable is something I have in abundance.

When I came to wiring the boards to the micro-controller I realized that by rushing head-first into this I hadn’t considered that the DLP-2232 may not have the same access to the micro-controller as I would have using the chip directly. All thoughts of using the UAI firmware, and software for that matter, were dashed.

So I worked out the pins that I had, and those that I needed, I assigned actions to ports and set about designing the firmware. I learned to code in C, I learned to how to enable and use the built-in ADC and I learned how to control the ports. I also built a Windows application in Delphi to allow me to send control signals to the camera to initiate sequences and view the values returned. I like a challenge.

The Sony Datasheet for the ICX255 has timing diagrams for each of the required signals but I was way out of my depth. I contacted Marco via email as he had already been through this process so had a good idea what I would need to move things along. Although Marco had been working with a different CCD sensor, apart from the voltages used, it seems all the timing elements are the same. Thanks Marco.

So after comparing the timings that I’d calculated to those of Marco’s it appeared that I’d miss understood some of the basic concepts. I rewrote the firmware that evening and switched the action assigned to 2 pins to allow my horizontal pulse and RG signal to occur simultaneously.

That's as far as I've gotI haven’t got much further at the moment. I have vertical signals that look like they should. I have horizontal signals that again look correct, all voltages are correct and I’m sure I’m very close. I should be able to vary the signal coming from the CCD board by covering it or allowing light onto it but in both cases the signal appears to be saturated. The good news is the Op-Amp circuit seems to work and the output is the amplified, inverted pixel value. The bad news is that it takes in excess of 20 seconds to read a single frame (2 fields).

Sample Output Sample Output Sample Output

Apart from some strange patterns I haven’t had a sensible output from the camera yet, but will give it some thought as time permits. At least the power supply I built for it works!

Leave a Reply