A soros porthoz való hozzáférés megtagadva
A port szerepel a listában és ki van választva, de minden csatlakozási kísérlet azonnal hozzáférési vagy jogosultsági hibával meghiúsul.
Ezt látja
A port megjelenik a legördülő listában. Kiválasztja, rákattint a Csatlakozás gombra, és a művelet azonnal meghiúsul, nem időtúllépés vagy néhány másodpercnyi próbálkozás után. A hiba megnevezi a portot, és valami ilyesmit ír:
A COM7 megnyitása megtagadva: Access is denied. Lehet, hogy egy másik alkalmazás már használja ezt a soros portot. Zárja be a többi lézeres vagy soros szoftvert, válassza le, majd csatlakoztassa újra a vezérlőt, és próbálja meg ismét.
A szöveg az operációs rendszertől függ. Windowson a részletes üzenetben az "Access is denied" szöveg jelenik meg, és az üzenet más szoftverek bezárását javasolja, ami ott a leggyakoribb ok. Linuxon és macOS-en a részletes üzenetben a "Permission denied" szöveg jelenik meg, és az üzenet inkább a soros eszközök jogosultságaira utal:
A /dev/ttyUSB0 megnyitása megtagadva: Permission denied. Lehet, hogy a felhasználói fiókja nem jogosult soros eszközök megnyitására. Linuxon adja hozzá a felhasználót a dialout csoporthoz (vagy a disztribúció soros csoportjához), majd jelentkezzen ki és újra be.
Mi történik?
A port valóban létezik, és a Beam Bench látja, a probléma a megnyitásával van. Egy soros portot egyszerre csak egy program tarthat nyitva. Valami más már megnyitotta, ezért az operációs rendszer elutasítja a második megnyitási kísérletet, és a Beam Bench megtagadott hozzáférésként jelenti a hibát a kézfogás közbeni időtúllépés helyett.
A Beam Bench nem tudja elvenni a portot egy másik programtól. A megoldás mindig a saját gépén keresendő: meg kell találni és be kell zárni azt a programot, amely már használja.
Javítás
Windows használata esetén
Ez szinte minden alkalommal itt fordul elő. Ellenőrizze a következőket:
- Meg van nyitva az Arduino IDE Serial Monitor ablaka, vagy ugyanaz a COM-port továbbra is ki van választva egy panelhez.
- Fut a PlatformIO soros monitorja, vagy még folyamatban van egy feltöltés.
- Egy soros terminál, például a PuTTY, csatlakoztatva maradt a porthoz.
- Egy firmware-flashelő eszköz megnyitotta a portot, de nem szabadította fel.
- Egy másik gravírozóprogram továbbra is fut, akár minimalizált állapotban is.
- A Beam Bench egy második példánya, egy másik ablaka vagy egy másik példánya fut.
Linux használata esetén
A hiba részletes üzenetében a "Permission denied" szöveg jelenik meg, ami Linuxon szinte mindig azt jelenti, hogy a felhasználói fiók nem tagja a dialout csoportnak. Ez jogosultsági probléma, nem pedig a portot használó program okozza: amikor egy másik program valóban használja a portot, Linux általában foglaltként, nem pedig megtagadottként jelenti.
A javításhoz lásd a Linux soros portjogosultságai oldalt.
Ha már tagja a dialout csoportnak, de továbbra is ezt látja, ellenőrizze, hogy nem használja-e egy program kizárólagos hozzáféréssel a portot: ilyen lehet egy soros terminál (screen, minicom), egy flashelőeszköz vagy a Beam Bench egy másik példánya. Zárja be, majd csatlakozzon újra.
macOS használata esetén
Ritkább eset, de a szabály ugyanaz: egy soros terminál vagy a portot megnyitva tartó másik program megakadályozza, hogy a Beam Bench megnyissa. Zárja be, majd csatlakozzon újra.
Általános lépések, amelyek a legtöbb esetet megoldják
- Zárjon be minden olyan programot, amely soros porttal kommunikálhat: Arduino IDE, PlatformIO, soros terminál, firmware-flashelő eszköz, másik gravírozóprogram, a Beam Bench egy második példánya.
- Húzza ki a vezérlő USB-kábelét.
- Várjon néhány másodpercet.
- Csatlakoztassa újra.
- Csatlakozzon újra a Beam Benchben.
Ha nem találja, mi használja a portot
Indítsa újra a számítógépet. Az újraindítás minden használatban tartott portot felszabadít, még azokat is, amelyek használóját nem tudja megtalálni. Ha a Beam Bench közvetlenül az újraindítás után gond nélkül csatlakozik, majd a hiba később visszatér, akkor az időközben megnyitott program okozza a problémát.
Továbbra sem működik?
- A gép nem csatlakozik: átfogóbb csatlakozási hibák, többek között hibás port vagy hibás átviteli sebesség.
- Linux soros portjogosultságai: a
dialoutcsoport beállítása Linuxon. - Kapcsolatdiagnosztikai panel: figyelje az eseménynaplót csatlakozási kísérlet közben.
- Tegyen bejegyzést a Facebook-csoportba, és írja meg az operációs rendszerét, valamint azt, hogy milyen más programok voltak megnyitva a hiba jelentkezésekor.