Arduino पर कोड अपलोड करने से मुझे त्रुटि मिलती है: "avrdude: ser_open (): डिवाइस नहीं खोल सकता" / dev / ttyACM0 ": अनुमति से इनकार किया"


13

मेरा OS उबंटू 18.04 है और arduino अब तक काम कर रहा था।

हालांकि कुछ समाधान हैं, उनमें से कोई भी मेरे लिए काम नहीं करता है।

मैंने Arduino वेबसाइट पर इन निर्देशों का पालन ​​किया ।

फिर मैंने arduino Stack Exchange पर यह कोशिश की , जो उन मामलों में काम करना चाहिए जहां पहला समाधान नहीं हुआ था। जवाब में कहा गया है कि हमें /etc/udev/ruled.d/रास्ते में कुछ नियम बनाने चाहिए ।

लेकिन उनमें से किसी ने भी मेरे लिए काम नहीं किया।

मैंने विंडोज 10 में arduino का भी परीक्षण किया, यह देखने के लिए कि क्या यह एक हार्डवेयर समस्या थी, लेकिन इसने ठीक काम किया।

क्या किसी को इस मुद्दे को हल करने के बारे में कोई अन्य विचार है?

अपडेट करें:

  • मेरा उपयोगकर्ता नाम, सर्जियो, दोनों समूहों (ट्टी और डायलआउट) का हिस्सा है;
  • मैं बाहर लॉग इन किया और arduino आधिकारिक ट्यूटोरियल के रूप में वापस;
  • Arduino IDE में, कॉन्फ़िगरेशन सही हैं: Arduino UNO और ttyACM0
  • यह ll /dev/ttyACM0ट्यूटोरियल कमांड चलाने के बाद का आउटपुट है :

    crw-rw-rw- 1 root dialout 166, 0 Jul 15 05:41 /dev/ttyACM0
    

अद्यतन 2:

मैंने इसे हल करने के लिए एक स्क्रिप्ट बनाई है: https://github.com/sergiomafra/iniarduino


5
नवीनतम Arduino IDE स्थापित करने के लिए कैसे संभव है ? क्या आप लॉगआउट करना भूल गए और दौड़ने के बाद फिर से लॉगिन करें usermod?
12:00 बजे N0rbert

नहीं। पहले मैंने लॉग आउट करने की कोशिश की और फिर मैंने अपनी नोटबुक को पुनः आरंभ करने का प्रयास किया। कुछ भी काम नहीं लगता ...
Sérgio Mafra

crw-rw-rw- 1 रूट डायलआउट 166, 0 जुलाई 15 05:41 / dev / ttyACM0 लॉग इन: सर्जियो नाम: Sérgio Mafra निर्देशिका: / home / sergio शैल: / bin / bash on Sun Jul 15 08:26 (-) 03) पर: 0 से: 0 (संदेश बंद) कोई मेल नहीं। कोई योजना नहीं।
सेर्गियो मफरा

डायल-आउट: एक्स: 20: सर्जियो। जब मैंने दूसरी कमांड चलाने की कोशिश की, तो बैश मेरे पास लौटा, ऐसी कोई फाइल या डायरेक्टरी नहीं थी
Sérgio Mafra

2
@ N0rbert मुझे नहीं लगता कि इस सवाल को डुप्लिकेट के रूप में बंद किया जाना चाहिए कि नवीनतम Arduino IDE कैसे स्थापित करें? क्योंकि इस प्रश्न का स्वीकृत उत्तर उस प्रश्न के लिए अधिक विशिष्ट है जो पूछा गया था।
कर्ल

जवाबों:


9

Ubuntu सॉफ़्टवेयर केंद्र से स्थापित अपने arduino को पुनर्स्थापित करें:

sudo apt install --reinstall arduino

पुनर्स्थापना आवश्यक है क्योंकि आपकी which avrdudeटिप्पणी के अनुसार आपकी आज्ञा कुछ भी नहीं देती है, लेकिन होनी चाहिए /usr/bin/avrdude। फिर से जांचें:

which avrdude

अपने Arduino IDE को पुनः इंस्टॉल करने के बाद चलाएँ और इसे बंद करें।

अपने arduino विन्यास की जाँच करें। /home/sergio/.arduino/preferences.txtफ़ाइल खोलें और वहाँ serial.portविकल्प की जाँच करें । इसे बदलने की कोशिश करें /dev/ttyACM0। उस फ़ाइल को खोलें:

sudo nano /home/sergio/.arduino/preferences.txt

और संबंधित परिवर्तन लागू करें, अर्थात विकल्प दिखना चाहिए

serial.port=/dev/ttyACM0

बाद में कंप्यूटर को पुनरारंभ करें।


