Skip to content

File Formats & Compatibility

This reference guide details the file formats supported by TrueFidelity for system configuration, data capture, playback, and export. Understanding these formats helps you work effectively with the platform and integrate with other tools in your workflow.

System Configuration Formats

TrueFidelity System Files

Format Extension Purpose Notes
System Definition .json Complete system configuration Contains ECUs, networks, and connections
DBC .dbc CAN signal definitions Industry-standard format for signal decoding

System File Details

System Definition (.json) Files: - Stores complete system topology - Includes ECU configurations - Network settings and DBC associations - Created through System Design mode - Portable between TrueFidelity installations - Human-readable JSON format

.dbc Files: - Vector CANdb++ format - Defines CAN messages and signals - Required for signal decoding - Associates with network configuration - Supports signal scaling and units

Supported Log Formats

Primary Capture Formats

Format Extension Usage Best For
BLF .blf Vector Binary Logger format Efficient storage, fast playback
MDF4 .mf4, .mdf Measurement Data Format v4 Large datasets, metadata support

Format Characteristics

BLF (Binary Logging Format): - Primary format in TrueFidelity - Optimized for CAN data - Compact binary storage - Fast loading and playback - Supported by Signal Player panel

MDF4 (Measurement Data Format): - ASAM standard format - Supports multiple data channels - Includes metadata and timestamps - Good for long-duration captures - Handles large file sizes efficiently

Import Considerations

When importing log files:

  1. File Location:
  2. Store on local SSD for best performance
  3. Network drives may cause playback delays
  4. Keep working copies separate from archives

  5. File Size:

  6. BLF: Handles large files well (tested up to 2GB)
  7. MDF4: Efficient for very large datasets
  8. Consider splitting extremely large logs

  9. Timestamp Handling:

  10. Absolute timestamps preferred
  11. Relative timestamps supported
  12. Consistent time base required

Export Formats

Available Export Options

Traffic Export (from Network Traffic panel):

Format Extension Contents Best For
Text .txt Human-readable CAN frames Documentation, quick review
CSV .csv Structured CAN data with timestamps Spreadsheet analysis
JSON .json Structured data format Programmatic processing
candump .log Standard CAN log format Linux CAN tools compatibility

Capture Recording (for longer recordings):

Format Extension Contents Best For
BLF .blf Vector Binary Logger format Industry standard, replay
MDF4 .mf4 Measurement Data Format v4 Large datasets, metadata
CSV .csv Timestamped CAN frames Simple analysis

Other Exports:

Export Type Format Extension Exported From
Signal Data CSV .csv Signal Viewer
Chart Image PNG .png Signal Chart panel
Console Logs Text/CSV/JSON .txt/.csv/.json ECU Console

Export Details

Traffic Export Formats: - Text: Plain text, human-readable format - CSV: Spreadsheet-compatible with headers - JSON: Machine-readable structured data - candump: Standard Linux CAN utilities format

Capture Recording Formats: - BLF: Vector Binary Logger format, industry standard - MDF4: ASAM standard, efficient for large datasets - CSV: Simple timestamped format

Chart Exports: - PNG format for documentation - Includes legend and axes - Exports visible time window

Data Flow

Typical Workflow

Input Files:
├── System Configuration (.json)
├── Signal Definitions (.dbc)
└── Captured Data (.blf or .mf4)
    ↓
TrueFidelity Processing:
├── System Loading
├── Playback/Analysis
└── Signal Decoding
    ↓
Output Files:
├── Analyzed Data (.csv)
├── Filtered Traffic (.csv or .blf)
└── Visualizations (.png or .pdf)

Multi-Channel Support

Channel Handling

TrueFidelity supports logs with multiple CAN channels:

  • Channels identified in log files
  • Each channel can have different baud rates
  • DBC files associate per network
  • Filter by channel in Network Traffic
  • Signal Viewer shows channel source

Channel Mapping

When working with multi-channel logs: 1. Verify channel assignments in log 2. Map channels to networks in system 3. Apply appropriate DBC per channel 4. Use filtering to isolate channels

File Size Guidelines

File Type Recommended Max Hard Limit Notes
BLF Log 2 GB 4 GB Performance degrades above 2GB
MDF4 Log 5 GB 10 GB Memory dependent
CSV Export 500 MB 1 GB Excel compatibility
System File 10 MB 50 MB Complex systems

Large File Handling

For files exceeding recommendations:

  1. Split Before Import:
  2. Use external tools to split
  3. Process in segments
  4. Maintain time continuity

  5. Optimize Playback:

  6. Close unnecessary panels
  7. Limit selected signals
  8. Clear Network Traffic periodically
  9. Use filtering aggressively

  10. Memory Management:

  11. Monitor system RAM usage
  12. Increase Docker memory allocation
  13. Process on capable hardware

Compatibility Matrix

Format Support by Feature

