12-11-2025 10:02 AM
Hi everyone,
I’m currently working on a project where I need to read data from a car’s ECU using a CompactRIO-9030 and an NI-9862 (CAN module). I’m still new to CompactRIO and automotive CAN communication, so I need some guidance to make sure I’m doing things correctly.
My setup:
CompactRIO-9030
NI-9862 CAN Module
Vehicle OBD-II port
My goal is to read engine data (RPM, temperature, etc.) from the ECU.
I have created the block diagram to read ECU data using CompactRIO-9030 and the NI-9862, but it still cannot read any data. I’m not sure whether the issue is from my wiring, CAN configuration, or my LabVIEW block diagram. Can anyone help me identify what I might be doing wrong?
When I use the Bus Monitor, it can read the CAN data successfully, but my LabVIEW block diagram still cannot read anything. Does anyone know why the Bus Monitor works but my code does not? Is there a configuration or XNET setting I might be missing?
12-11-2025 07:15 PM
I believe there were some error reported.
You should wire your error out cluster to the stop terminal as well. Use an error indicator or a Simple Error Handler to display the error.
12-11-2025 08:08 PM
I checked again and I actually do have an error. The error comes from the XNET Create Session (Frame Input Single-point).vi. I’m not sure what is causing this. Do you know what could make the XNET Create Session fail?
12-11-2025 09:17 PM
Google and ni.com are your good friends to search for knowledgebase related to error codes.
Error -1074384864 Occurred When Running XNET Session in LabVIEW
Anyway, I don't think setting CAN1 is a valid frame list. Did you configure a DBC file?
I recommend you refer to the shipping examples at Help >> Find Examples... >> Hardware Input and Output >> CAN >> NI-XNET >> Intro to Sessions >> Frame Sessions