İlk kez kurulum - usb portuna izin verilmedi- Ubuntu 14.04


18

Arduino'umu yeni taktım ve ışık açık, ancak göz kırpma testi yüklenemedi. İşte benim hatam:

Arduino: 1.6.7 (Linux), Yönetim Kurulu: "Arduino / Genuino Uno"

Sketch, 1.030 bayt (% 3) program depolama alanı kullanıyor. Maksimum 32.256 bayttır. Global değişkenler 9 bayt (% 0) dinamik bellek kullanır ve yerel değişkenler için 2,039 bayt bırakır. Maksimum 2.048 bayttır. avrdude: ser_open (): cihaz açılamıyor "/ dev / ttyUSB0": İzin reddedildi ioctl ("TIOCMGET"): Cihaz için uygun olmayan ioctl Panoya yükleme sorunu. Öneriler için http://www.arduino.cc/tr/Guide/Tro Giderme#upload adresine bakın .

Bu raporda, Dosya> Tercihler'de "Derleme sırasında ayrıntılı çıktıyı göster" etkinleştirilmişse daha fazla bilgi bulunur.

usb  ubuntu 


2
@ IgnacioVazquez-Abrams - bunu bir cevaba dönüştürebilir misiniz? Yüzdemizin yanıtlanmasını sağlamaya çalışıyoruz. :) Belki biraz kopyala ve yapıştır ile, bu yüzden sadece bağlantı değildir.
Nick Gammon

Tüm adımları attım ve ilk kez çalıştı. Şimdi ikinci programımı yüklemeye çalışıyorum ve bu mesajı alıyorum 'avrdude: ser_open (): cihaz açılamıyor "/ dev / ttyUSB0": İzin reddedildi' bunu yaptım: roquet @ roquet-HP-ENVY-x360-m6 -Convertible: ~ $ sudo toplayıcı roket konuşması Kullanıcı konuşması roquet' is already a member of '. roket @ roket-HP-ENVY-x360-m6-Dönüştürülebilir: ~ $ sudo chmod a + rw / dev / ttyUSB0 roket @ roket-HP-ENVY-x360-m6-Dönüştürülebilir: ~ $ ls -l / dev / ttyUSB * crw -rw-rw- 1 kök iletişim 188, 0 Oca 20 13:12 / dev / ttyUSB0 roket @ roquet-HP-ENVY-x360-m6-Dönüştürülebilir: ~ $ ama yine de 'izin denie
Roque Zabalet

Yanıtlar:


26

Gönderen belgeler :

Terminal'i açın ve şunu yazın:

ls -l /dev/ttyACM*

şöyle bir şey elde edersiniz:

crw-rw---- 1 root dialout 188, 0 5 apr 23.01 ttyACM0

ACM'nin sonundaki "0" farklı bir sayı olabilir veya birden fazla giriş döndürülebilir. İhtiyacımız olan veriler "diyalog" (dosyanın grup sahibi).

Şimdi kullanıcılarımızı gruba eklememiz gerekiyor:

sudo usermod -a -G dialout $USER

sonra:

sudo chmod a+rw /dev/ttyACM0

Bu değişikliğin geçerli olması için oturumu kapatıp tekrar giriş yapmanız gerekecektir.

Öncekinin eski Ubuntu talimatları olduğunu unutmayın. ConsoleKit kullanan modern dağıtımlarda /etc/udev/rules.d/01-ttyusb.rulesaşağıdakileri içeren dosyayı oluşturun ve udev kurallarını yeniden yükleyin ve Arduino cihazını yeniden takın:

SUBSYSTEMS=="usb-serial", TAG+="uaccess"

Mükemmel cevap. Daha yeni kurulumlarda udev kurallarını yeniden yüklemenize gerek yoktur. Udev değişiklikler için /etc/udev/rules.d dosyasını izleyecektir. Arduino'yu yeniden takmanız gerekiyor.
ppareit

@ppareit "yeni kurulumlar" olarak sayılan nedir? Bu, Ubuntu 16.04'te kuralları yeniden yükleyerek veya yüklemeden benim için çalışmaz sudo udevadm control --reload.
16'da

1
Bence işe yaramadı çünkü tahta "usb-seri" alt sistemine değil "tty" ye ait olarak tanımlandı. Her neyse, bunun yerine aşağıdaki udev kuralını oluşturmak benim için çalıştı:, SUBSYSTEM=="tty", ATTRS{idVendor}=="(vendor)", ATTRS{idProduct}=="(product)", ATTRS{serial}=="(serial)", SYMLINK+="ttyUSB.arduino", GROUP="adm"nerede (satıcı) ve (ürün) alınır lsusbve (seri) çıktı alınır udevadm info -a -n /dev/ttyACM0|grep '{serial}'|head -n1.
16'da

En azından Ubuntu 16.04 ile, bu sorunu Mint 18.1'de görmedim. Bir çözüm bulduğunu duyduğuma sevindim!
Ocak'ta

BAŞARMAK!!!! UPVOTED. 17.04 dağıtımım var ve 1. çözüm kalıcı değildi!
tony gil

3

Tek yapmanız gereken Ignacio Vazquez-Abrams'ın cevabında anlatıldığı gibi kendinizi diyalog grubuna eklemek. Bu terminalde aşağıdakiler yazarak yapılır:

sudo usermod -a -G dialout $USER

Kullanmanıza gerek yok chmod. Bu, yalnızca grubun üyelerine değil, tüm kullanıcılara okuma / yazma erişimi sağlar. Ancak bağlanmaya çalışmadan önce çıkış yapmalı ve tekrar giriş yapmalısınız . Tekrar giriş yaptığınızda, diyalog grubunun bir üyesi olarak tanınacak ve cihazı açabileceksiniz.



0

Yukarıdaki hiçbir şey bana yardımcı olmadı. Dosyadan, resmi siteden yüklediğimde bile başlamıyor. Sonra "linux app store" dan Arduino IDE yükledim ve çalışıyordum ama üstten arkadaşımız gibi bir sorun var. Bu yüzden onu kaldırdım ve terminal aracılığıyla kurdum sudo apt install arduinove şimdi çalışıyor. Şerefe.


-1

Veya sadece chown komutunu kullanın.

sudo chown <username> /dev/ttyACM*

Bu benim için çalıştı


1
Bu soru bu sitede birçok kez sorulmuştur ve aynı cevap başka bir kullanıcı tarafından verilmiştir. Bu konuda Chris Stratton'dan bahsedeceğim: Bu, özellikle cihazı her bağladığınızda yapmanız gereken udev veya benzeri yönetim / dev düğümlerine sahip dinamik olarak yapılandırılmış tipik bir linux için kötü bir fikirdir. Kullanıcıyı bunun yerine uygun bir gruba ekleyin, bu da kalıcı bir çözümdür.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.