Skip to content

Conversation

K-Yashiro123
Copy link
Contributor

不具合:
・非対応の逐次取得系コマンドを送信した後の、get_*関数の応答が0になる。
・MSコマンドのget関数の戻り値が-5(無応答)になっている。(wireShark上では正常応答が帰ってきている)

原因:
・逐次取得取得系コマンドの送信時に、構造体urgのis_sendingフラグをtrueにしない。
・取得系コマンドの応答が不正応答だった場合、ライブラリ内で、ignore_receive_data_with_qtというメソッドを呼んで、QTを送信した後にすべてのバッファを捨てる処理を行うが、is_sendingがtrueでないときはバッファを捨てない仕様になっていた。結果的に、そのあとGGコマンドの応答を見るときに、バッファの先頭にあるQTコマンドの応答を見ているので、戻り値が0になる。
・MSの応答が無応答になっていたのは、上記のずれが原因でHDとHEの無応答の結果をMSの応答の代わりに見ていたから。
・HEとHDが無応答なのは使用していた20LXのファームに問題がありそう。(3秒のタイムアウトを設けても応答がない)

対処:urgLibraryのsend_distance_command関数内でscan_times==1の時もis_sendingをtrueにする。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant