Send image to Dashboard

I have come into some issues with my vision code and it would be INCREDIBLY helpful if I could send an Image object to be displayed on the Dashboard. I’ve looked around and I have been unable to find any way to send a custom image to the dashboard other than recompiling the Dashboard to some custom thing which I would rather not have to do. If anyone knows a simpler way to send an image to the dashboard, that information would be greatly appreciated.

The standard dashboard gets it images directly from the camera. It is not necessarily meant to be a debug window for development, so it has no API for dumping arbitrary images to it. As you mention, it can be changed to display images from another source but will need to be modified and rebuilt.

Greg McKaskle

I was afraid of that… Ok. Thanks.

You can write the images to the cRIO using imaqWrite* methods or write methods on the image classes. Once written you can FTP the files back to your desktop or laptop and display them, e.g.:

AxisCamera& camera = AxisCamera::GetInstance(“10.13.11.11”);
HSLImage* hslImage = camera.GetImage();

hslImage->write(“snapshot.jpg”);

Alternatively,

imaqWriteJPEGFile(hslImage->GetImaqImage(), “snapshot.jpg”, 100, NULL);

I then use FTP to retrieve the file using a DOS command window:

$ftp
ftp>open 10.13.11.2
no user or password require – just hit return
ftp> ls – to get a file listing
ftp>get snapshot.jpeg – get your file, ends up in home directory
ftp>delete snapshot.jpeg

ftp>help – get help on other commands

you can write an batch script if needed.

I am not sure that I am using this form correctly but this was the only post I saw about dashboards. I would like to understand how to get data (a number) from the Java SmartDashboard to the robot. We are running c++ on the robot and I have configured a SmartDashboard which recognises my PutString and PutDouble calls but I can’t figure out how to get a value to the GetDouble function from the dashboard.