canalyzer blf file to mat file conversion

This is not a question.This is an answer on how to do this with the famous thread that is contunuing but has no answers. I have uplaoded the files here.

댓글 수: 17

Tejas Sonavane
Tejas Sonavane 2017년 5월 30일
Here is answer to you question. This module is Called CanLoad and is created by Reid Steiger in Ford. I have attached the files you will need. Here is how it operates.
  • Unzip the folder contents
  • Put all the files that I have attached here in a folder.
  • Use dbc2ModuleBatch.p file to convert your .dbc files into these four files namely --> can_module_ext.mGetAsciiMessageFilterList.m , identify_DBC_Name.m , module_dbcname.m.
  • Place all the above newly files in the directory that contains the .blf files and add to the Matlab path.
  • Run CanLoad.p , this requires an input that is full name and path of the file.
Ahmad Gharib
Ahmad Gharib 2017년 7월 7일
Hello tejas, do we need the Matlab CAN Network Toolbox to make it running ?
Tejas Sonavane
Tejas Sonavane 2017년 8월 15일
No You dont. Actually the Vehicle Network ToolBox is slower and i have address this to Mathworks
Stefan
Stefan 2017년 9월 15일
Can this tool also handle asc files?
Marco Krahl
Marco Krahl 2017년 10월 25일
이동: Dyuman Joshi 2023년 11월 1일
Hi all, where can I get the files Tejas is talking about?
Tim von Umbscheiden
Tim von Umbscheiden 2017년 11월 10일
이동: Dyuman Joshi 2023년 11월 1일
Simple: Click on "show older comments" to see the first comment to his post. The files are attached there.
I didn't try asc files on this. But you can convert asc files to blf format in CANoe. Use the "Tools" menu. There is the function "Logging File Conversion".
A second way would be to use the asc as a seurce file for offline playback and setup a log as blf file. The playback will then result in a new blf file log.
M SK
M SK 2017년 11월 15일
I extracted .blf to .mat as per the steps given above. I got all the CAN fames and their associated signals in workspace, but the signals s didn't have any time associated with it. I could see a signal having only 128 values and some other signal having more than 4000 values. So how to regularise the data with a common timestamp?
Fabian Besler
Fabian Besler 2018년 1월 9일
CAN messages cannot have a common timestamp. CAN is an asynchronous protocol and there can only be 1 CAN message at a time. Without timestamp for every frame, you can never know when the message was received.
Stefan
Stefan 2018년 7월 10일
@Tim von Umbscheiden I have to say that the provided tool is quite good in case you dont have CANoe / CANalyzer. When you have one of these sofware you always can convert every can log file (asc, blf, mdf, ...) into MAT files with physical data.
Seth Berger
Seth Berger 2020년 11월 5일
I stumbled across this today since I have a handful of large blf files from a Vector GL2000 I need to convert to the mat format to perform a short analysis on in Matlab. I've followed the instructions above and can't seem to produce anything useful, so I am wondering if I am missing a step or action in my approach. If you have any updates, or suggestions I am happy to discuss. Thank you your time.
Hang Zhang
Hang Zhang 2021년 12월 23일
@M SK It's a normal case. You can try to interpolate the signal (128 values) based on their common timestamp.
The CanLoad is causing my MATLAB to crash and shutdown.
Mohammad Basiri
Mohammad Basiri 2022년 8월 9일
편집: Mohammad Basiri 2022년 8월 9일
@Tejas Sonavane I'm receiving the following error while running dbc2ModuleBatch.p:
Index exceeds the number of array elements (64).
Error in dbc2Module
Error in dbc2Module
Error in dbc2ModuleBatch
teng
teng 2024년 3월 7일
Unable to perform assignment because the left and right sides have a different number of elements.
Error in dbc2Module
Error in dbc2Module
I've faced this problem, Could you please help me?
Xiaoniu
Xiaoniu 2026년 3월 2일
Hi, where is it uploaded? I cannot find as files, or matlab code on this webpage?
@Tejas Sonavane uploaded files as the first comment here. You might need to Show Older Comments to see them.

댓글을 달려면 로그인하십시오.

답변 (5개)

Ivan Plavcic
Ivan Plavcic 2019년 9월 19일

2 개 추천

