avr-dude – حل مشکل Operation not permitted در اوبونتو

من برای برنامه نوشتن روی میکروکنترلر و پروگرام کردنش از avr-eclipse استفاده میکنم.

پروگرامری که من استفاده میکنم USBasp هست که در حالت عادی برای کار کردن باهاش با avr-dude با ارور زیر مواجه میشم:

avrDude error message

تو این آموزش قراره توضیح بدم که چطور اگه به همچین مشکلی با هر پروگرامری برخوردید اونو حلش کنید

خب اول از همه پروگرامرتونو به کامپیوتر وصل کنید.

پیدا کردن idVendor پروگرامر

حالا یه صفحه ترمینال باز کنید و توی اون بنویسید

dmesg | tail | grep idVendor

 

حالا تو خروجیتون idVendor و idProduct رو نوشته که باید اونا رو یادداشت کنید.

مثلا برای من خروجی به این شکله:

Screenshot from 2016-04-15 13:04:40

اضافه کردن پروگرامر

دستور زیر رو توی ترمینال بزنید:

sudo gedit /etc/udev/rules.d/41-atmega.rules

حالا اینجا میتونید پرورامراتونو تعریف کنید، مثلا من این نمونه‌ها رو از اینجا برداشتم:


# Please test and place config for other programmers here


# JTAGICE mkII 

ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", GROUP="users", MODE="0666" 

# AVRISP mkII 

ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", GROUP="users", MODE="0666" 

# Dragon


ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", GROUP="users", MODE="0666"


# USBTiny


ATTR{idVendor}=="1781", ATTR{idProduct}=="0c9f", GROUP="users", MODE="0666" 

حالا میتونید پروگرامر خودتونو اگه توی این لیست نیست تعریف کنید.

مثلا برای من محتوای نهایی به شکل زیر هست:

Screenshot from 2016-04-15 13:07:54

حالا باید خودمو به گروه users اضافه کنم:

sudo usermod -a -g users YOUR_USERNAME

که باید YOUR_USERNAME رو با نام کاربری خودتون عوض بکنید.

بعد از اون هم با دستور زیر، udev رو ریلود کنید:

sudo reload usev

حالا پروگرامرتونو قطع و مجدد وصل کنید و امتحان کنید و اگه بازم operation not permitted داد یبار ریبوت کنید.

پاسخ دهید