Skip to content

Latest commit

 

History

History
123 lines (81 loc) · 4.59 KB

File metadata and controls

123 lines (81 loc) · 4.59 KB
CANVIEWER LOGO

CANViewer

cross-platform CAN bus monitor, built on Python.

License GitHub stars GitHub issues GitHub release

image1.png

このアプリケーションは、SLCANやgs_usb対応CANデバイスをPCに接続し、PCから手軽にCAN通信を検証できるツールです。 CANバス上に流れるデータの受信、定期送信や単発送信、標準IDと拡張IDの切り替え、10進数↔️16進数変換に対応しています。 Pythonベースで書かれているためMac,Ubuntu,Windows動作します。

App Downloads

Releasesからビルド済みアプリケーションがダウンロードできます。Windows,Mac,Linux(バイナリ)で動作します。

CANViewerの機能

  • 単発送信 : Intervalに入力せずにStartボタンを押す
  • インターバル送信 : Intervalにインターバル送信したい間隔(ミリ秒)を入力してStartボタンを押す
  • 標準/拡張フォーマットの切り替え : StdID/ExtIDのクリックでフォーマットの切り替え
  • 入力進数変更 : DataFrameのラベルをクリックすることで切り替え可能。またCtrl+H(J)でHEX、Ctrl+D(F)でDECへの入力メソッド切り替えが可能
  • フィルタ機能 : Ctrl+PでProモードに切り替わります。Proモードではフィルタ設定用のテーブルが表示され、無視したいIDを入力することで、指定したIDのメッセージがログから非表示になります。(現在Proモードはフィルタ機能のみ実装されています)

インターバル送信

interval.gif

標準ID/拡張IDフォーマット切り替え

id_format_switch.gif

入力フォーマットの10進数(DEC),16進数(HEX)切り替え

hex_dec_switch.gif

無視したいIDのフィルタ機能

filter.gi

Development Prerequisites / 開発に必要なもの

  • CANデバイスが用意されていること(SLCANまたはgs_usbであればCANable2.0MKS CANableなど)
  • Pythonがインストールされていること
    • uvがインストールされていない場合は、事前にインストールする必要があります。macOSではbrew install uvでインストールできます。
    • uvを使用して依存関係を解決することで、Pythonアプリケーションの実行に必要なパッケージが自動的にインストールされます。
  • makeが入っていると便利です

メンテナンス用コマンド、依存関係更新、CI、リリースビルドについてはDevelopment Guideを参照してください。

ビルド方法

  1. ターミナルを開きます。

  2. Pythonアプリケーションが格納されているディレクトリに移動します。

    cd CANViewerのディレクトリ
  3. uvを使用して依存関係を解決し、仮想環境を作成します。

    uv sync --all-groups

    または

    make install
  4. アプリケーションを起動します。

    uv run python main.py

    または

    make run
  5. gs_usbで動作させる場合のオプション

    uv run python main.py -c gs_usb

アプリケーションバンドルのビルド

macOSでは dist/CANViewer.app が生成されます。

make build

dist/CANViewer.dmg も生成する場合:

make build-dmg

Linuxでは dist/CANViewer-<arch>.AppImage が生成されます。

make build-appimage

AppImageを ~/.local/bin に配置し、desktop entryに登録する場合:

make install-linux-desktop

ライセンス

このプロジェクトはLGPLライセンスです。 詳しくはLICENSEを確認ください