Confirming XNET Cyclic Frame Has Stopped Transmission

Updated Aug 29, 2025

Issue Details

I am using an NI-XNET device to send a cyclic CAN frame to the bus. I stopped the session using XNET Stop.vi (or nxStop in NI-XNET C API), but I would like to confirm that the frame transmission is actually stopped on the hardware. Is there any command that I can use to check that the CAN transmission is stopped?

Solution

To make sure that the frame is stopped, you can use XNET Read.vi and set the polymorphic selector to State > Session > Info and check that the "session info state" output is "stopped" when using LabVIEW. 

In NI-XNET C API, you an use nxReadState and set StateID to nxState_SessionInfo to read out StateValue.  

This can be used even if you opened multiple sessions on the same CAN port since this result can be returned by each session. If you like to confirm that all sessions on a CAN port is stopped, you can use XNET Read.vi and set the polymorpohic selector to State > CAN > Comm State. If "communication state" in the cluster output from CAN comm terminal is set to "Init" then all sessions using this CAN port is stopped.