Beam Benchドキュメント

Linuxのシリアル権限

ユーザーに権限がないため、Beam Benchはシリアルポートを開けません。dialoutグループで解決できます。

このような症状が出ます

Linuxでレーザーを接続すると、シリアルポート(/dev/ttyUSB0または/dev/ttyACM0)は存在するのに、次のいずれかが起こります。

  • Beam Benchのドロップダウンに表示されない
  • 接続時にBeam Benchが「Permission denied」と表示する

原因

Linuxはファイルシステムの権限によってシリアルポートを保護しています。デフォルトでは、シリアルデバイスにアクセスできるのはdialoutグループだけです。ユーザーがこのグループに所属していないと、ポートを開けません。

解決方法

OSレベルでポートを確認する

ls -la /dev/ttyUSB* /dev/ttyACM*

crw-rw---- 1 root dialoutなどのエントリが表示される場合、ポートは存在しますが、dialoutグループに制限されています。

dialoutグループに自分を追加する

sudo usermod -aG dialout $USER

ログアウトしてから再度ログインし、グループの変更を反映させます。(再起動しても反映されます。)次のコマンドで確認します。

groups

一覧にdialoutが表示されるはずです。

ディストリビューションで別のグループ名が使われている場合

一部のディストリビューションでは、uucpの代わりにtty(Arch)またはdialoutを使用します。ポートのグループを確認します。

ls -la /dev/ttyUSB0

4番目の列がグループです。そのグループに自分を追加してください。

ポートが動作することを確認する

再度ログインした後、次を実行します。

echo '?' > /dev/ttyUSB0

権限エラーが発生しなければ問題ありません。データを読み返すにはもう少し手順が必要です(screenminicomを使用するか、Beam Benchを開いてください)。

Beam Benchにポートが表示されない場合

  • OSがポートを認識していることを確認します(ls /dev/tty*)。
  • ユーザーがアクセスできることを確認します(stat -c "%U %G" /dev/ttyUSB0と所属グループを確認します)。
  • Beam Benchを再起動して、OSのデバイス一覧を再スキャンさせます。

flatpak、snap、appimageをサンドボックス内で使用している場合

パッケージ化されたLinuxアプリの形式によっては、デバイスへのアクセスが制限されています。使用しているパッケージ形式のドキュメントを確認してください。AppImageでは、--no-sandboxを付けて実行するか、デバイスへのアクセスを明示的に許可する必要がある場合があります。

解決したことを確認する

  • Beam Benchのポートドロップダウンにポートが表示される。
  • 接続に成功する。
  • ConsoleにGRBLのウェルカムメッセージが表示される。

まだ解決しない場合

On this page