Port, board and/or hardware
openmv-ae3
MicroPython version
Latest.
Reproduction
Call machine.lightsleep(). No way to wakeup.
Expected behaviour
Call machine.lightsleep() and you should be able to wakeup on RTC, button press, or dual core messaging.
Observed behaviour
When machine.lightsleep() is called the system dies. Wakeup from another core doesn't work either:
# This work is licensed under the MIT license.
# Copyright (c) 2013-2026 OpenMV LLC. All rights reserved.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Dual-Core Wake-on-Speech Example
#
# This example puts the HP core into low-power lightsleep while the HE core
# continuously listens for keywords with MicroSpeech. When the HE core hears
# "Yes", the inter-core message wakes the HP core, which blinks an LED before
# going back to sleep.
#
# The built-in MicroSpeech model only recognizes the keywords "Yes" and "No".
import time
import openamp
import machine
from machine import LED
label = None
def task_callback(src_addr, data):
global label
label = data.decode()
@openamp.async_remote(task_callback)
async def task1(ept):
from ml.apps import MicroSpeech
speech = MicroSpeech(gain_db=24)
while True:
l, scores = speech.listen(timeout=0, threshold=0.70)
if l:
ept.send(l)
# Start the HE core.
rproc = openamp.RemoteProc(0x80320000)
rproc.start()
led = LED("LED_GREEN")
while True:
if label == "Yes":
for i in range(5):
led.on()
time.sleep_ms(250)
led.off()
time.sleep_ms(250)
label = None
# Sleep the HP core. The HE core keeps listening, and the inter-core
# message from ept.send() wakes the HP core.
machine.lightsleep()
Additional Information
No, I've provided everything above.
Code of Conduct
Yes, I agree
Port, board and/or hardware
openmv-ae3
MicroPython version
Latest.
Reproduction
Call
machine.lightsleep(). No way to wakeup.Expected behaviour
Call
machine.lightsleep()and you should be able to wakeup on RTC, button press, or dual core messaging.Observed behaviour
When machine.lightsleep() is called the system dies. Wakeup from another core doesn't work either:
Additional Information
No, I've provided everything above.
Code of Conduct
Yes, I agree