I have an application where I need to be able to signal a custom device running on a LinuxRT target to execute a command (resetting an internal counter within the CD's private data). My custom device has n monitors which perform a processing action on n selected waveforms. These processes are spawned out in the RT Driver VI.vi initialize case. I am calling "NI VeriStand - Register Custom Device Engine Events.vi" for each of the spawned waveform processing monitors and pass the event ref to each processor. This process is working without any indication of error.
I currently have a custom UI running on the controller PC (windows machine) that opens a custom device reference using "NI VeriStand - Open Custom Device Reference.vi". This is successful.
The UI then sends a command to trigger the CD WF monitors to perform the counter reset with "NI VeriStand - Send Custom Device Message.vi". When sending the command, I get a timeout and receive an error in reply. Unfortunately, I was not able to find that error code in any documentation. Perhaps it just means timed out. Not sure.
Error -307667 occurred at NI_VS Custom Device ExecutionAPI.lvlib:NI VeriStand - Send Custom Device Message (String).vi Possible reason(s): CustomDeviceServices.lvlib:ESendMessage (String).vi.ProxyCaller >> CustomDeviceServices.lvlib:ESendMessage (String).vi:3670002 >> CustomDeviceServices.lvlib:Process Command.vi Complete call chain: NI_VS Custom Device ExecutionAPI.lvlib:NI VeriStand - Send Custom Device Message (String).vi CD Engine Messaging.lvlib:CD Engine Messaging.lvclass:Reset All Loggers.vi Main UI.lvlib:Main UI.lvclass:Actor Core.vi:5880001 Actor Framework.lvlib:Actor.lvclass:Actor.vi:6640005 Actor Framework.lvlib:Actor.lvclass:Actor.vi.ACBRProxyCaller.EE001AA
On the CD side, I do not receive an event.
I could use some help diagnosing the communication issue. Is the Custom Device Communication VIs designed to work between a windows controller and a custom device running on a Linux RT target? I noticed the cd communication example does not have a build spec for a LinuxRT target.
Thanks in advance for any responses!
Communication flowing working now, but still weird. I am able to send the command to the device and get a confirmation reply back, but oddly, the event keeps firing at the CD. So there is something that is behaving like the event is firing itself, but I'm not doing that. So, still not actually usable.