Проблема с выполнением правил udev для avr-usb-jtag от olimex

4

Я использую Ubuntu 12.04 для программирования и недавно решил принести мои предыдущие проекты микроконтроллера atmel от Win to Linux. А именно AVR.

Я установил целую цепочку инструментов. Он включает в себя: avrdude binutils-avr gcc-avr avr-libc gdb-avr.

Чтобы проверить подключение к микроконтроллеру, я использовал программист olimex avr-usb-jtag. Когда я подключаю его, и он рассматривается как / dev / ttyUSB0 (являющийся чипом usb-com FTDI). Программист совместим с Atmel JTAGICE.

Теперь, когда мы пытаемся

avrdude -p c128 -c jtag1 -P /dev/ttyUSB0 -t

И получим

avrdude: ser_open(): can't open device "/dev/ttyUSB0": Permission denied

До сих пор кажется, что без прав root нельзя писать и читать с устройства. И это подтверждается, когда мы на самом деле пытаемся

sudo avrdude -p c128 -c jtag1 -P /dev/ttyUSB0 -t

Ответ:

avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9781

Теперь я хочу включить обычных пользователей (например, программирование IDE) для доступа к программисту без предоставления им прав root. ПЕРВЫЙ ВОПРОС для меня - как это сделать лучше?

Я попробовал подход udev и хотел, чтобы система отличала подключенное устройство и применяла разрешения к файлу устройства (по умолчанию для ttyUSB0). Но единственным вариантом, который работал, был создание нового файла:

/etc/udev/rules.d/10-usb-avr-jtag.rules

Он содержал

KERNEL=="ttyUSB*" MODE="0666"

Эта конфигурация работает, но мне любопытно, почему что-то вроде этого ниже не работает для меня вообще (появляется ttyUSB0 по умолчанию, никаких правил не применяется к файлу)?:

SUBSYSTEM=="usb", ATTR{idProduct}=="6001", ATTR{idVendor}=="0403", MODE="0666"

Любые идеи о том, как заставить его работать, или почему он вообще не работает?

Вот мой вывод udevadm

    
задан Anton 06.06.2012 в 15:33
источник

1 ответ

1

Если первое работает, я подозреваю, что последний должен прочитать

SUBSYSTEM=="usb", ATTRS{idProduct}=="6001", ATTRS{idVendor}=="0403", MODE="0666"
    
ответ дан RobotHumans 06.06.2012 в 16:01
источник