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 $USERLog out and log back in for the group change to take effect. (A reboot also works.) Verify with:
groupsShould 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/ttyUSB0The fourth column is the group. Add yourself to that group instead.
Verify the port works
After re-logging-in:
echo '?' > /dev/ttyUSB0Should 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/ttyUSB0and 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?
- Port is not listed.
- Baud rate and serial port guide.
- Post in the Facebook group with your distro and the output of
groupsandls -la /dev/tty*.