03-01-2023 04:04 PM - edited 03-01-2023 04:10 PM
Hello,
Background:
I am upgrading from LabVIEW 2016/VeriStand 2016 to LabVIEW 2019 SP1/VeriStand 2019 R3.
Hardware:
PXIe-8840 Quad Core RT PC in a PXIe-1085 chassis with a PXIe-8510 CAN card. I attached the RT MAX config.
Issue:
I am experiencing a strange issue with VeriStand 2019 and a Custom Device that runs a proprietary CAN 11bit ID CAN protocol. I recompiled the Custom Device on LabVIEW 2019 SP1 without any issue. Singularly, I am able to add the custom device and deploy it with no warnings. Singularly, I am able to add a standard XNET database to a CAN port and deploy it with no warnings. Further, I connected a non-NI CAN reading device in either case and verified the CAN bus traffic is as expected.
The issue arises when I try to have both an XNET database tied to a CAN port and the custom device tied to a different CAN port in the System Definition. This was not an issue on the 2016 system.
The project will not deploy and the following Deployment Error is generated:
Project Window.lvlib:Project Window.vi > > Project Window.lvlib:Command
Loop.vi >> Project Window.lvlib:Connect to System.vi
NI VeriStand: Open VI Reference in Custom Devices Storage.lvlib:Open
Device Reference (HW Interface).vi->Custom Devices Storage.lvlib:lnitialize
Device (HW Interface).vi->Nl VeriStand Engine.lvlib:lnitialize Inline Custom
Devices.vi->Nl VeriStand Engine.lvlib:VeriStand Engine State Machine.vi->Nl
VeriStand Engine.lvlib:VeriStand Engine.vi->Nl VeriStand
Engine.lvlib:VeriStand Engine Wrapper (RT).vi<APPEND>
<b>c:\ni-rt\VeriStand\Custom Devices\<SuperTopSecretProtocolName>\<SuperTopSecretProtocolName> Engine.llb\<SuperTopSecretProtocolName> RT Driver
Vl.vi</b>
Error 1003 occurred at Project Window.lvlib:Project Window.vi > > Project
Vl.vi</b>
Error 1003 occurred at Project Window.lvlib:Project Window.vi >> Project
Window.lvlib:Command Loop.vi >> Project Window.lvlib:Connect to
System.vi
Possible reason(s):
LabVIEW: (Hex Ox3EB) The VI is not executable. This error may occur
because the VI is either broken or contains a subVl that LabVIEW cannot
locate. Select File> >Open to open the VI and verify that you can run it.
NI VeriStand: Open VI Reference in Custom Devices Storage.lvlib:Open
LabVIEW: (Hex Ox3EB) The VI is not executable. This error may occur
because the VI is either broken or contains a subVl that LabVIEW cannot
locate. Select File> >Open to open the VI and verify that you can run it.
NI VeriStand: Open VI Reference in Custom Devices Storage.lvlib:Open
Device Reference (HW Interface).vi->Custom Devices Storage.lvlib:lnitialize
Device (HW Interface).vi->Nl VeriStand Engine.lvlib:lnitialize Inline Custom
Devices.vi->Nl VeriStand Engine.lvlib:VeriStand Engine State Machine.vi->Nl
VeriStand Engine.lvlib:VeriStand Engine.vi->Nl VeriStand
Engine.lvlib:VeriStand Engine Wrapper (RT).vi<APPEND>
Devices\<SuperTopSecretProtocolName>\<SuperTopSecretProtocolName> Engine.llb\<SuperTopSecretProtocolName> RT Driver Vl.vi
tl;dr - why xnet do bad??
Thank you!
03-02-2023 12:30 PM
Update:
I was able to compile the J1939 Addon Custom Device and configure it with the J1939 XNET 29bit CAN database I am using. I was then able to deploy my custom 11-bit <SuperTopSecretProtocolName> CAN custom device. In parallel these devices work. So it's something with VeriStand and XNET 21.8.