The CMUcam2

Frequently Asked Questions

What are the differences between the original CMUcam (the CMUcam1) and the CMUcam2?


The CMUcam2 includes all of the functionality of the original CMUcam (the CMUcam1) in an enhanced form and a lot of new functionality. Below we briefly describe the new functionality and the differences. You may also want to look at the answer to the question of how to decide whether to purchase a CMUcam1 or CMUcam2.

Hardware Overview

There are two main hardware differences which are important, the CMUcam2 uses a different processor than the CMUcam1 and the CMUcam2 incorporates a frame buffer chip which the CMUcam1 does not.

The CMUcam2 uses the SX52 processor and the CMUcam1 uses the SX28 processor, both from in the SX processor series from Ubicom. In both cases the processor runs at 75 Mhz so there is no difference in processor speed or computational power. The advantages of the new processor are that it has more RAM (262 vs. 136 bytes), more ROM (4096 vs. 2048 words), and more I/O pins. More RAM and ROM meant we could write more code and more complex code which allowed us to incorporate more functionality in the CMUcam2. The larger number of I/O pins meant that we had more pins left over for other functions - like more servos, more configuration jumpers, etc.

The big difference between the two systems is that the CMUcam2 includes the AL422B frame buffer chip from Averlogic where the CMUcam1 does not. This allows the CMUcam2 hardware to quickly capture a single complete frame and store it the frame buffer memory. This has a number of advantages:

Functionality Overview

The CMUcam2 implements all of the functionality of the CMUcam1 and also adds a lot of new functionality. The following is a summary.

With the release of the CMUcam2, will the CMUcam1 still be sold and supported? And why would anyone still want to buy a CMUcam1?

Support / Availability

We will continue to support the CMUcam1 and our licensees tell us that they will continue to sell the CMUcam1.

Why buy a CUMcam1?

Given all the advantages of the CMUcam2, it is reasonable to ask why someone would still want to purchase a CMUcam1. The main issue is cost. Even though the CMUcam2 is not expensive, the CMUcam1 is definitely less expensive. Another issue is size. Even though the CMUcam2 uses surface mount components and is very small, because the CMUcam1 hardware is less complex, it is even smaller. In terms of functionality there is no question, the CMUcam2 wins on all accounts.

What is the difference between using the OV6620 and the OV7620 module with the CMUcam2?


In terms of capabilities, the OV7620 sensor is a higher resolution sensor (664x492 raw sensor locations) than the OV6620 sensor (356x292 raw sensor locations). But this fact has very little to do with the issues which arise when considering which of these sensors best matches your application of the CMUcam2. Following are a list of considerations.


While it is true that the OV7620 sensor is a higher resolution sensor than the OV6620, because of the fixed memory size of the frame buffer of the CMUcam2, the CMUcam2 only supports a single resolution of 160x239 for the OV7620 sensor. The CMUcam2 supports a low resolution mode of 88x143 and a high resolution mode of 176x255 for the OV6620 sensor. So using the OV6620 in high resolution mode one can actually achieve higher resolution operation that the single resolution mode available for the OV7620 sensor.

Frame Rate

Another resolution related issue is maximum frame rate when continuously processing a stream of images. The lower the resolution, the fewer the pixels which need to be processed and the higher the achievable frame rate. Although an increase in frame rate can be achieved by changing the down sampling rate and the virtual window size, the actual number of pixels output by the sensor has a much larger effect. Because of this, the CMUcam2 can achieve a much higher frame rate when the OV6620 is operated in its low resolution mode than the single resolution mode available for the OV7620.

Analog Video Output

Another difference between the two sensors is the format of the analog video output of the two sensors. The OV6620 sensor outputs in analog PAL format and the OV7620 sensor outputs in analog NTSC format. In both cases the output is in black and white.

It is important to note that in most uses of the CMUcam2 the analog output will not be used. In a typical application the results of processing the image or the raw pixels are transmitted digitally via the serial port to the host computer or microcontroller so this is not an issue. However, if live black and white video is important, then you may want to take the format of the analog video output into account.


Our recommendation is that the OV6620 module is the best choice for almost all applications, especially considering its lower cost and the faster processing time achievable with this module. In the rare applications where NTSC monochrome analog video output is required you may want to consider the OV7620.

Are there any known issues with the current CMUcam2 firmware releases?

Yes. In the 1.00 release the "RM" command did not work correctly. The 1.01 release fixes that issue.

The firmware in the CMUcam2 is upgradeable, but an SX-key (or compatible) programmer is needed to do so. You can contact the company you purchased your CMUcam2 from regarding their firmware update policy. The "hex" files for the ROM images are available on the downloads page.

  The Robotics Institute at Carnegie Mellon University was established in 1979
to conduct basic and applied research in robotic technologies.  It is part of the School of Computer Science.