Deep Sleep Wakeup, recording multiple events
-
I have several sensors that can trigger a wake from deep sleep.
Some of these are shock sensors that basically output a very short impulse.
It is possible that several sensors are triggered by the one event. Is there a way to capture all the inputs that triggered the wake.
I guess one will always be first. Is it possible to queue subsequent events similar to interrupts?Sometimes the impulse is short enough that the wake registers but not the reason. Ie the following code outputs
(1, [])
Other times the output will be as expected for a single sensor wake
(1, [Pin('P21', mode=Pin.IN, pull=Pin.PULL_DOWN, alt=-1)])
Ideally, I would like to see a list of all the pins that went high during the wake process. eg
(1, [Pin('P21', mode=Pin.IN, pull=Pin.PULL_DOWN, alt=-1)], [Pin('P22', mode=Pin.IN, pull=Pin.PULL_DOWN, alt=-1)], [Pin('P23', mode=Pin.IN, pull=Pin.PULL_DOWN, alt=-1)])print(machine.wake_reason()) machine.pin_deepsleep_wakeup(wakePinList,machine.WAKEUP_ANY_HIGH, True) machine.deepsleep(deepSleepTime)
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login