Доступ к / dev / ttyACM0 запрещен при загрузке Lubuntu, но работает в любое другое время - PullRequest
0 голосов
/ 13 марта 2020

Я пытаюсь запустить программу на Lubuntu 19.04, которая общается с моим устройством Arduino Due (робототехника) через последовательный порт с / dev / ttyACM0. Все выглядит нормально, пока я не попытаюсь запустить приложение при запуске.

Проблема возникает только тогда, когда я пытаюсь загрузить приложение при входе в систему. Запуск от имени пользователя, из терминала, из файла .desktop, из скрипта et c. это не проблема, я могу установить sh соединение 10/10 раз.

Пожалуйста, имейте в виду, что я сейчас ставлю $USER вручную, в каждой команде она явно передается как моя де-факто имя пользователя.

Это не должно быть проблемой с разрешениями.

$ ls -la /dev/
...
crw-rw-rw-   1 root dialout 166,     0 mar 13 17:27 ttyACM0
...
$ groups $USER

$USER : $USER root adm tty dialout cdrom sudo dip plugdev lpadmin sambashare

Я пытался запустить его с .xsessionrc с:

#!/bin/bash

# Some other commands to set the environment up

/home/$USER/user_panel /dev/ttyACM0

Я также попытался установить его в настройках сеанса LXQt с помощью автозапуска, поэтому у меня появилась запись .desktop:

$ cat ./.config/autostart/$USER\ User\ Panel.desktop

[Desktop Entry]
Exec=/home/$USER/user_panel /dev/ttyACM0
Name=User Panel
Type=Application
Version=1.0

Я попытался запустить оба этих файла вручную, и все было в порядке, приложение запустилось , соединение было установлено.

Я также пытался настроить правило udev.

$ cat /etc/udev/rules.d/50-myusb.rules 

KERNEL=="ttyACM[0-9]*", MODE="0666

Следовательно, мой вопрос: что я должен искать в качестве причины такого отказа во время загрузки?

...