Feature BLF MDF4 Text/CSV/JSON DBC
Playback N/A
Signal Decoding N/A Required
Multi-channel
Capture Output ✅ (CSV only) N/A
Traffic Export N/A
Import to TrueFidelity
External Tool Compatible

Legend: - ✅ Fully supported - ❌ Not supported - N/A Not applicable

Integration with External Tools

MATLAB Integration

% Import TrueFidelity CSV export
data = readtable('exported_signals.csv');

% Access timestamp and signals
time = data.Timestamp;
signal1 = data.Signal_Name_1;

% Process and visualize
plot(time, signal1);

Python Integration

import pandas as pd

# Load exported CSV
df = pd.read_csv('exported_signals.csv')

# Access signals by name
timestamps = df['Timestamp']
signal_values = df['Engine_RPM']

# Analyze data
mean_rpm = signal_values.mean()

CANalyzer/CANoe

  • Export as BLF for direct import
  • Maintain timing precision
  • Compatible with Vector tools
  • DBC files transfer directly

File Organization Best Practices

Project/
├── Systems/
│   └── test_system.json
├── DBCs/
│   ├── powertrain.dbc
│   └── chassis.dbc
├── Logs/
│   ├── Original/
│   │   ├── test_run_001.blf
│   │   └── test_run_002.mf4
│   └── Working/
│       └── filtered_subset.blf
├── Exports/
│   ├── CSV/
│   │   ├── signal_data_001.csv
│   │   └── network_traffic_001.csv
│   └── Charts/
│       ├── rpm_analysis.png
│       └── temperature_trend.pdf
└── Documentation/
    └── test_reports.txt

Naming Conventions

System Files: - Default name: truefidelity-system.json - Contains complete system configuration - Portable between installations

Log Files: - Format: YYYYMMDD_testname_run#.blf - Example: 20240315_brake_test_run3.blf

Export Files: - Format: YYYYMMDD_datatype_description.csv - Example: 20240315_signals_rpm_analysis.csv

Version Control Considerations

Files to Track

Include in Version Control: - System files (.json) - DBC files (.dbc) - Test documentation - Analysis scripts - Small reference logs

Exclude from Version Control: - Large log files (>100MB) - Temporary exports - Generated charts (regenerate instead) - Working copies of logs

Git Example

.gitignore for TrueFidelity project:

# Large log files
*.blf
*.mf4
*.mdf

# Temporary exports
exports/temp/
*.tmp.csv

# Keep small test logs
!test_data/*.blf

# Keep system and DBC files
!systems/*.json
!*.dbc

Troubleshooting File Issues

Common Problems and Solutions

File Won't Load

Symptom: Error when loading BLF or MDF4

Solutions: 1. Check file isn't corrupted (verify size) 2. Ensure sufficient disk space 3. Verify file permissions 4. Try copying to local drive 5. Check format version compatibility

Signal Decoding Fails

Symptom: Signals show as raw values

Solutions: 1. Verify DBC file is loaded 2. Check DBC matches log file 3. Ensure CAN IDs align 4. Verify signal definitions exist 5. Check byte order settings

Export Fails

Symptom: Cannot export data

Solutions: 1. Check disk space 2. Verify write permissions 3. Close file in other applications 4. Reduce export size 5. Try different format

Large File Performance

Symptom: Slow loading or playback

Solutions: 1. Use SSD storage 2. Increase available RAM 3. Close other applications 4. Filter before export 5. Split file externally

Known Limitations

Current Restrictions

  1. Import Formats:
  2. No direct CSV import for playback
  3. ASCII log formats not supported
  4. Encrypted logs must be decrypted externally

  5. Export Limitations:

  6. No MDF4 export option
  7. Chart exports limited to visible window
  8. No batch export automation

  9. Size Constraints:

  10. Performance degrades with very large files
  11. Memory limitations for simultaneous logs
  12. Export size limited by available RAM

Workarounds

For Unsupported Formats: - Use external converters to BLF/MDF4 - Process through intermediate tools - Contact support for conversion assistance

For Size Issues: - Pre-filter logs before import - Process in segments - Use dedicated analysis hardware

Future Compatibility

Roadmap Considerations

While not currently supported, future versions may include: - Additional import formats - Enhanced export options - Streaming for large files - Cloud storage integration - Automated conversion tools

Check release notes for updates to format support.

Summary

TrueFidelity's file format support focuses on:

  • System Configuration: JSON files for complete system definition
  • Signal Definitions: .dbc files for CAN signal decoding
  • Log Formats: BLF and MDF4 for efficient data capture and playback
  • Export Options: CSV for analysis, BLF for replay, PNG/PDF for documentation

Understanding these formats and their appropriate use cases ensures efficient workflow and successful integration with your existing toolchain.

  • System Design Guide - Creating and managing system JSON files
  • Playback Analysis - Working with BLF and MDF4 logs
  • Signal Viewer - Using DBC files for decoding
  • Performance Guide - Optimizing for large files