次は、AVRへの書込みです。プログラマは AVRISP mkII を使用します。
ATTINY45を使ったブレッドボードがあったので、このATTINY45のプログラムを読み出してみることにします。
$ sudo avrdude -c avrispmkII -P usb -p t45 -F -U flash:r:test.hex:i avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e9206 avrdude: reading flash memory: Reading | ################################################## | 100% 1.16s avrdude: writing output file "test.hex" avrdude: safemode: Fuses OK avrdude done. Thank you. $
ということで、無事に superuser では読み出すことができました。
しかし、ルートでなければならないのは不便だし、できたファイルのオーナーがルートなのも不便です。
調べてみると、ゆきの研究室のLinuxメモのページにて、/etc/udev/rules.d/60-local.rulesに
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avr_programmer_end" # USBasp ATTRS{product}=="USBasp",GROUP="usbuser",MODE="0660" # AVRISP mkII ATTRS{idVendor}=="03eb",ATTRS{idProduct}=="2104",GROUP="usbuser",MODE="0660" # AVR Dragon ATTRS{idVendor}=="03eb",ATTRS{idProduct}=="2107",GROUP="usbuser",MODE="0660" # AVR-Doper(HID) ATTRS{idVendor}=="16c0",ATTRS{idProduct}=="05df",GROUP="usbuser",MODE="0660"LABEL="avr_programmer_end"
と記述して、アプリケーションメニューの「ユーザーとグループ」で usbuserというグループを作り、それに普段使うユーザーを追加すれば良いようなことが書いてあるのですが、うまくいきません。うーん。
<追伸>
なんのことはない、単に再起動すれば良いだけだったようです。