Hello,
I get the followin message when trying to run 'CanLoad.p':
''Are you using the correct binlog.dll?
No Data Loaded!''
Any suggestions?

댓글 수: 2

@Ivan Plavcic I get same error. Have you found a fix?
Matteo
Matteo 2023년 4월 13일
Hello to all,
I got the same error on.
I fixed it moving binlog.dll in the same folder of CanLoad (previously was inside folder x64).

댓글을 달려면 로그인하십시오.

Rodrigo Adamshuk Silva
Rodrigo Adamshuk Silva 2017년 8월 11일

0 개 추천

After creating the "can" variable in the Workspace, how can I open the CAN messages that I need?

댓글 수: 2

Tejas Sonavane
Tejas Sonavane 2017년 8월 15일
Cna you show me what your workspace looks like, like a snip and I will be able to help you right away
@Rodrigo Adamshuk Silva ciao. Do you have any news from your qustion? Thanks,

댓글을 달려면 로그인하십시오.

Steven
Steven 2017년 11월 15일

0 개 추천

After following your steps I called
temp = CanLoad()
and selected my test.BLF file to read in. As a result I get
temp =
sw: [1x1 struct]
where temp contains only software version, but no data.
Can anyone tell me whats going wrong?

댓글 수: 2

Stefan
Stefan 2017년 11월 25일
편집: Stefan 2017년 11월 25일
Please have a look into the mFile of CanLoad. There you can find examples how to you use this tool. Further i found out, that you have put all corresponding DBC files into the same directory of CanLoad.
CAN FD would not supported, the mex file crashes.
This tool also works with asc files in the same way as blf files. but it takes much much longer.
Jorg Anckaert
Jorg Anckaert 2019년 4월 4일
Hey Steven,
I seem to have the same issue. Did you manage you resolve it?

댓글을 달려면 로그인하십시오.

Nazar Rozkvas
Nazar Rozkvas 2018년 7월 10일
편집: Nazar Rozkvas 2018년 7월 10일

0 개 추천

Dear Tejas,
I have been trying to extract the .dbc files with the steps you have described, however, I am unsuccessful. I guess i'm just doing something wrong.
When I feed my files to the dbcModuleBatch.p, I get the following error:
>> dbc2ModuleBatch('Ehorizon__M002.blf')
Error using dbc2ModuleBatch
Too many output arguments.
I have also tried to feed the files to the CanLoad.m, but it have also failed:
>> CanLoad('Ehorizon__M002.blf')
Error using cd
Cannot CD to /Users/mac/Documents/.../CanLoad\ (Name is nonexistent or not a directory).
Error in CanLoad
I would really appreciate your help

댓글 수: 2

Nazar Rozkvas
Nazar Rozkvas 2018년 7월 19일
Apparently, MATLAB has not developed the toolbox for the Mac OS...
Hang Zhang
Hang Zhang 2021년 12월 23일
편집: Hang Zhang 2021년 12월 23일
Pay attention to Step3:
  • Unzip the folder contents
  • Put all the files that I have attached here in a folder.
  • Run dbc2ModuleBatch.p by click your right button of mouse to select the directory where including .dbc files, this step would build these four files named as can_module_ext.m, GetAsciiMessageFilterList.m, identify_DBC_Name.m, module_dbcname.m.
  • Place all the above newly files in the directory that contains the .blf files and add to the Matlab path.
  • Run CanLoad.p, this requires an input that is full name and path of the file.
Notice! CanLoad can not support CANFD!

댓글을 달려면 로그인하십시오.

Andrei
Andrei 2023년 10월 13일

0 개 추천

blfread function (Vehicle Network Toolbox) can be used to read data from BLF files in MATLAB

댓글 수: 4

teng
teng 2024년 3월 7일
it only support blf file recorded by canoe. I can't parse
小松
小松 2024년 6월 19일
Hi, is it possible for MATLAB 2018b version to use this function?
Andrei
Andrei 2024년 11월 5일
blfread was introduced in MATLAB R2019a.
gu
gu 2025년 2월 8일
hi, blfread only used for can&canfd, cannot be used for frexray. Any suggestions?

댓글을 달려면 로그인하십시오.

질문:

2017년 5월 30일

댓글:

2026년 3월 2일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by