Miałem Windows XP na tym polu i to się nie udało. Myśląc, że to jest uszkodzony system operacyjny, próbowałem ponownie zainstalować i nie udało się. Ale potem próbowałem zainstalować Ubuntu i nie mogłem uruchomić go z USB lub HD.
Czy test memu i okazało się, że jeden z moich 512 MB pamięci (miał 2) nie powiódł się. Usunąłem zły i mogłem zainstalować Ubuntu, ale był powolny.
Próbowałem szybko skonfigurować radio pakietowe dla Hurricane Sandy. Pobrałem terminal portu szeregowego i mogłem z niego skorzystać, ale system nadal się blokował. Więc zainstalowałem Xubuntu obok niego, planując skończyć następnego dnia, aby uzyskać pamięć RAM dla urządzenia. Włącz Xubuntu i teraz pojawia się następujący błąd z terminalem portu szeregowego:
Cannot open /dev/ttyS0: Permission denied
Chciałbym móc korzystać z terminala portu szeregowego lub odpowiednika Xubuntu, aby móc korzystać z terminalu pakietów kpc3 i podłączyć się do portu com z tyłu komputera.
Jakieś pomysły?
źródło
/dev/ttyS0
. Jaki jest możliwy powód?dialout
nie została zdefiniowana. Uruchomienienewgrp dialout
rozwiązało problem.dialout
; sprawdzane za pomocągroups
polecenia. Nawet po dołączeniu nazwy użytkownika dodialout
grupy za pomocą poleceniasudo usermod -a username -G dialout
. Po użyciunewgrp dialout
to polecenieesptool.py -p /dev/ttyUSB0 flash_id
działało.Jedyne rozwiązanie, które działa dla mnie, to: (za każdym razem, gdy uruchamiam komputer)
Naprawdę trzeba to naprawić w momencie instalacji. Mam 15.10 i wypróbowałem 16.04 LTS, nadal tam jest. Wydaje się, że to takie proste rozwiązanie.
Starsze wersje 10.04LTS nie miały tego problemu.
źródło
Możesz po prostu użyć tego polecenia:
Spowoduje to dodanie bieżącego użytkownika do grupy połączeń. Zaloguj się i wyloguj, aby wejść w życie.
źródło
W systemie Ubuntu 18.04 naprawiłem ten problem za pomocą następujących poleceń:
A następnie uruchom ponownie.
Jeśli nadal masz problemy, spróbuj debugować za pomocą:
I poszukaj „odmowy” w ścieżce.
źródło
Rozejrzałem się po różnych forach i wygląda na to, że jest to błąd związany z uprawnieniami. Oto jak poradziłem sobie z problemem (długa wersja). Musisz ZARÓWNO
cu
isetserial
zainstalowane pakiety.W trzech zakładkach terminalu monitorowane dane wyjściowe
# tail -f /var/log/messages
To właśnie wiemy, czy mamy,/dev/ttyUSB0
czy nie.Na drugiej karcie po prostu uruchomiłem pętlę do
ls -l
tego urządzenia, aby zobaczyć jego uprawnienia, a jego identyfikator grupy to „dialout”. TO jest bit krytyczny. Z jakiegoś powodu użytkownik MUSI użyć tego identyfikatora GIDcu
, aby ...W trzeciej zakładce, jako root, zrobił
# newgrp dialout
(co odpowiada GID dialout). Testowany z# touch /tmp/anything
... robieniels -l
tego pliku pokazuje, że jest on tworzony przez root z grupą dialout, więc jesteśmy gotowi do ...# cu -l /dev/ttyUSB0
W moim przypadku musiałem nacisnąć klawisz Return, aby zobaczyć oczekiwany monit, w innych przypadkach prędkość może wymagać zostać określone.źródło
Oto rozwiązanie:
Właśnie zaktualizowałem swój system operacyjny do Ubuntu 18. Normalnie instalowałbym arduino IDE za pośrednictwem strony internetowej Arduino, ponieważ ten dostarczany przez portal Ubuntu Software był zawsze starszą wersją i chciałem mieć najnowsze funkcje i wsparcie dla płyty głównej. Ponieważ jednak właśnie zainstalowałem najnowszy system operacyjny, pomyślałem, że oficjalne centrum oprogramowania z Ubuntu będzie mieć na liście najnowszą wersję IDE i tak się stało.
Teraz część soczysta! Zarówno mój laptop, jak i pulpit miały te same problemy z dostępem do portów szeregowych. zrobiłem make user częścią grupy dial-up i ustawiłem uprawnienia dla portu szeregowego, ale zawsze musiałem się wylogować, a następnie zalogować ponownie, zrób to wszystko za każdym razem po ponownym uruchomieniu! NIE ŚMIESZNE!.
Tym razem to nie zadziałało. Nawet w centrum oprogramowania opcja uprawnień do oprogramowania pokazuje port szeregowy „odłączony”. brak opcji zezwolenia na port, nawet jeśli wszystkie uprawnienia zostały przyznane ręcznie przez okno terminala przy użyciu sudo.
Postanowiłem odinstalować Arduino IDE z centrum oprogramowania i zainstalować go z widoku sieciowego, więc zrobiłem to. Tym razem czytam pliki instalacyjne, aby zobaczyć, czy wspomina o uprawnieniach do portu szeregowego, czy nie, ***** oczywiście, że tak! ****** wszystkie porty są ustawione na pełne uprawnienia dostępu, dostęp użytkownika na całym forum. Okazuje się, że to była odpowiedź. po uruchomieniu pliku arduino-linux-setup.sh dostarczonego przez arduino wszystkie problemy z portem szeregowym zostały rozwiązane. poniżej znajduje się fragment
arduino-linux-setup.sh
pliku;więc widać, że działa nawet KERNEL. Moja sugestia:
zainstaluj ze strony internetowej arduino ide. w tej chwili zignoruj centrum oprogramowania, dopóki nie zostanie naprawione. Tak, CENTRUM OPROGRAMOWANIA nie zezwala na uprawnienia do portu szeregowego podczas instalacji i na zawsze po niej.
Problem rozwiązany!
źródło
W moim przypadku problem nadal występuje, nawet gdy dodam mojego użytkownika do grupy za pomocą:
Więc kiedy używam:
a kiedy piszę:
groups
mam ten wynik:Ale kiedy piszę,
id -Gn ilyahoo
putput to:Wiem, że istnieje problem polegający na tym, że nie wiem, co to jest.
Aby uzyskać rozwiązanie, które właśnie napisałem
i problem został rozwiązany.
źródło
Odpowiedź jest prosta. Musisz dodać użytkownika do dwóch grup, aby mieć dostęp do portów USB. Te grupy to
dialout
itty
:Zamień
<user>
na rzeczywistą nazwę użytkownika w tych poleceniach.źródło