Skip to main content

Frequently Asked Questions

Synria Desk cannot detect the robotic arm on Ubuntu

If Synria Desk cannot detect the robotic arm, the current user may not have permission to access the serial port. Follow these steps to configure access.

1. Find the robotic arm serial port

Open a terminal and run:

sudo dmesg -w | grep --line-buffered -E 'ttyACM|ttyUSB'

Disconnect and reconnect the robotic arm USB cable. The new device name shown in the terminal is the robotic arm serial port, for example, ttyACM0. Its full path is /dev/ttyACM0. After finding the port, press Ctrl+C to stop monitoring.

2. Grant permanent serial port permissions

Copy and run all of the following commands:

sudo tee /etc/udev/rules.d/99-robot-arm-serial.rules > /dev/null <<'EOF'
KERNEL=="ttyACM*", MODE="0666"
KERNEL=="ttyUSB*", MODE="0666"
EOF

sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=tty

After the commands finish, disconnect and reconnect the robotic arm. This permission configuration remains effective after reconnecting the device or restarting the computer, so it does not need to be repeated.

3. Check permissions and test the connection

Check the serial port permissions:

ls -l /dev/ttyACM0

If the permissions include rw-rw-rw-, the configuration was successful. Then test the serial port connection:

python3 -c 'import os; fd=os.open("/dev/ttyACM0", os.O_RDWR | os.O_NOCTTY); print("PASS: robotic arm serial connection is working"); os.close(fd)'

If PASS: robotic arm serial connection is working appears, the current user can access the robotic arm serial port. Open Synria Desk and scan for the robotic arm again.

Serial port name

If the port found in the first step is not /dev/ttyACM0, replace /dev/ttyACM0 in the commands above with the actual serial port path.