09-26-2025 03:10 AM
Hi everyone,
I’m developing a LabVIEW class for CAN communication with methods like Create Instance, Get Info, Get NMT, Get Node State, Read/Write SDO (single and batch), Set NMT, and more. My goal is to use all these methods from both LabVIEW applications and TestStand sequences, in a way that’s robust and reusable across multiple projects.
I frequently need to read SDOs—for example, every CAN device has a UID at a specific Index, Subindex and Datatype. I want to make these common operations as simple as possible for both LabVIEW and TestStand users.
My main questions:
Any advice, examples, or experiences with DQMH, class design, and integration with both LabVIEW and TestStand would be greatly appreciated!
Thanks in advance!
09-26-2025 05:00 AM
Hello!
Wrapping your CAN class in a DQMH module is recommended for better integration with both LabVIEW and TestStand, especially for asynchronous and reusable operations. For frequent tasks like reading a UID, use dedicated request events to simplify usage. Maintain a clean API layer and use helper VIs for preset parameters and validation to keep the design modular and scalable.
09-26-2025 07:23 AM
Yes, wrapping a class in a DQMH module is generally an excellent idea.
Regarding the use of the class in both LabVIEW and TestStand, I'd encourage you to explore the TestStandifier tool. This is a free tool made to simplify the use of the DQMH module in TestStand.