WireSharkでUDPのLuaプラグインを作る機会があり、
BACnet MS/TP(mstpcap.exe)で使用している
USB-RS485アダプタでパケットさえ取れれば
Modsbus/RTUのプラグインも作れるのではと思ったのですが
いつの間にかできるようになっていて
日本語のサイトがなかったので記録として残す。
いつものキャプチャツール
Modbus RTUをキャプチャするときは
LINEEYEのLEシリーズを使っていたのだけど
ちょっと見るだけならWiresharkと下記のUSBアダプタをつけるだけなので便利だった。
今回使ったUSB-RS485アダプタ
BACnet MS/TPやModsbus/RTUでいつも使用している
USB-003を使用した。
WiresharkSerialAdapter
GitHubからWiresharkSerialAdapter.exeをダウンロードしてきてextcapの下に置く
(参考のURLは\Wireshark\extcap\Wiresharkだったがいつも\extcapに入れている)
C:\Program Files\Wireshark\extcapなど
そのあとWiresharkを起動するとSerialPortAdapterが出てくるので選択して起動する
通信速度の設定をしてWireshark DLTを147にするみたいです。
(各項目の詳細は参考URLで説明しているかも)
設定にてUser DLTにModbus/RTUを割り付ける(mbrtu)
おまけ
GitHubに複数USBキャプチャをしたい場合は
WiresharkSerialAdapter.exeをリネームしておくと複数使えると書いてたので
コピーすると2つ表示されるみたいなので複数環境キャプチャしたい場合は
こちらの方が安く済むかも。
参考にしたURL