/sys/class/gpio
può accedere come root solo per impostazione predefinita. Quindi mi piace che un nuovo gruppo gpio
possa utilizzare i file e le directory sotto /sys/class/gpio
. Per raggiungere questo ho aggiunto le seguenti righe al /etc/rc.local
(sono su Debian):Accesso GPIO (/ sys/class/gpio) come non root
sudo chown root:gpio /sys/class/gpio/unexport /sys/class/gpio/export
sudo chmod 220 /sys/class/gpio/unexport /sys/class/gpio/export
Quindi questo dà i permessi di scrittura a tutti i membri del gruppo gpio
. Così ora possono esportare e non esportare spille fini.
Il problema è che non riescono a leggere/scrivere i file pin specifici dopo l'esportazione (ad esempio /sys/class/gpio/gpio17
) perché di proprietà di root:root
.
Come posso cambiare che sono stati creati automaticamente come root:gpio
? Voglio dire che posso farlo manualmente ogni volta che esporto un pin. Ma è un po 'scomodo.
UPDATE
Secondo la risposta larsks' ho creato il file regola mancante. Ora funziona in parte:
-rwxrwx--- 1 root gpio 4096 Jun 19 16:48 export
lrwxrwxrwx 1 root gpio 0 Jun 19 16:51 gpio17 -> ../../devices/soc/3f200000.gpio/gpio/gpio17
lrwxrwxrwx 1 root gpio 0 Jun 19 16:45 gpiochip0 -> ../../devices/soc/3f200000.gpio/gpio/gpiochip0
-rwxrwx--- 1 root gpio 4096 Jun 19 16:45 unexport
Ma per il ./gpio17/
ho ancora ottenere root:root
:
-rw-r--r-- 1 root root 4096 Jun 19 16:52 active_low
lrwxrwxrwx 1 root root 0 Jun 19 16:52 device -> ../../../3f200000.gpio
-rw-r--r-- 1 root root 4096 Jun 19 16:52 direction
-rw-r--r-- 1 root root 4096 Jun 19 16:52 edge
drwxr-xr-x 2 root root 0 Jun 19 16:52 power
lrwxrwxrwx 1 root root 0 Jun 19 16:52 subsystem -> ../../../../../class/gpio
-rw-r--r-- 1 root root 4096 Jun 19 16:52 uevent
-rw-r--r-- 1 root root 4096 Jun 19 16:52 value
UPDATE 2
Ok ho risolto il problema. Poiché ho installato Raspbian su RaspbianInstaller, non ho mai utilizzato lo strumento raspi-config
. Questo sembra essere un problema. Anche perché mancava la cartella /sys/device/virtual/gpio/
.
ho seguito questa guida qui: http://www.element14.com/community/message/139528/l/re-piface-digital-2--setup-and-use#139528
e poi i permessi erano corrette (anche per le pin-cartelle ei file value
, direction
, ...).
Thx per la vostra risposta. Ma per esempio non posso scrivere su/sys/class/gpio/gpio11/value'. Tutti i file in '/ sys/class/gpio/gpio11 /' sono ancora di proprietà di 'root: root' e non come' (un) export' di 'root: gpio'. – TiMESPLiNTER
Certo che puoi. Questa regola di udev esegue modifiche ricorsive su '/ sys/class/gpio'; Ho aggiornato la risposta con l'aspetto del contenuto della directory 'gpio11'. Hai provato e hai fallito? – larsks
Sì, l'ho provato. E per il tuo aggiornato 'ls -Ll' vedo' root: root' e non come tu 'root: gpio'. Ma funziona con '/ sys/class/gpio/*'. Quindi esportare i pin è ora possibile ma non funziona in seguito. – TiMESPLiNTER