Kategoriat
Vinkit Yleinen

Mitä tehdä jos Linux ei tunnista Arduinoa?

Varsin yleinen ongelma Linuxissa on se, että käyttöjärjestelmä ei anna Arduinolle oikeuksia päästä lukemaan sarjaporttia (esim. /dev/ttyUSB0 tai /dev/ttyACM0). Jos et ole aiemmin käyttänyt laitetta, et todennäköisesti kuulu ryhmiin dialout ja tty, jonka lisäksi Arduinolle ei ole udev-sääntöä.

Ensimmäisenä kannattaa tarkistaa, että laite on tunnistettu oikein komennolla dmesg. Komento listaa tunnistetut laitteet. Jos Arduino näkyy listassa, mutta ei toimi, ongelma on todennäköisesti juuri käyttöoikeuksien puuttuminen. Laitteen oikeuksia tarkasteltaessa voi huomioida, että laitteen omistaa käyttäjä root ja se kuuluu ryhmiin dialout ja tty. Käyttäjät eivät oletusarvoisesti näihin ryhmiin kuuluu, joten laitteen omistajaksi tulee muuttaa käyttäjä.

Parempi vaihtoehto on kuitenkin lisätä käyttäjä ryhmiin seuraavasti:

sudo usermod -a -G dialout stestaaja
sudo usermod -a -G tty stestaaja

Korvaa stestaaja omalla käyttäjätunnuksellasi! Tämän jälkeen sinun tulee kirjautua ulos, jonka jälkeen kirjaudu uudelleen sisään. Tämän jälkeen Arduinon pitäisi tunnistua kun yrität ladata ohjelman siihen. Voit myös testata toimivuutta avaamalla Serial Monitor-ikkunan valikosta Tools -> Serial Monitor.

Tämän lisäksi voi olla tarpeen lisätä udev-sääntö, erityisesti yhden mikroprosessorin laitteissa. Tällaisia ovat esimerkiksi Arduino Leonardo, Arduino Micro ja littleBits-moduuli Arduino Bit. Linux-käyttöjärjestelmä tunnistaa Arduinon modeemina, joka tulee estää udev-säännöllä. Tätä varten luomme uuden tiedoston /etc/udev/rules.d/77-arduino.rules komennolla:

sudo nano /etc/udev/rules.d/77-arduino.rules

Tiedostoon tulee seuraava rivi:

ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"

Ladataan udev-säännöt uudelleen:

sudo udevadm trigger

Tämän jälkeen Arduino tulee irroittaa ja liittää tietokoneeseen uudelleen.

Kirjoittanut TeroA

Isä, insinööri ja opettaja, joka on erityisen kiinnostunut ihmisten ja teknologian välisestä vuorovaikutuksesta, kommunikoinnista ja visuaalisesta oppimisesta. Ikuinen optimisti ja haaveilija...