Beam Bench Dokumentation

Zugriff auf den seriellen Port verweigert

Der Port wird angezeigt und ist ausgewählt, doch jeder Verbindungsversuch schlägt sofort mit einem Zugriffs- oder Berechtigungsfehler fehl.

Das sehen Sie

Der Port wird im Dropdown-Menü angezeigt. Sie wählen ihn aus und klicken auf Verbinden, doch der Verbindungsversuch schlägt sofort fehl – nicht erst nach einer Zeitüberschreitung oder einigen Sekunden. In der Fehlermeldung wird Ihr Port genannt und es steht dort etwa:

Zugriff beim Öffnen von COM7 verweigert: Zugriff verweigert. Möglicherweise verwendet bereits eine andere Anwendung diesen seriellen Port. Schließen Sie andere Laser- oder serielle Software, trennen Sie den Controller und schließen Sie ihn erneut an. Versuchen Sie es dann noch einmal.

Der genaue Wortlaut hängt vom Betriebssystem ab. Unter Windows lautet die Detailmeldung "Zugriff verweigert" und die Meldung empfiehlt, andere Software zu schließen, da dies dort die häufigste Ursache ist. Unter Linux und macOS lautet die Detailmeldung dagegen "Berechtigung verweigert" und die Meldung verweist auf die Berechtigungen für serielle Geräte:

Zugriff beim Öffnen von /dev/ttyUSB0 verweigert: Berechtigung verweigert. Ihr Benutzerkonto verfügt möglicherweise nicht über die Berechtigung, serielle Geräte zu öffnen. Fügen Sie Ihren Benutzer unter Linux der Gruppe dialout (oder der Gruppe Ihrer Distribution für serielle Geräte) hinzu und melden Sie sich anschließend ab und wieder an.

Was geschieht

Der Port ist vorhanden und für Beam Bench sichtbar. Das Problem tritt beim Öffnen des Ports auf. Ein serieller Port kann jeweils nur von einem Programm geöffnet sein. Ein anderes Programm hat ihn bereits geöffnet. Daher verweigert das Betriebssystem den zweiten Öffnungsversuch und Beam Bench meldet den Zugriff als verweigert, statt während des Handshakes eine Zeitüberschreitung zu melden.

Beam Bench kann einem anderen Programm den Port nicht entziehen. Sie müssen das Problem daher auf Ihrem System beheben: Ermitteln Sie, welches Programm den Port bereits geöffnet hat, und schließen Sie es.

Problembehebung

Unter Windows

Hier tritt das Problem fast immer auf. Prüfen Sie Folgendes:

  • Die Arduino IDE läuft mit geöffnetem seriellen Monitor oder auf demselben COM-Port ist noch ein Board ausgewählt.
  • Der serielle Monitor von PlatformIO ist geöffnet oder ein Upload läuft noch.
  • Ein serielles Terminal wie PuTTY ist noch mit dem Port verbunden.
  • Ein Tool zum Flashen der Firmware hat den Port geöffnet und nicht wieder freigegeben.
  • Ein anderes Gravurprogramm läuft noch, auch wenn es minimiert ist.
  • Eine zweite Kopie von Beam Bench, ein weiteres Fenster oder eine weitere Instanz ist geöffnet.

Unter Linux

In der Detailmeldung des Fehlers steht "Berechtigung verweigert". Unter Linux bedeutet dies fast immer, dass Ihr Benutzerkonto nicht der Gruppe dialout angehört. Es handelt sich um ein Berechtigungsproblem und nicht darum, dass ein Programm den Port geöffnet hält: Wenn ein anderes Programm den Port geöffnet hat, meldet Linux ihn normalerweise als belegt und nicht als verweigert. Die Lösung finden Sie unter Berechtigungen für serielle Geräte unter Linux.

Wenn Sie bereits Mitglied von dialout sind und diese Meldung weiterhin sehen, prüfen Sie, ob ein Programm exklusiv auf den Port zugreift: ein serielles Terminal (screen, minicom), ein Tool zum Flashen oder eine andere Instanz von Beam Bench. Schließen Sie es und stellen Sie die Verbindung erneut her.

Unter macOS

Dies kommt seltener vor, doch es gilt dieselbe Regel: Ein serielles Terminal oder ein anderes Programm, das den Port geöffnet hat, verhindert, dass Beam Bench ihn öffnen kann. Schließen Sie das Programm und stellen Sie die Verbindung erneut her.

Allgemeine Schritte, die das Problem meist beheben

  1. Schließen Sie alle Programme, die möglicherweise auf einen seriellen Port zugreifen: Arduino IDE, PlatformIO, ein serielles Terminal, ein Tool zum Flashen der Firmware, ein anderes Gravurprogramm oder eine zweite Kopie von Beam Bench.
  2. Ziehen Sie das USB-Kabel des Controllers ab.
  3. Warten Sie einige Sekunden.
  4. Schließen Sie es wieder an.
  5. Stellen Sie die Verbindung in Beam Bench erneut her.

Wenn Sie nicht herausfinden können, was den Port belegt

Starten Sie den Computer neu. Bei einem Neustart werden alle belegten Ports freigegeben, auch wenn Sie nicht herausfinden können, welches Programm sie belegt. Wenn Beam Bench direkt nach einem Neustart problemlos eine Verbindung herstellt und der Fehler später erneut auftritt, ist ein Programm die Ursache, das Sie in der Zwischenzeit geöffnet haben.

Problem besteht weiterhin?

On this page