1
पूरी सहायताके लिए शुक्रिया। मैंने इसे Ubuntu सॉफ्टवेयर सेंटर से अनइंस्टॉल किया और Arduino वेबसाइट से संस्करण स्थापित किया और इसने काम किया।
सर्जियो मफरा

24

मेरे पास एक ऐसा ही मुद्दा था जब मैंने Arduino पर एक स्केच अपलोड करने की कोशिश की। यह मुद्दा सीरियल पोर्ट को पढ़ने / लिखने के लिए अनुमतियों की कमी से जुड़ा था। मैं निम्नलिखित आदेश का उपयोग करके ठीक करने में सक्षम था:

पोर्ट की पुष्टि करने के लिए मूल निर्देशिका से निम्नलिखित दर्ज करें।

ls /dev/ttyACM0

अनुमतियाँ पढ़ने / लिखने के लिए, निम्नलिखित दर्ज करें

sudo chmod a+rw /dev/ttyACM0

मेरी समस्या का समाधान किया। धन्यवाद!
फनस्कूलब्रॉथर

मेरे मुद्दे को हल कर दिया ..
1987 को तुरगांपुर

3

यहाँ मेरे लिए क्या काम किया गया है:

  • Apt से संस्करण को अनइंस्टॉल करें, यह ठीक से काम नहीं करता है ( sudo apt uninstall arduino; sudo apt autoremove)
  • Arduino वेबसाइट से संस्करण स्थापित करें
  • sudo apt install avrdude चूंकि वेबसाइट से कोई इसे शामिल नहीं करता है
  • sudo usermod -a -G dialout [your_username] क्योंकि वेबसाइट से एक यह स्वचालित रूप से नहीं करता है

और अब सब कुछ फिर से काम कर रहा है!


0

मेरे द्वारा पढ़ी गई सभी पोस्टों के संयोजन में, मैंने इस मुद्दे को इस थ्रेड से निर्देशों का पालन करके हल किया।

एक नए टर्मिनल में, मैंने नीचे दिखाए अनुसार टाइप किया।

https://i.stack.imgur.com/ifRmx.png

कृपया ध्यान दें कि फोरप्लस मेरा उपयोगकर्ता नाम है।


2
Ubuntu पूछने के लिए आपका स्वागत है। भविष्य में आपको जहां भी संभव हो छवियों के बजाय पाठ पोस्ट करना चाहिए।
जेफ

0

मुझे एक उपाय सूझा।

  1. अपने पोर्ट को ढूंढें जिसमें Arduino जुड़ा हुआ है (जैसे मेरा था /dev/ttyUSB0)। आप इसे Arduino IDE में त्रुटि संदेश में उल्लेखित पा सकते हैं।

  2. टर्मिनल खोलें ( Ctrl+ Alt+ T)।

  3. टर्मिनल रन में:

    sudo chmod 777 /dev/ttyUSB0
    

    उपरोक्त आदेश आवश्यक अनुमतियाँ सेट करता है।



0

मैं देख रहा हूं कि प्रश्न पहले से ही स्वीकृत है, लेकिन किसी भी समाधान ने मेरे लिए ऐसा नहीं किया है इसलिए मुझे एक अलग समाधान मिला है। मैंने Ubuntu सॉफ्टवेयर इंस्टॉलर के माध्यम से arduino IDE स्थापित किया है। आपको क्या करना है।

  1. Ubuntu सॉफ्टवेयर स्टोर में arduino IDE पर जाएं
  2. अनुमतियां क्लिक करें
  3. एक्सेस usb हार्डवेयर को सीधे ऑन करें

0

हा मैं एक नौसिखिया हूँ और मैंने कुछ गलतियाँ की हैं)) मैं इसे वैसे नहीं करता जैसे मैं करता हूँ।

  1. सबसे पहले, मेरी पुस्तक में एलईडी कनेक्शन योजना के बारे में एक बुरी तस्वीर थी। मुझे नया और मिला हुआ तार मिला। अब वे सही तरीके से जुड़े हुए हैं।
  2. फिर मैंने कंप्यूटर से अरडिनो को जोड़ा (यह महत्वपूर्ण है)।
  3. फिर मैंने निम्नलिखित कमांड निष्पादित की:

    • ls -l / dev / ttyACM0
    • sudo usermod -a -G डायलआउट [my_username]
    • सुडो चामोद a + rw / dev / ttyACM0

जब मैं arduino प्रोग्राम (टूल -> बोर्ड) के मेनू में एक बोर्ड की तलाश कर रहा था तो मुझे 'Arduino / Genuino Uno' नहीं मिला, बस एक 'Arduino Uno' था (मुझे लगता है कि यह ठीक है)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.