Tilgang til seriellporten nektes
Porten vises og er valgt, men hvert tilkoblingsforsøk mislykkes umiddelbart med en tilgangs- eller tillatelsesfeil.
Dette ser du
Porten vises i rullegardinmenyen. Du velger den, klikker på Connect, og tilkoblingen mislykkes umiddelbart, ikke etter et tidsavbrudd eller noen sekunders forsøk. Feilmeldingen angir porten din og ser omtrent slik ut:
Tilgang nektet ved åpning av COM7. Et annet program bruker kanskje denne serieporten. Lukk annen laser- eller serieprogramvare, koble kontrolleren fra og til igjen, og prøv på nytt.
Ordlyden avhenger av operativsystemet. I Windows står detaljen "Access is denied", og meldingen foreslår å lukke annen programvare, som er den vanligste årsaken der. I Linux og macOS står detaljen "Permission denied", og meldingen peker i stedet på tillatelser for serielle enheter:
Tilgang nektet ved åpning av /dev/ttyUSB0. Brukerkontoen din har kanskje ikke tillatelse til å åpne serieenheter. Legg brukeren til i gruppen dialout i Linux, og logg deretter ut og inn igjen.
Hva som skjer
Porten finnes, og Beam Bench kan se den. Problemet er å åpne den. Bare ett program kan ha en seriellport åpen om gangen. Noe annet har allerede åpnet den, så operativsystemet avviser det andre åpningsforsøket, og Beam Bench rapporterer at tilgangen nektes i stedet for å vente på tidsavbrudd under håndtrykket.
Beam Bench kan ikke ta en port fra et annet program. Løsningen er alltid på din side: Finn og lukk programmet som allerede bruker den.
Løsning
Hvis du bruker Windows
Dette skjer nesten alltid i Windows. Se etter:
- Arduino IDE med Serial Monitor åpen, eller et kort som fortsatt er valgt på samme COM-port.
- PlatformIOs serielle monitor, eller en opplasting som fortsatt pågår.
- En seriell terminal, for eksempel PuTTY, som fortsatt er koblet til porten.
- Et verktøy for fastvareinstallasjon som åpnet porten og ikke frigjorde den.
- Et annet graveringsprogram som fortsatt kjører, selv om det er minimert.
- En ekstra kopi av Beam Bench, et annet vindu eller en annen instans.
Hvis du bruker Linux
Detaljen i feilmeldingen er "Permission denied", og i Linux betyr det nesten alltid at brukerkontoen din ikke er med i gruppen dialout. Dette er et tillatelsesproblem, ikke et program som holder porten: Når et annet program faktisk bruker porten, rapporterer Linux vanligvis at den er opptatt, ikke at tilgangen nektes. Se Tillatelser for serielle enheter i Linux for løsningen.
Hvis du allerede er med i dialout og fortsatt ser dette, kan du se etter et program som bruker porten med eksklusiv tilgang: en seriell terminal (screen, minicom), et fastvareverktøy eller en annen Beam Bench-instans. Lukk programmet og koble til på nytt.
Hvis du bruker macOS
Dette er mindre vanlig, men regelen er den samme: En seriell terminal eller et annet program som har porten åpen, hindrer Beam Bench i å åpne den. Lukk programmet og koble til på nytt.
Generelle trinn som løser de fleste tilfeller
- Lukk alle programmer som kan kommunisere med en seriellport: Arduino IDE, PlatformIO, en seriell terminal, et fastvareverktøy, et annet graveringsprogram eller en ekstra kopi av Beam Bench.
- Koble USB-kabelen fra kontrolleren.
- Vent noen sekunder.
- Koble den til igjen.
- Koble til på nytt i Beam Bench.
Hvis du ikke finner ut hva som bruker porten
Start datamaskinen på nytt. En omstart frigjør alle porter som holdes åpne, også porter du ikke klarer å spore opp. Hvis Beam Bench kobler til uten problemer rett etter en omstart, og feilen kommer tilbake senere, er det du åpnet i mellomtiden som er årsaken.
Sitter du fortsatt fast?
- Maskinen vil ikke koble til: Mer omfattende tilkoblingsfeil, inkludert feil port og feil overføringshastighet.
- Tillatelser for serielle enheter i Linux: Konfigurasjon av
dialout-gruppen i Linux. - Panelet Tilkoblingsdiagnostikk: Se hendelsesloggen under et tilkoblingsforsøk.
- Legg ut et innlegg i Facebook-gruppen med operativsystemet ditt og hva annet som var åpent da det skjedde.