Sa artikulong ito ay ipapaliwanag ko kung paano ayusin ang isang karaniwang error sa Arduino:
avrdude: ser_open (): hindi mabubuksan ang aparato "/ dev / ttyACM0": Tinanggihan ang pahintulot
Likuran
Matapos ang mahabang panahon nang hindi ginagamit ang Arduino Kinuha ko ang aking dalawang board (ang orihinal at ang elegoo) upang makagawa ng ilang mga aktibidad kasama ang aking anak na babae. Ikonekta ko sila, ilalagay ko ang blink upang makita na ang lahat ay mabuti at kapag ipinadala ko ito sa board ay binabalik nito ang kilalang error.
Arduino: 1.8.5 (Linux), Card: "Arduino / Genuino Uno" avrdude: ser_open (): hindi mabubuksan ang aparato "/ dev / ttyACM0": Tinanggihan ng Pahintulot ang problema sa pag-upload sa board. Bisitahin ang http://www.arduino.cc/en/Guide/Troubleshooting#upload para sa mga mungkahi.
Parehas sa aking PC at aking laptop Mayroon akong naka-install na Ubuntu 18.04.
Solusyon
Nagsisimula ako sa pamamagitan ng pagsunod sa link na iminumungkahi nila. At sinusunod ko ang mga hakbang
En mga kagamitan / plato Napili ang Arduino / Genuino Uno
En mga tool / serial port / dev / ttyACM0
at tulad ng iminumungkahi ng dokumentasyon, kung sakaling may mga problema sa mga Driver at pahintulot, bubuksan ko ang terminal at isagawa:
sudo usermod -a -G tty yourUserName
sudo usermod -a -G dialout yourUserName
kung saan ang iyong username ang iyong username
Ngayon ay nag-log out at nag-log in muli. At baka sakaling i-restart ko ang PC / laptop.
Hindi pa rin ito gumagana para sa akin at hindi na makakatulong ang dokumentasyon ng Arduino. Kaya't patuloy akong naghahanap, sa mga forum at blog. Kung sa puntong ito hindi ito gagana para sa iyo at katulad mo ako. Sundin ang mga susunod na hakbang
ls / dev / ttyACM0 ay nagbabalik / dev / ttyACM0
ls -l / dev / ttyACM0 ay nagbabalik ng crw-rw—- 1 root dialout 166, 0 Nov 26 16:41 / dev / ttyACM
Sa pamamagitan nito kinukumpirma namin na mayroon ang port
Magbibigay kami ng mga pahintulot at suriin kung ang aming gumagamit ay may kinakailangang mga pahintulot.
sudo chmod a+rw /dev/ttyACM0
id devuelve 20(dialout)
At nakikita ko na ang gumagamit ay nasa loob ng pangkat dialogout kaya ang bahaging ito nakuha natin ito ng tama.
Ang nagtrabaho para sa akin ay muling i-install ang Arduino.
Kung susuriin mo
which avrdude
At hindi nito ibabalik ang anumang muling pag-install ng Arduino dapat na maayos.
sudo apt install --reinstall arduino
At kung hindi mo nagawang malutas ang problema, mag-iwan sa akin ng isang komento at susubukan kong tulungan ka.
AVRDUDE Troubleshooting Tool
Mayroong a script na kanilang inihanda upang ayusin ang problemang ito. Maaari mong subukang makita kung makakatulong ito sa iyo. Hindi ko ito nagamit ngunit iniiwan ko ito dahil sa palagay ko maaari itong maging isang kapaki-pakinabang na mapagkukunan.
AVRDUDE
Nag-iiwan ako ng kaunting impormasyon upang mas maintindihan kung ano ang AVRDUDE. Ang pangalan ay nagmula sa AVRDUDE - AVR Downloader / UploaDEr
Ang AVRDUDE ay isang utility upang mag-download / load / manipulahin ang mga nilalaman ng ROM at EEPROM ng mga AVR microcontroller gamit ang in-system programming (ISP) na pamamaraan.
https://www.nongnu.org/avrdude/
Ang AVRDUDE ay sinimulan ni Brian S. Dean bilang isang pribadong proyekto bilang isang programmer para sa serye ng Atmel AVR na mga microcontroller.
Maaari mong makita ang software at marami pang impormasyon sa website ng proyekto.
Mayroon akong problema sa arduino isa na hindi ito nakikipag-usap sa ide o kabaligtaran na naayos ko ang lahat, lahat ng plato ng port atbp. Na-download ang flip ngunit hindi ko alam kung paano ito gumagana upang i-reload ang firmware na sa palagay ko ay ano ang mali, maaari kang magkaroon ng kaunting detalye kung paano muling mai-install ang arduino salamat bago ako dito