1位 (2024/08/13時点)
ダイアグ通信でVINの要求を試みる。
cansend
/ candump
コマンドでも簡単なCANメッセージの送受信はできるが、複数フレームに分割されたメッセージの扱いなどが大変なので、 isotpsend
/ isotprerecv
を使う。
VIN含む色々なデータを読める命令として、Read Data by Identifier (RDBI) がある。
https://piembsystech.com/data-identifiers-did-of-uds-protocol-iso-14229/#:~:text=server/vehicleIdentification options.-,0xF190,-VIN Data Identifier によると、Service 0x22 でRDBIを呼び出せる。中でもDID Number 0xF190 がVINのDID。
ということで、22 F1 90
のペイロードをECUに送信したい。
各ECUのUDSに対応したCAN IDの調べ方はちょっとよく分かっていないのだが、https://ramn.readthedocs.io/en/latest/userguide/diag_tutorial.html#ramn-standard-uds-servicesとか他のネット記事を見ると、