After learning that I needed to use the edge image for the rpi2 in order to use GPIO, I’m getting some denials using RPi.GPIO just trying to write to GPIO pins, like this:
#!/usr/bin/env python3
import RPi.GPIO as GPIO
# Set the GPIO modes
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(7, GPIO.OUT)
GPIO.output(7, 0)
GPIO.cleanup()
snappy-debug gives me this:
= AppArmor =
Time: Nov 29 02:24:01
Log: apparmor="DENIED" operation="open" profile="snap.my-snap-name.wheels" name="/dev/gpiomem" pid=3263 comm="python3" requested_mask="wr" denied_mask="wr" fsuid=0 ouid=0
File: /dev/gpiomem (write)
= AppArmor =
Time: Nov 29 02:24:01
Log: apparmor="DENIED" operation="open" profile="snap.my-snap-name.wheels" name="/sys/firmware/devicetree/base/soc/ranges" pid=3263 comm="python3" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
File: /sys/firmware/devicetree/base/soc/ranges (read)
Suggestion:
* adjust program to not access '/sys/firmware/devicetree/base/soc/ranges'
= AppArmor =
Time: Nov 29 02:24:01
Log: apparmor="DENIED" operation="open" profile="snap.my-snap-name.wheels" name="/dev/mem" pid=3263 comm="python3" requested_mask="wr" denied_mask="wr" fsuid=0 ouid=0
File: /dev/mem (write)
Suggestion:
* add 'physical-memory-control' to 'plugs'
Note that every GPIO slot is connected. Ignoring the physical memory control one, anyone have any ideas?