5 years, 1 month ago.

Does the Mbed LoRaWAN stack provide a mechanism for the mcu to deep sleep duty-cycle periods?

We're currently using a modified STM/Semtech LoRaWAN stack for the sensor boards that we design (currently incorporating AcSIP S76S mcu/radio modules with our own firmware), but are considering shifting to the Mbed LoRaWAN stack, particulary as it implements a proper RTOS.

We modified the STM/Semtech stack code so that the mcu enters deep sleep during extended radio backoffs and duty cycle periods, to minimise power use.

So the question really is whether the Mbed LoRaWAN stack already implements a mechanism to achieve this, rather than the mcu idling during those periods?

It isn't entirely straightforward to achieve, with the current context needing to be saved before deep sleep then restored on wake-up, also with the ability to set a timer to wake up the mcu from deep sleep just before the backoff or duty cycle period is over, at the same time accounting for regular wake-up, sensor sample and transmit application level events.

By the way, it would be helpful if there was a more detailed description of the Mbed LoRaWAN stack architecture available, particularly describing how an application interacts with the Mac layer.

Best wishes, Ron

Question relating to:

1 Answer

4 years, 10 months ago.

Hi Ron, yes, the Mbed OS LoRaWAN stack adheres to the sleep principles in Mbed OS. As long as your target runs in tickless mode you'll see very good sleep characteristics out of the box. E.g. this is a power profile on the STM32L475VG with SX1276 doing a LoRaWAN transmission: