02-22-2018 03:49 PM
I didn't know if this should be on the idea exchange or just a post on the forums, seems like a bug to me so it is here. The function in the vi.lib LV Image to PNG Data found here:
<LabVIEW Install>\vi.lib\wsapi\VIs\LV Image to PNG Data.vi
This does not work on the Linux RT. The function takes the cluster of image data and turns it into a PNG image. But on the Linux RT (specifically the cDAQ-9136) it returns an error that the function isn't supported on that target. Of course if you just straight up call the LVImageDataToPNGByteArray in a call library node the function works just fine. So could this function be updated to have the conditional disable structure updated to work with these targets? Thanks.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
02-23-2018 12:28 PM
All of your steps make perfect sense.
That VI will throw the error on the RT target. It is in fact calling the function you list.
But, here's the issue. The Conditional Disable Structure would need to be modified as a structure rather than a setting changed in the structure.
As a quick test, drop the Conditional Disable and take a look at the available settings. The target type has a setting for RT as a group but not for the individual RTOS options.
Generally, I'd agree it's a bug. In order for this to be a bug AND get a fix, it'd require something of a feature request. Do you have any thoughts given that extra bit of information?
02-26-2018 08:07 AM
Do you have any thoughts given that extra bit of information?
Yes, add more condition combinations to have this function if the target type is RT and the OS is Linux. Here is my proposed change which appears to work right. I don't have a non RT Linux to test with but having the OS be just "Linux" might just work as well. When I add the cDAQ-9136 it adds the OS as Linux, and CPU as x64 in the project.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
02-26-2018 04:27 PM
Just a quick note, I filed CAR 688444 for this to see if we can address it without forcing you to put the workaround together.
02-27-2018 07:37 AM
And for anyone else that might stumble on this thread, I now realize the function only works on Linux RT controllers that have the embedded UI enabled. No monitor needs to be plugged in but the function doesn't return any data if the embedded UI is disabled. Still interested in the CAR and a possible fix in the future.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
02-27-2018 07:42 AM
The original VI is password protected so not sure if it would be best to password the one you posted.
02-27-2018 08:13 AM
The original VI is password protected so not sure if it would be best to password the one you posted.
Shhhhhhh... Besides I can't edit a post that old. It calls a single call library node function, I figured it wasn't a big deal.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord