Arduino Serial Port COM1-Problem

18

Ich habe ein Arduino Uno gekauft und Arduino IDE 1.6.5 installiert. Wenn ich jedoch einen Skecht auf das Arduino Board hochladen möchte, gehe ich folgendermaßen vor:

avrdude: ser_open(): can't open device "COM1": No such file or directory

ioctl ("TIOCMGET"): Unangemessenes ioctl für das Gerät

Ich benutze Ubuntu 14.04LTS

    hakan@hakan-pc:~$ ls -l /dev/ttyUSB0
ls: /dev/ttyUSB0'e erişilemedi: Böyle bir dosya ya da dizin yok(In English: No such a file like this)




 hakan@hakan-pc:~$ ls -l /dev/ttyS0
crw-rw-rw- 1 root dialout 4, 64 Tem  8 22:40 /dev/ttyS0

Während Arduino an den Computer angeschlossen ist dmesg | Schwanz:

    hakan@hakan-pc:~$ dmesg | tail
[   21.784795] sound hdaudioC1D3: hda-codec: out of range cmd 3:5:707:ffffffff
[   21.784969] sound hdaudioC1D3: hda-codec: out of range cmd 3:5:707:ffffffbf
[   21.786110] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffff
[   21.792705] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffff
[   26.849759] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffbf
[   27.515096] init: Failed to spawn nvidia-persistenced main process: unable to execute: No such file or directory
[   43.647261] audit: type=1400 audit(1436384452.263:72): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/cups/backend/cups-pdf" pid=2246 comm="apparmor_parser"
[   43.647270] audit: type=1400 audit(1436384452.263:73): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2246 comm="apparmor_parser"
[   43.647654] audit: type=1400 audit(1436384452.267:74): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2246 comm="apparmor_parser"
[   87.513268] systemd-hostnamed[2572]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!

Wie kann ich dieses Problem lösen?

Hakan Ormancı
quelle
Der dmesgCode enthält nicht die Informationen zum Einstecken der Arduino-Karte ... Bitte ändern Sie sie mit der entsprechenden. Übrigens sollte das Voranstellen LANG=Ceines Befehls Fehlermeldungen auf Englisch enthalten.
Rmano
Wie bekommst du COM1 unter Linux ? So nennt sich Windows
ps95
prakharsingh95 ja, ich weiß, aber ich verstehe nicht, warum als COM1.Anyway in / dev-Verzeichnis gibt es nichts wie COMx oder ttyACMx. Es gibt nur tty (x) und ttyS (x).
Hakan Ormancı

Antworten:

21
  1. Schließen Sie Ihre Arduino-Hardware an. Öffnen Sie die Arduino-IDE.
  2. Gehen Sie zu "Tool".
  3. Gehen Sie zu "Port".
  4. Wählen Sie den Port aus, an den Arduino angeschlossen ist. (Wenn außer Arduino kein anderes externes Laufwerk angeschlossen ist, gibt es nur einen Port.)

    Dies teilt Arduino IDE mit, an welchen Port Ihre Hardware angeschlossen ist. Danach können Sie Ihre Skizze erfolgreich hochladen

kaschisch
quelle
2
Es ist (Port-Menü) ausgegraut ..
Hakan Ormancı
2
@ Hakan versuchen, Arduino als root auszuführen. im terminal schreibe "sudo arduino"
kashish
@kasnish ​​Ich habe es versucht, aber es hat nicht funktioniert
Hakan Ormancı
Port nicht ausgewählt, woohoo funktioniert jetzt danke
RegarBoy
1
Was für eine einfache und perfekte Lösung! Rette meinen Tag. Ich habe viele andere Befehle im Terminal ausprobiert, die meinen Fortschritt nicht verändern. Vielen Dank.
Shanki Bansal
7

Wenn Sie Arduino IDE unter Ubuntu ausführen (in meinem Fall Arduino 1.5.7 und Ubuntu 14.04), können Sie möglicherweise keine Dateien auf das Arduino-Board hochladen.

avrdude: ser_open(): can't open device "/dev/ttyUSB0": Permission denied
ioctl("TIOCMGET"): Inappropriate ioctl for device

Geben Sie den folgenden Befehl ein, um das Problem zu beheben:

$ sudo usermod -a -G dialout <username>
$ sudo chmod a+rw /dev/ttyUSB0

Wo ist Ihr Benutzername in Ubuntu, / dev / ttyUSB0 ist das erkannte Gerät Ihres Arduino-Boards.

Eisberg
quelle
2

Ich habe den gleichen Fehler unter Ubuntu 14.04 mit Arduino Uno erhalten. Was für mich funktionierte, war zuerst den entsprechenden Port unter Tools> Port auszuwählen und dann die Berechtigung des Ports mit dem folgenden Befehl zu ändern:

sudo chmod a+rw /dev/ttyUSB0

Dann verschwand der Fehler und ich konnte prima hochladen.

Bhaskarc
quelle
Ich hatte diesen Fehler Caused by: jssc.SerialPortException: Port name - /dev/ttyACM0; Method name - openPort(); Exception type - Permission denied. Also musste ich deine sudo chmod a+rw /dev/ttyACM0 Magie benutzen , aber es hat nicht geholfen. Also musste ich diesen Befehl verwenden sudo adduser <username> dialoutund mich dann abmelden / anmelden, um die Dinge zum Laufen zu bringen
Dimitry K
1

Ich habe die gleiche Meldung in Ubuntu 14.04 und der 1.0.5-Version der IDE erhalten.

Laden des FTDI-Chips D2XX Drivers hat das Problem behoben (soeben heruntergeladen und gefolgt von der Readme-Installation). Die serielle Schnittstelle war verfügbar und konnte auch erfolgreich auf die UNO hochgeladen werden.

DaveStSomeWhere
quelle
1

Ändern Sie in der Datei lib / preferences.txt die Zeichenfolge von serial.port = COM1 in serial.port = / dev / ttyUSB0

Ruslan Bondarau
quelle
0
  1. Berechtigungen am USB-Anschluss
    Als Linux-Benutzer müssen Sie Mitglied der Gruppenwahl sein , um /dev/tty*Verbindungen lesen und beschreiben zu können .
    Daher ist es nicht der richtige Weg , die Verbindung für die ganze Welt beschreibbar zu machen ODER die Arduino IDE als Root auszuführen. Es reicht aus, Ihren Benutzer zur Gruppenwahl hinzuzufügen und sich anschließend erneut anzumelden :

    sudo adduser *username* dialout
  2. USB-Verbindung COM1
    Die Arduino IDE ist in Java geschrieben, aber wahrscheinlich immer noch betriebssystemabhängig . Ist es wahrscheinlich, dass Sie das Windows-Zip-Paket der IDE auf einem Linux-System verwendet haben?

  3. USB-Verbindung allgemein
    Offensichtlich hat Ihr Computer die USB-Verbindung zum Arduino nicht erkannt. Versuchen Sie, USB-Hubs oder USB-Buchsen zu vermeiden, die einige Displays bieten. Verwenden Sie eine direkte Verbindung.

one-mb
quelle
0

Auf Kubuntu 18.04 gibt das Paket Arduino ein ähnliches Problem. Meine Problemumgehung bestand darin, die von der Arduino-Website abzurufen. Einfach extrahieren und mit ./arduino starten. Es funktioniert gut. Tschüss Welt

Tom Green Ingenieur Aok
quelle