Armadilloフォーラム

リレー制御モジュールのコントロール

orochi2213

2023年9月2日 5時57分

いつもお世話になっております。
USB接続のリレー制御モジュール(東京デバイセズ iwt303-3c)の利用を考えています。
https://tokyodevices.com/items/149

以前G2で動作させていた実績から、G4でもとテストを行っております。
マニュアル「3.6.3. USB デバイスを使用する」を参考に、コンテナ設定ファイルの
devicesの項目に/dev/ttyUSB*を加える、またはvolumesに/dev:/devを加える等行い、
試していますが、動作するに至っておりません。

制御ソフト(https://github.com/tokyodevices/td-usb)はコンテナ内で
コンパイルし、実行可能ですが、デバイスが正しく認識されていないようで、
ボードの制御ができてい、ないという状況です。

個別商品との相性に関する質問となってしまい恐縮ですが、
一般的にこのような運用を考えた場合、気を付けるポイントなどございますでしょうか。

よろしくお願いいたします。

コメント

at_dominique.m…

2023年9月4日 9時28分

orochi2213さん、

お世話になっています、
アットマークテクノのマルティネです。

> USB接続のリレー制御モジュール(東京デバイセズ iwt303-3c)の利用を考えています。
> https://tokyodevices.com/items/149
>
> 以前G2で動作させていた実績から、G4でもとテストを行っております。
> マニュアル「3.6.3. USB デバイスを使用する」を参考に、コンテナ設定ファイルの
> devicesの項目に/dev/ttyUSB*を加える、またはvolumesに/dev:/devを加える等行い、
> 試していますが、動作するに至っておりません。
>
> 制御ソフト(https://github.com/tokyodevices/td-usb)はコンテナ内で
> コンパイルし、実行可能ですが、デバイスが正しく認識されていないようで、
> ボードの制御ができてい、ないという状況です。

USB デバイスにいくつかの種類があって、それぞれに違うコンテナでの使い方がありますのでとても分かりにくいことになってしまいました。
今回は td-usb のリポジトリを確認したところ、 libusb を使っていますのでおそらく /dev/bus/usb/* のファイルで制御されていると思います。(デバイスがないと確認できませんので、おそらくとしかいえません)

その場合は、「add_volumes /dev:/dev」 だけではファイルが生成されますが、アクセス制限がない為使えないことになっています。

コンテナコンフィグに 「add_volumes /dev:/dev」 の代わりに、「add_hotplugs usb_device」で試してみてください。

それでもエラーしましたら、「add_args --privileged」ですべての制御も外してみていただければ幸いです。運用としてはおすすめしないオプションですが、試すには便利です。
また、エラーメッセージの内容を提供していただけたら何かわかるかもしれませんので、エラーの場合にお願いします。

よろしくお願いします。

orochi2213

2023年9月5日 10時40分

> orochi2213さん、
>
> お世話になっています、
> アットマークテクノのマルティネです。
>
> > USB接続のリレー制御モジュール(東京デバイセズ iwt303-3c)の利用を考えています。
> > https://tokyodevices.com/items/149
> >
> > 以前G2で動作させていた実績から、G4でもとテストを行っております。
> > マニュアル「3.6.3. USB デバイスを使用する」を参考に、コンテナ設定ファイルの
> > devicesの項目に/dev/ttyUSB*を加える、またはvolumesに/dev:/devを加える等行い、
> > 試していますが、動作するに至っておりません。
> >
> > 制御ソフト(https://github.com/tokyodevices/td-usb)はコンテナ内で
> > コンパイルし、実行可能ですが、デバイスが正しく認識されていないようで、
> > ボードの制御ができてい、ないという状況です。
>
> USB デバイスにいくつかの種類があって、それぞれに違うコンテナでの使い方がありますのでとても分かりにくいことになってしまいました。
> 今回は td-usb のリポジトリを確認したところ、 libusb を使っていますのでおそらく /dev/bus/usb/* のファイルで制御されていると思います。(デバイスがないと確認できませんので、おそらくとしかいえません)
>
> その場合は、「add_volumes /dev:/dev」 だけではファイルが生成されますが、アクセス制限がない為使えないことになっています。
>
> コンテナコンフィグに 「add_volumes /dev:/dev」 の代わりに、「add_hotplugs usb_device」で試してみてください。
>
> それでもエラーしましたら、「add_args --privileged」ですべての制御も外してみていただければ幸いです。運用としてはおすすめしないオプションですが、試すには便利です。
> また、エラーメッセージの内容を提供していただけたら何かわかるかもしれませんので、エラーの場合にお願いします。
>
>
> よろしくお願いします。

ご返信いただきありがとうございます。
ご指摘いただいたとおり、コンテナコンフィグに
add_hotplugs usb_device
を追加することにより無事動作いたしました。

この度はありがとうございました。