Arduino Uno R3 не распознается Arduino IDE в Ubuntu 21.04
Теперь я уже два дня дергаю себя за волосы по этому поводу. Я перепробовал все. Я перевернул каждый камень, просмотрел каждый результат поиска и каждую тему форумов Arduino.
Проблема в том, что Arduino IDE не распознает Arduino при подключении к ПК, поэтому я не могу загрузить скомпилированные скетчи. Как обычно, выпадающее меню последовательного порта выделено серым цветом.
Вещи, которые я пробовал до сих пор:
- Попробовал другой USB - кабель. Те же результаты.
- Попробовал это на Mac. Он безупречно работает с различными скетчами.
- Посмотрел журналы dmesg для Arduino при подключении. Он успешно подключается к компьютеру.
- Создал пользовательское правило udev для его символической ссылки из /dev/bus / usb/001/00X в /dev/ttyACMx.
- Изменил пользовательское правило udev для его символической ссылки из /dev/bus/usb/001/00X в /dev/ttyUSBx (так как по какой-то причине IDE сначала искал ttyUSB0).
- Пробовал Arduino IDE из snap, apt и из arduino.cc. Все они работают одинаково.
- Пробовал разные версии пакетов AVR board из диспетчера плат, но ни одна из них не работает вообще.
- Попробовал NodeMCU (ESP8266), он работает безупречно.
- Попробовал Arduino Due, он работает безупречно.
- Добавил себя в группы dialout, uucp и tty. Ничего не изменилось.
- Изменены разрешения на a+rwx для всех возможных файловых узлов устройства Arduino.
- Изменил групповое владение на dialout, uucp и tty для всех возможных файловых узлов устройств Arduino.
- Попробовал запустить Arduino IDEs от имени root. Ничего не изменилось.
- Установлены различные прошивки и библиотеки для linux (например, libserialport0)
- Исправил apt-версию Aruino IDE с помощью patchelf.
- Обновлено.
- Перезагрузился.
- Но, эй, чувак, почему бы тебе просто не использовать Mac для компиляции и загрузки скетча или любого другого микроконтроллера, если уж на то пошло? - Потому что мне нужно получить вывод с моего основного компьютера и делегировать его через последовательный интерфейс Arduino. А Arduino Due слишком неуклюж. А NodeMCU имеет спорную поддержку FastLED.
Если у кого-нибудь из вас, сумасшедших, есть идея, как это решить, я должен вам пиво.
@Tozzart, 👍-2
Обсуждение2 ответа
Я испытал это с несколькими новыми установками ОС Linux. Попробуйте вот что:
Linux не видит board Run:
Введите "группы", есть ли там "dialout"?
sudo usermod -a -G tty yourUserName
sudo usermod -a -G dialout yourUserName
Выйдите из системы и снова войдите в систему, чтобы изменения вступили в силу. https://playground.arduino.cc/Linux/All/#Permission sudo ln -s /usr/bin /python3/usr/bin / python
После обновления до Ubuntu 22.04 с 20.10 я больше не мог ничего загружать на платы Arduino UNO. Проблема заключалась в том, что правильный порт не был указан в Arduino IDE. Все, что у меня было в качестве порта, это ttyS0. Это не будет работать с платами USB. Я использую Arduino IDE 1.8.19, но считаю, что это не имеет отношения к проблеме.
После проверки журналов:
sudo dmesg
Я получил следующий вывод:
usb 4-2: Product: USB2.0-Serial
ch341 4-2:1.0: ch341-uart converter detected
usb 4-2: ch341-uart converter now attached to ttyUSB0
input: BRLTTY 6.4 Linux Screen Driver Keyboard as /devices/virtual/input/input27
usb 4-2: usbfs: interface 0 claimed by ch341 while 'brltty' sets config #1
ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
ch341 4-2:1.0: device disconnected
Итак, все мои платы Arduino UNO, кажется, распознаются как какое-то tty-устройство Брайля (!). Затем поддержка Брайля пытается установить диалог с платой UNO. Это, конечно, не удается, что приводит к отключению платы UNO, что приводит к удалению устройства /dev/ttyUSB0. Именно по этой причине он не отображается в среде IDE.
Быстрое решение — просто удалить поддержку tty-дисплеев с шрифтом Брайля, если она вам не нужна.
sudo apt remove -y brltty
Это сработало для меня. Надеюсь, это сработает и для вас.
Проблема может быть связана с каким-то правилом udev, установленным с пакетом brltty. Если не ошибаюсь, правила udev обрабатываются в алфавитном порядке. Таким образом, может случиться так, что какое-то правило Брайля udev совпадет первым, что приведет к описанному выше сценарию.
Спасибо за подробные сведения о dmesg. Это помогло, потому что я прошел через все это и удалил brltty много месяцев назад после обновления до 22.04. Однако сегодня я попытался подключить Arduino Nano и не смог его распознать. Я обнаружил, что brltty был снова установлен. Я запустил apt remove, и arduino nano появился на ttyUSB0, как и должно быть. Поскольку вы показали dmesg, я смог сравнить со своим и увидеть, что проблема была в нем., @raddevus
- Как отправить символы в SoftwareSerial Arduino с помощью командной строки Linux без хвоста -f?
- Есть ли у Linux защита программного обеспечения на USB?
- Отключение Arduino при загрузке
- Arduino Uno не загружает код и перегревается
- Ни ttyACM0, ни ttyUSB0
- Не удается подключиться через /dev/ttyACM0 (Ubuntu 18.04)
- Чтение последовательных данных с Arduino с помощью кода C
- Как программировать микрочипы напрямую через USB
это может быть несоответствие скорости передачи данных в бодах ... загрузите скетч, который отправляет известный символ с известной скоростью передачи данных в бодах каждые 1/2 секунды или около того ... используйте последовательную консоль, отличную от arduino IDE, для мониторинга последовательного порта, @jsotola
Когда Arduino подключен, есть ли какие-либо файлы устройств ttyACMx или ttyUSBx в /dev? Если да, пожалуйста, подключитесь к ним с помощью последовательной программы (например, "cu-l /dev/ttyUSB0-s 115200" в командной строке) и попытайтесь что-то отправить. Горит ли светодиод RX немного (будет только очень скоро, но видно)?, @chrisl
@jsotola Скетч ничего не может отправить, так как я не могу ничего загрузить в Arduino, к сожалению :(, @Tozzart
@chrisl Может быть ttyACX/ttyUSBx, так как я создал правило udev для символической ссылки на устройство после его подключения. По какой-то причине он обычно "монтируется" в /dev/bus/usb/001/00X. Я попробую тот же трюк. Большое вам спасибо!, @Tozzart
@Tozzart вы сказали, что это работает на Mac ... используйте Mac для загрузки тестового скетча, @jsotola
Пока вы не разберетесь со своей основной проблемой подключения к нему, я бы удалил все добавленные вами правила udev, потому что они только усложнят устранение неполадок., @timemage