Vision/AxisCamera2010.h

Each time you reimage, you erase any user code that might be on the cRIO in the process. You have to put your program on the cRIO after loading the v20 image.

If you are running WPILib 4.1, then any use of the DriverStationLCD class will crash robot code, sending that error. If using 4.2, then use of the AxisCamera class will crash code. I know, it’s stupid

Nothing changed with the camera code between 4.1 and 4.2. 4.2 just recompiled to make a symbol be found. The camera code was pretty much completely rewritten for update 4.1, so expect to retrofit a few things here and there if you were already using it.

-Joe

if i may make a suggestion, if it is saying an unresolved symbol after the update why not use the FIRSTForge svn to just pull down the .h and .cpp files and put them directly into the project, much simpler than trying to patch a precompiled library in my opinion.

just my two cents though

if someone can’t find the needed files i think i could dig them out of my project and put them back to normal, just let me know

Joe,
The 4.2 precompiled WPILIB does not have the camera code in it. I duplicated this from the sources in firstforge. First, I checked out the latest sources, created a workbench project from them and did a build. That build had the DriverStationLCD kLineLength symbol problem. I got around this bug by moving the const declaration out of the DriverStationLCD class into the file scope. Then I did a build of the WPILIB again. The result of that build has the problem with the missing AxisCamera that many people are reporting. Thinking that there might be a problem with the make dependencies, I did a clean of the whole WPILIB project and rebuilt the whole thing. The library that resulted from this build does not have the kLineLength problem nor does it have the AxisCamera problem either.

My guess is that the WPILIB that is in the 4.2 release was built after changing only the DriverStationLCD code and the AxisCamera code was left out. Doing a clean build should resolve the problem.

Okay, so I’ve isolated my problem. It’s the axis camera.
Whenever I download code that uses the camera, the drivers station says “No robot code”

I’m not getting any error messages at all, it just doesn’t work.

Has anyone found a work around/patch/other solution? I need to do a lot of coding for my camera still…

P.S. does anyone know if WPI/FIRST is fixing this?

Brad at WPI is looking into this.

A work around was explained in the post before yours.

Could anyone go into a bit more detail on how to do this please? Thank you.

Easiest way is to get an account on FirstForge and get the source through svn. Windriver should be able to compile the code for WPILib and you just replace the current executable

I just rebuilt the library and posted it at:
http://first.wpi.edu/FRC/frccupdates.html

Please give it a try by installing the update and relinking. Let us know if it works.

Sorry for the confusion, I think we hit some limit in the library that’s making the build process somewhat unpredictable.

Downloaded and installed. I rebuilt and downloaded my project, and these three lines still crash my code (“No robot code”):

		AxisCamera &camera = AxisCamera::GetInstance();
		camera.WriteResolution(AxisCameraParams::kResolution_160x120);
		camera.WriteBrightness(0);

Any further suggestions?

attach a console to it so you can watch the boot progress, what error is it giving?

Could you walk me through attaching a console?

couple of ways to do it, one is flip the console out dip switch on the crio and attach to the serial port through a null modem to a computer that is running some console program (terminal.exe works or there is one built into windriver) second is to open up a net console, right click on the remote host in windriver (after connecting to it) then go to target tools and finally target console, a dialog box should pop up just hit ok,

i don’t know how well the target console will work to watch the crio boot though, might connect to late, there is another way to do it but i don’t know it so someone else will have to help you out with that
best of luck
Zme

Thanks. Downloaded and installed. It fixes the unresolved problems with the previous version. I’m not having the issues plaid is having. Plaid, perhaps confirm that your crio is running the v20 code by checking the version under the drive station diagnostics tab?

I reinstalled all of the updates, and that helped. The camera code works now, and everything is considerably better.

There is a significant lag time on the camera to the DS display however. Is that normal?

to a point yes, how much lag are you talking?

At its worst roughly from a second and a half to two seconds. In general though about half that.

a half second i believe is the spec for the updated code for everything
try lowering the resolution, making sure the driverstation is not having its processing power strangled by windows power management, connect it via ethernet to the router, remove the live readout graphs from the dashboard if you have not already done so.

other than that i don’t know what to tell you
good luck