Beam Bench Docs

Linux serial permissions

Beam Bench cannot open the serial port because your user lacks permission. Fix with the dialout group.

You see

On Linux, you plug in the laser. The serial port exists (/dev/ttyUSB0 or /dev/ttyACM0) but:

  • Beam Bench does not list it in the dropdown, or
  • Beam Bench shows "Permission denied" on connect.

What is happening

Linux protects serial ports with file-system permissions. By default, only the dialout group can access serial devices. If your user is not in the group, you cannot open the port.

Fix

Check whether you can see the port at the OS level

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

If you see entries with crw-rw---- 1 root dialout or similar, the port exists but is restricted to the dialout group.

Add yourself to the dialout group

sudo usermod -aG dialout $USER

Log out and log back in for the group change to take effect. (A reboot also works.) Verify with:

groups

Should show dialout in the list.

If your distro uses a different group name

Some distributions use uucp (Arch) or tty instead of dialout. Check the port's group:

ls -la /dev/ttyUSB0

The fourth column is the group. Add yourself to that group instead.

Verify the port works

After re-logging-in:

echo '?' > /dev/ttyUSB0

Should not produce a permission error. Reading data back is more involved (use screen, minicom, or just open Beam Bench).

If the port still does not appear in Beam Bench

  • Confirm the OS sees it (ls /dev/tty*).
  • Confirm your user can access it (stat -c "%U %G" /dev/ttyUSB0 and your groups).
  • Restart Beam Bench so it re-scans the OS device list.

If using a flatpak / snap / appimage with sandboxing

Some packaged Linux app formats have restricted device access. Check the documentation for the package format. For AppImages, you may need to run with --no-sandbox or grant device access explicitly.

Verify it worked

  • Beam Bench's port dropdown shows your port.
  • Connecting succeeds.
  • The Console shows the GRBL welcome message.

Still stuck?

On this page