diff --git a/rpio.go b/rpio.go index 557e993..21ce563 100644 --- a/rpio.go +++ b/rpio.go @@ -744,7 +744,7 @@ func Open() (err error) { // Open fd for rw mem access; try dev/mem first (need root) file, err = os.OpenFile("/dev/mem", os.O_RDWR|os.O_SYNC, os.ModePerm) - if os.IsPermission(err) { // try gpiomem otherwise (some extra functions like clock and pwm setting wont work) + if os.IsNotExist(err) || os.IsPermission(err) { // try gpiomem otherwise (some extra functions like clock and pwm setting wont work) file, err = os.OpenFile("/dev/gpiomem", os.O_RDWR|os.O_SYNC, os.ModePerm) } if err != nil {