Skip to content

Releases: Nishina-N/CANDataConverter

CANDataConverter v2.02

Choose a tag to compare

@Nishina-N Nishina-N released this 17 Jan 01:08

Release v2.02

We are pleased to announce the release of CAN Data Converter v2.02.
This version introduces CAN database consistency checking functionality, significantly improving the reliability of data conversion.

CANDataConverter

✨ New Features

CAN Database Consistency Check

  • DLC (Data Length Code) Validation
    • Automatic comparison between DLC defined in CAN message definitions and actual CAN data DLC
    • Automatically skip inconsistent data and continue processing
    • Log inconsistency information for data quality visibility

🔧 Improvements

  • Enhanced Data Conversion Robustness

    • Prevent crashes and processing errors caused by invalid CAN data
    • Ensure conversion process stability through proper handling of DLC-mismatched data
  • Improved Troubleshooting Efficiency

    • Detailed error logging enables quick identification of data quality issues
    • Record information about skipped messages to support data validation

📝 Behavior Specification

When DLC mismatch is detected:

  1. Skip processing of the corresponding CAN message
  2. Output warning message to log file (Message ID, Expected DLC, Actual DLC)
  3. Continue conversion process with valid data only

🐛 Bug Fixes

  • Fixed program crashes caused by inconsistencies between CAN data and dbc definitions

📦 Requirements

  • Python 3.8 or higher
  • Required libraries: cantools, asammdf, pandas, openpyxl

📖 Usage

For detailed usage instructions, please refer to the README.


Release v2.02

CANデータ変換ツールのv2.02をリリースしました。
このバージョンでは、CANデータベース(.dbc)との整合性チェック機能を追加し、データ変換の信頼性を大幅に向上させました。

✨ 新機能

CANデータベース整合性チェック機能

  • DLC(Data Length Code)検証機能の実装
    • CANメッセージ定義のDLCと実際のCANデータのDLCを自動比較
    • 不一致が検出された場合、該当データを自動的にスキップし、処理を継続
    • 不一致情報をログに出力し、データ品質の問題を可視化

🔧 改善内容

  • データ変換の堅牢性向上

    • 不正なCANデータによるクラッシュや処理エラーを防止
    • DLC不一致データを適切にハンドリングすることで、変換処理の安定性を確保
  • トラブルシューティングの効率化

    • 詳細なエラーログにより、データ品質の問題を迅速に特定可能
    • スキップされたメッセージの情報を記録し、データ検証を支援

📝 動作仕様

DLC不一致が検出された場合の挙動:

  1. 該当CANメッセージの処理をスキップ
  2. ログファイルに警告メッセージを出力(メッセージID、期待DLC、実際のDLC)
  3. 正常なデータのみを対象として変換処理を継続

🐛 バグ修正

  • CANデータとdbc定義の不整合によるプログラムクラッシュを修正

📦 動作環境

  • Python 3.8以上
  • 必要なライブラリ:cantools, asammdf, pandas, openpyxl

📖 使い方

詳細な使用方法については、READMEをご参照ください。


Full Changelog: v2.01...v2.02

CANDataConverter v2.01 - Initial Release

Choose a tag to compare

@Nishina-N Nishina-N released this 10 Jan 16:18

🎉 First Official Release!

CANDataConverter is now available as a standalone Windows application!

CANDataConverter

✨ Features

  • Convert CAN log files - BLF and ASC formats to CSV or MAT
  • Multiple resampling options - 10ms, 100ms, 1s, or original sampling
  • Easy-to-use GUI - No command line needed
  • DBC support - Automatic signal decoding using CAN database files

📦 Downloads

For Windows Users (No Python Required)

Download CANDataConverter_v2.01_win64.zip below and extract it.

  • Run CANDataConverter.exe
  • Windows 10/11 (64-bit)
  • No installation needed

For Python Users

Clone this repository and install dependencies:

git clone https://github.com/Nishina-N/CANDataConverter.git
cd CANDataConverter
pip install -r requirements.txt
python CANdata2matcsv.py

See README.md for details.

🚀 Quick Start

  1. Download and extract the ZIP file
  2. Double-click CANDataConverter.exe
  3. Select your DBC file
  4. Select your CAN log file (BLF or ASC)
  5. Choose output format and resampling option
  6. Click "Convert!"

📋 System Requirements

Windows Executable:

  • Windows 10 or 11 (64-bit)
  • No Python installation required

Source Code:

💖 Support This Project

If this tool helps you, please consider:

  • ⭐ Star this repository - Helps others discover the tool
  • 💝 Become a GitHub Sponsor - Support ongoing development
  • 🐛 Report bugs - Help improve the tool
  • 🔧 Contribute - Pull requests are welcome!

📝 License

  • Main program: MIT License
  • CAN_Extractor module: LGPL v3

See LICENSE for full details.

🙏 Acknowledgments

  • Uses cantools library for DBC parsing
  • Uses python-can library for CAN log file reading

Questions or issues? Please open an issue!