hardbyte / hardbyte/python-can
No remote request flag is set when sending such frame with interface socketcand
- 主要言語
- Python
- スター
- 1.6k
- フォーク
- 697
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
### Describe the bug
When sending a frame like
```python
bus = can.interface.Bus(interface='socketcand', channel='can0', host='the.ipa.ddr.ess', port=29536)
...
can_msg = can.Message(is_extended_id = False, arbitration_id = address, is_remote_frame = True)
self.bus.send(can_msg)
```
the terminal message print is:
```
Timestamp: 0.000000 ID: 403 S Rx R DL: 0
```
but on the bus be get (using candump):
```
can0 403 [0] ''
```
kinda empty frames.
When using the direct can0 interface (no socketcand) I get correctly:
```
can0 403 [0] remote request
```
### To Reproduce
Using python_can==4.6.1 on a Mac with Python 3.9.6.
socketcand Version 0.6.1 is running on a Debian 13.
### Expected behavior
Seeing correct remote request frames
コントリビューションガイド
調査の方向性
Start at can.interface.Bus with interface='socketcand' and trace self.bus.send(can_msg) when can.Message sets is_remote_frame=True. Compare the socketcand path with the direct can0 path and use candump to verify the result. Done means the transmitted frame is reported as a remote request rather than an empty data frame.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- embedded-iot, networking
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 68/100