Løsning: avrdude: ser_open (): kan ikke åbne enheden på Arduino

I denne artikel vil jeg forklare, hvordan man løser en almindelig fejl i Arduino:

avrdude: ser_open (): kan ikke åbne enhed "/ dev / ttyACM0": Tilladelse nægtet

Baggrund

Efter lang tid uden at bruge Arduino har jeg taget mine to indsatser (originalen og Elegoo) for at lave nogle aktiviteter med min datter. Jeg forbinder dem, jeg vil blinke for at se, at alt er i orden, og når jeg sender det til tavlen, returnerer den den velkendte fejl.

Arduino: 1.8.5 (Linux), Kort: "Arduino / Genuino Uno" avrdude: ser_open (): kan ikke åbne enhed "/ dev / ttyACM0": Tilladelse nægtet Problemer med upload til tavlen. Besøg http://www.arduino.cc/da/Guide/Troubleshooting#upload for forslag.

Både på min pc og min bærbare computer har jeg Ubuntu 18.04 installeret.

Opløsning

Jeg starter med at følge link, som du foreslår mig. Og jeg følger trinene

En værktøj / plade Arduino / Genuino Uno er valgt

En værktøjer / seriel port / dev / ttyACM0

arduino avrdude ide problem

og som dokumentationen antyder, i tilfælde af at der er problemer med drivere og tilladelser, åbner jeg terminalen og udfører:

 sudo usermod -a -G tty yourUserName
 sudo usermod -a -G dialout yourUserName

Donde dit brugernavn er dit brugernavn

Nu logger jeg ud og logger ind igen. Og bare hvis jeg genstarter pc'en / den bærbare computer.

Det virker stadig ikke for mig, og Arduino-dokumentationen hjælper ikke længere. Så jeg har fortsat kigget i fora og blogs. Hvis det på dette tidspunkt ikke virker for dig, og du er som mig. Følg de næste trin

ls / dev / ttyACM0 returnerer / dev / ttyACM0
ls -l / dev / ttyACM0 returnerer crw-rw—- 1 root dialout 166, 0 Nov 26 16:41 / dev / ttyACM

Med dette bekræfter vi, at porten eksisterer

Vi vil give tilladelser og kontrollere, om vores bruger har de nødvendige tilladelser.

 sudo chmod a+rw /dev/ttyACM0
 id devuelve 20(dialout) 

Og jeg kan se, at brugeren er inden for gruppen dialout så denne del fik vi det rigtigt.

Hvad der har fungeret for mig har været at geninstallere Arduino.

Hvis du tjekker

which avrdude

Og det returnerer ikke noget geninstallation af Arduino skal løses.

sudo apt install --reinstall arduino

Og hvis du ikke har været i stand til at løse problemet, skal du give mig en kommentar, så vil jeg prøve at hjælpe dig.

AVRDUDE Fejlfindingsværktøj

Der er en script de har forberedt på at løse dette problem. Du kan prøve at se, om det hjælper dig. Jeg har ikke brugt det, men jeg forlader det, fordi jeg tror, ​​det kan være en nyttig ressource.

AVRDUDE

Jeg efterlader lidt information for bedre at forstå, hvad AVRDUDE er. Navnet kommer fra AVRDUDE - AVR Downloader / UploaDEr

AVRDUDE er et værktøj til at downloade / uploade / manipulere ROM- og EEPROM-indhold af AVR-mikrocontrollere ved hjælp af in-system programmering (ISP) teknik.

https://www.nongnu.org/avrdude/

AVRDUDE blev startet af Brian S. Dean som et privat projekt som programmør for Atmel AVR-serien af ​​mikrocontrollere.

Du kan finde softwaren og meget mere information i projektwebsted.

1 kommentar til "Løsning: avrdude: ser_open (): kan ikke åbne enhed på Arduino"

  1. Jeg har et problem med arduino en, den kommunikerer ikke med ideen eller omvendt. Jeg har alt godt konfigureret, alle portplader osv ... Jeg har downloadet flip, men jeg ved ikke, hvordan det fungerer for at genindlæse den firmware, som jeg synes er hvad der mislykkes, kunne du have lidt mere detaljer om, hvordan du geninstallerer arduino tak, jeg er ny på dette

    svar

Efterlad en kommentar