問題タブ [socketcan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4567 参照

linux - vcan0 インターフェイス Linux 通信

Linux は仮想缶インターフェースをサポートしています。それは以下によって有効にされました:

cam-utilsなどcamsnifferを使用しながらcansend

缶のパケットを見ることができました。ただし、同じホスト内のみ。Ubuntu VirtualBox マシンを試しました。ゲスト OS とホスト OS は、ホストオンリー アダプターを使用して相互接続されますvboxnet0

SocketCAN も試しましsocket(PF_CAN, SOCK_RAW, CAN_RAW)たが、他のマシンで受信できませんでした (同じマシン内で動作しsocket(PF_CAN, SOCK_DGRAM, CAN_BCM)ますstderr)

簡単に言うと、Linux ホスト間で CAN パケットを送受信できますか? 仮想マシン (vboxnet0) または物理的に接続されている (イーサネット) は関係ありません。

注: Ubuntu 16.04 と 12.04 をそれぞれホストとゲスト OS として使用しました。

0 投票する
1 に答える
169 参照

javascript - Socketcan register リスナーが呼び出されていません

RaspberryPi で「socketcan」npm パッケージで Meteor を使用しています。CAN ネットワークを定義するために、カヤック ファイル 'canDefinition.kcd' を使用しています。これは、サーバー フォルダー内のスタートアップ JavaScript ファイルが次のようになっているものです。

sebi2k1/node-canの指示に従いました。

問題は、選択した CAN メッセージが到着したときにリスナー「onChange」が呼び出されないことです。

すでに機能しているもの/すでにチェックしたもの:

  • ID をフィルタリングして特定の CAN メッセージを受信する (以下のコードを参照)
  • canDefiniton.kcd データベースへのアクセス/読み取り

誰か助けて?ありがとう!

0 投票する
0 に答える
2440 参照

c++ - QT CAN BUS、SocketCAN が CAN フレームを読み取れない

QT で readFrame() メソッドを使用して CAN フレームを読み取る際に問題があります。

初期化のための私のコード:

データを送信するためのコード - すべてが正しく動作します

データを読み取るためのコード

デバッグ中は常に frame = @0x7fffffffdf10、dataLength = 0、id = 0、

そのため、candump コマンドや QT CANBUS の例を介して着信パケットを明確に確認できますが、何も受信しません。

助けてくれませんか?ありがとう。

0 投票する
2 に答える
5612 参照

c++ - CANビットレートを取得

C++ で自分の socketcan ソケットの現在構成されている CAN ビットレートを読み取りたいです。

私はビットレートを見ることができますip -det link show can0

ビットレートは 経由/etc/network/interfacesで設定されましたが、ユーザーは手動で変更できました。

libsocketcan は、ビットレートの設定のみをサポートしているようですが、読み取りはサポートしていないようです。

上記の出力を生成するコードはiproute2、 rtnetlink を使用します。

libnetlink を使用して対応する属性を読み取るにはどうすればよいですか? または、現在のビットレートを読み取る別の方法はありますか?

0 投票する
2 に答える
1621 参照

linux - imx 上の Linux 2.6: candump を使用して送信された CAN フレームをログに記録できません

imx CPU でカスタム ビルド Linux 2.6 を実行しています。外部ノードとのCAN通信は魅力的に機能しますが、端末で「candump can0」を使用すると、アプリからノードに送信するフレームが出力されません(USB-CANドングルを使用してホストで同じアプリを実行すると)この問題は発生しません)。

拡張 CAN フレームが送信されると、candump を使用して表示されます。

送信されるメッセージがフィルター処理されていると便利な場合があることは理解していますが、選択できるようにする必要があります。

手がかりは大歓迎です。これを引き起こすのは、ドライバーのフィルタリングである可能性があると考えています。

FLexCAN ドライバーには、次の構成ファイルがあります。

アボート
_
_