02-07-2018 08:13 AM
Hi all
Bit stuck here with trying to get labview to record CAN messages into a TDMS (along with other signals like thermocouples and pressures).
Got a NI 9862 single channel CAN module for cDAQ.
I think, I think, I have got to the stage where it is saving CAN messages to a TDMS. But opening in Diadem shows either nothing, or a single channel/group. Whatever it is it doesn't look right and I can't decipher it.
I guess firstly, can I even do what I want to be doing? That is log CAN messages (I have complete vehicle DBC file) along with temperature and pressure readings, all time aligned nicely?
02-07-2018 09:18 AM - edited 02-07-2018 09:28 AM
Hi ALexMason,
the TDMS file format can host both signal-based data and protocol-based data.
While the former can be loaded by the TDMS dataplugin , the latter needs a conversion to signal-based data (which generates a TDM file). This is your case.
In DIAdem you can perform this conversion by using the Bug Log Converter (File-> Bus Log Converter). See first screenshot.
All you need to do is to choose the format of the log (in your case TDMS), the log file itself and the CAN database describing the frame/signals designed for the CAN cluster and at the end perform the conversion with the desired actions.
You also can define a loading configuration for can data in the DIAdem general settings for Navigator allowing the automatic loading of bus log channel together with signal-based ones (second screenshot).
02-07-2018 09:26 AM
bus log converter is greyed out for me
02-07-2018 09:37 AM
we only have the base version, so it won't work!
best get on with asking for an upgrade!
thanks for the help!
06-20-2024 11:56 AM - edited 06-20-2024 11:57 AM
Hello, I know this is an old thread, but could you find a solution?
I am stuck with the same issue where I can log "Frame Raw" into TDMS, but I cannot log "Frame CAN" into TDMS file. See images below:
Works well:
Cannot find a way around this:
I guess this is just a limitation of TDMS that it cannot store CAN Frames based on my reading.
Reasoning why I am looking for a switch:
I am recording a signal and I want to log all frames (without loosing data) and then use that data for post processing, now when I have to Parse the data stored in TDMS it take a lot of time, mainly because the other VI (Image below) that I use for conversion needs to first convert all Raw Frames into CAN frames which is the most time consuming part, so I want to find a way around it.
Also not to forget: Opening the TDMS in MATLAB that just purely store "RAW Frames" makes not sense to me.
Thank you.