Canmetry
Open workbench

Convert BLF to MAT or CSV in your browser.

Turn a Vector BLF log into a MATLAB .mat or CSV file, decoded with your DBC. No Vector licence needed.

Step 1 of 4 · Upload logs

Drop your BLF file here

or

.blf files up to 150 MiB, up to 5 at a time. Conversion runs in your browser, so files stay on your computer.

CAN · CAN FD · 1 µs timestamps

What you can do once the BLF is a MAT file

A BLF log from CANoe or CANalyzer holds raw frames. Most people convert it because the analysis happens somewhere else: in MATLAB, in Python or in a report.

804000 s60 skm/h

Load BLF data into MATLAB

Get CAN signals as plain structs and arrays you can plot, filter or feed into Simulink. The converted file needs no add-on toolbox to open.

Hand CANoe logs to people without a Vector licence

Test benches and suppliers send BLF files that only Vector tools open natively. A .mat or .csv opens everywhere.

from scipy.io import loadmat
d = loadmat('drive.mat', squeeze_me=True,
            struct_as_record=False)
# fields: time, value, unit
speed = d['ESP_VehicleSpeed']

Analyse BLF data in Python

Load the .mat with SciPy or the .csv with pandas to build reports, statistics or training data from a drive cycle.

Pull a few signals out of a long BLF

Extract speed, torque or a fault flag from a recording without building a database or a measurement configuration.

From a BLF to signals in four steps

Four steps, in your browser. The BLF file and your DBC files are never uploaded.

  1. Add your BLF file

    Drop up to five .blf files. They are opened in the browser and the channels inside, CAN FD ones included, are listed.

  2. Map a DBC to each CAN channel

    A BLF often holds several buses. Pair every channel with the DBC for its bus; dragging a DBC onto a channel folder does it in one move.

  3. Pick MAT or CSV

    MAT suits MATLAB and SciPy; CSV suits Excel and pandas. You can rename the file before converting.

  4. Convert and download the .mat

    The frames are decoded with your DBCs and the result is saved as a .mat or .csv you can download straight away.

Inside the converted BLF data

Decoded signals only, at full resolution, with time in seconds from the first decoded frame.

infostruct
source'drive.blf'
channels[1 2]
signal_count630
time_unit's'
ESP_VehicleSpeedstruct
timeN×1 double
valueN×1 double
signal'VehicleSpeed'
message'ESP'
unit'km/h'
channel1
VCU_DrvTorReq · BMS_PackVoltage · …
  • The .mat layout

    Every signal is a struct called Message_Signal holding time and value arrays, with unit, message and channel alongside. A separate info struct names the source BLF and its channels.

  • The CSV table

    A row per sample: time_s, time_us, channel, message, signal, value, unit. It loads straight into Excel or pandas.

  • What stays behind without a DBC

    A frame whose ID is missing from the linked DBCs is not exported, nor is a channel with no DBC, a remote frame or an error frame. Link the right database to bring it in.

  • Limits per run

    Five BLF files at a time, up to 150 MiB each. One CSV holds 2,000,000 rows; a longer drive cycle belongs in MAT, which has no row limit.

Questions about BLF to MAT

What do I need to get signals out of a BLF?

A BLF file and the DBC for each bus it recorded. Drop the log in, link the DBCs, pick MAT and convert; the .mat file downloads from the page, and nothing is installed or uploaded.

Why can't a BLF become a MAT file without a DBC?

Inside a BLF there are only CAN frames: an ID and a handful of bytes. Names, scaling and units live in the DBC, so it is the DBC that turns bytes into something like wheel speed.

Can I do this without CANoe, CANalyzer or MATLAB?

Yes for the conversion itself. MATLAB, or another reader such as SciPy, is only needed afterwards to open the .mat.

Does the BLF leave my computer?

No. The file is read, decoded and written inside your browser tab, along with your DBCs.

A BLF with several buses: how are DBCs applied?

Link one DBC per channel. If a channel has two, a frame is decoded by the first linked DBC that knows its ID, and the second only handles the IDs the first lacks, so signals are never duplicated.

Where did some of my signals go?

Only what your DBC can decode is written. Frames with an ID no linked DBC defines, channels with no DBC, remote frames and error frames are left out. Check that each channel is linked to the right database.

Can the output be CSV instead of MAT?

Yes: pick CSV in the output step for one table of decoded samples. A single CSV stops at 2,000,000 rows, so long drive cycles are better as MAT. For the raw frames rather than signals, use the BLF to CSV export.

Are CAN FD and big files handled?

CAN and CAN FD both decode. Each BLF can be up to 150 MiB, five per run, and every log gets its own output file.