CMUcam2 Serial Port Diagnostics

For those that might be interested, I’ve created a utility application that can be used to verify the proper operation of your robot controller’s serial ports, CMUcam2, TTL to RS232 conversion circuit, and cables. The code can be found here: Here’s the readme file:

FRC robot controller serial port diagnostics is a utility to
test the serial ports of your robot controller. It simply
takes all data sent to the programming port and sends it back
out the TTL-level serial port and conversely takes all data
sent to the TTL-level serial port and sends it back out the
programming port. Two important tests can be performed with
this software:
1) First is a loop-back test, which tests the the transmit
and receive circuits of both serial ports at the same time.
To perform this test, attach the programming cable between
your computer and robot controller and using the IFI loader,
upload the serial_port_diagnostics.hex file included with
this project. Once you've done that and see the text "Serial 
Port Diagnostics Running..." on your terminal window, remove
power from your robot controller and install the IFI TTL to
RS232 interface board and PWM cable that came with your 
CMUcam2. Now short the red and white pins together with a
small piece of wire or a 0.1" jumper block. Now apply power
to your robot controller and once the "Serial Port Diagnostics 
Running..." text appears, type some characters into the "To
Port ->" box under the terminal window and press the enter
key. Did the same characters appear on your terminal window?
If not, make sure everything is connected properly and try the 
test again. If the correct characters did appear, you know that 
your serial ports, TTL to RS232 board and cable are working.
2) The second test involves plugging the PWM cable back into 
your CMUcam2 and applying power to the robot controller and
CMUcam2. Once the "Serial Port Diagnostics Running..." text
appears, Click within the "To Port ->" window and press the
enter key a few times. Did the text "ACK" or "NCK" appear on 
your terminal window? If not, it means that your camera is
either misconfigured (e.g., wrong baud rate) or defective.
If you got at least one "ACK" back from the camera, you know
that you can successfully communicate with your CMUcam2.


I did your first test but it did not display Serial
Port Diagnostics Running in the terminal.

I have done your second test and it still didn’t display Serial
Port Diagnostics Running.

I even tried both the tests with the camera from last year.

Did you try hitting the reset button?


Yes mulitple times

I’m pretty clueless here. You’re able to load the camera code, but it reports, via serial port one, that it can’t find the camera on serial port two. Now, not even serial port one works. You’ve got solid green lights on the robot controller and the tethered operator interface, right? Are you loading the code using a real serial port (i.e., not a USB port with a serial converter)? You’re using IFI Loader 1.0.12?


I am not using USB port with a serial converter but what do you mean by a tethered operator interface. My serial cable is plugged into the program port of the robot controller if that’s what you mean.

You must have an operator interface connected to the robot controller before the robot controller will run your code.


I finally got someting in the terminal window. It gives and bunch of options for changing color values. What do I do know that camera doesn’t track. And it never displays searching. But sometimes it doesn’t display anything at all. I re downloaded the code but this time nothing was in the terminal window

Do you have the operator interface tethered, via the red cable, to the robot controller?


Yes, we do. By typing com1 at the bottom of the terminal window we get color values but I don’t know what to do next.

Actually, all you need to do is type the letter ‘c’ to bring up the camera menu. Typing the letter ‘t’ will bring up the tracking menu. This is all documented in the camera software.

I’m not sure if I asked this before, but can you load the IFI default code? Does it work?

You need to re-load the serial_port_diagnostics.hex file and hit the reset button. Then follow the included instructions to make sure you can communicate with the camera. If you don’t get the “Serial Port Diagnostics Running…” message, I don’t have a clue what might be happening here.


I loaded the serial port diagnostics but still don’t see the Serial Port Diagnostics Running… message

Also when I load the camera code, I can change values but the terminal never says searching.

MP2COD 3.90, COFF to COD File Converter
Copyright © 2004 Microchip Technology Inc.
Error - Source file ‘C:\Robotics\2006\Code06\frc_serial_port_diagnostics\ifi_startup.c’ name exceeds file format maximum of 62 characters.
Errors : 1


can you like dum that down for me cuz i want to learn programming and i didnt understand any of that i lost u after the first word :confused: