23

プラグを抜き差しすると、システムは何かが差し込まれていることを確認します。

bluehat@Matapan:/dev$ tail -f /var/log/syslog
Mar 23 15:36:35 Matapan kernel: [156082.112874] usb 7-1: new full speed USB device using uhci_hcd and address 6
Mar 23 15:47:19 Matapan kernel: [156726.248081] usb 7-1: USB disconnect, address 6
Mar 23 15:47:29 Matapan kernel: [156736.200148] usb 6-1: new full speed USB device using uhci_hcd and address 3

AVRISPMKIIはcdc-acmに依存する必要があります。

bluehat@Matapan:/dev$ modinfo cdc-acm -V
module-init-tools version 3.12

それで、それはそれをうまく見ることができるはずです、それでも私はそれに書くことができません。

avrdude -p m1280 -c avrispmkII -P usb -U test.hex

戻り値

avrdude: usb_open(): cannot read serial number "error sending control message: Operation not permitted"
avrdude: usb_open(): cannot read product name "error sending control message: Operation not permitted"
avrdude: usbdev_open(): error setting configuration 1: could not set config 1: Operation not permitted
avrdude: usbdev_open(): did not find any USB device "usb"
4

5 に答える 5

31

Ubuntuはオブジェクトがそこにあることを認識しますが、udevルールのいくつかを修正するまではうまく機能しません。少しの更新だけが必要なファイルを提供してくれたhttp://steve.kargs.net/bacnet/avr-isp-mkii-on-ubuntu-hardy/に感謝します。

新しいファイル/etc/udev/avrisp.rulesを作成します

SUBSYSTEM!="usb", ACTION!="add", GOTO="avrisp_end"

# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", MODE="660", GROUP="dialout"

LABEL="avrisp_end"

次に、ファイルへの仮想リンクを作成し、ルールに優先順位を付けます

cd /etc/udev/rules.d
sudo ln ../avrisp.rules 60-avrisp.rules

ダイヤルアウトグループに所属していることを確認してください

groups

udevを再起動します

sudo service udev restart

やったー!

于 2011-03-24T03:54:10.240 に答える
11

Ubuntu 12.04の場合、Katyが投稿した構成に対して実行する必要のある小さな変更があります。

SYSFSのすべてのオカレンスはATTRに置き換える必要があります

さらに、それでも問題が解決しない場合は、必要な依存ライブラリがすべてインストールされていることを確認してください。uispパッケージもインストールする必要があることがわかりました。

udevを再起動しても違いがない場合は、プログラマーのプラグを抜いてから再度差し込むと違いがあります。

于 2012-06-03T10:33:21.850 に答える
7

13.10で機能する更新されたルール:

SUBSYSTEM!="usb", ACTION!="add", GOTO="avrisp_end"

# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", MODE="660", GROUP="dialout"

LABEL="avrisp_end"

変更に関する以前の投稿に基づいています。

于 2013-11-19T22:11:27.553 に答える
2

12.10で再び変更されたよう
ですサブシステムは「usb」になりました

必要なものを表示するコマンドを見つけました。そのためには、接続されたデバイスからバスとデバイス番号を知る必要があります(lsusbを使用)

バス003デバイス010:ID 03eb:lsusb

したがって、ISPからのバス番号は003で、デバイスは010です(必要に応じて/ 003/010の最後を編集してください)

udevadm info --attribute-walk --name = bus / usb / 003/010


他の多くのものの中でショー

SUBSYSTEM == "usb"

ATTR {idVendor} == "03eb"

ATTR {idProduct} == "2104"

上記で作成したルールを置き換え/変更すると、すべてが機能するはずです

コマンドが表示する他の問題がある場合は、ルールをチェックします(そのようにタイプミスが見つかりました:))エラーがない場合は何も表示されません(しばらくの間気づかなかった)

于 2013-01-13T21:14:12.560 に答える
1

次のudevルールファイルを使用して、Fedora19で動作させまし

SUBSYSTEM!="usb", ACTION!="add", GOTO="avrisp_end"

# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", MODE="660", GROUP="dialout"

LABEL="avrisp_end"

ご覧のとおり、いくつかのマイナーな点は、上記で提案されたものとは異なります。また、コンピューターを再起動する必要がありました。「udevadmcontrol--reload」を使用するだけでは不十分でした。

于 2014-10-15T10:13:05.853 に答える