QUERY · ISSUE
rp2: Can't wake from lightsleep with Pin IRQ
port-rp2
On a pin change this code sample toggles the LED but never outputs "got here".
from machine import Pin, lightsleep
p25 = Pin(25, Pin.OUT)
p0 = Pin(0, Pin.IN, Pin.PULL_UP)
def foo(_):
p25(not p25()) # Toggle the LED
p0.irq(foo, trigger=Pin.IRQ_FALLING)
while True:
lightsleep()
print('Got here')
The docs indicate that to fix this, the IRQ should be instantiated with wake=machine.SLEEP. Unfortunately this constant does not exist.
CANDIDATE · ISSUE
ESP32 - Cannot get Pin IRQ To Trigger
port-esp32
I can get the device to wake from deepsleep:
import machine as mc
p26 = mc.Pin(26,mc.Pin.IN, mc.Pin.PULL_UP)
p26.irq(trigger = mc.Pin.WAKE_HIGH, wake = mc.DEEPSLEEP)
mc.deepsleep()
but it refuses to trigger on edge:
import machine as mc
p26 = mc.Pin(26,mc.Pin.IN, mc.Pin.PULL_UP)
def x():
print('hello pin')
p26.irq(trigger=mc.Pin.IRQ_FALLING, handler = x )