apache / apache/mynewt-nimble

Extreme low-power mode on NRF5340

Open
#1,323 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
893
Forks
512
Avg merge
13d 31m
Merged PRs (30d)
7

Description

This is not so much an issues as a discussion, before we start implementation, since I couldn't find a forum for this.

We would like to completely disable Nimble and the net-core on the NRF5340 for long periods. When needed, the Nimble
stack (and Net-core) should be restarted and used for communications. Nimble itself doesn't appear to have deinit() functions (yet).

What we plan to do is:
- Net-core: wait for Radio to be idle and then disable the Radio (and all other used peripherals). Then signal app-core
- App-core: wait until net-core is done with shutdown and then really shut it down.
- App-core Nimble stack: stop tasks, stop timer, remove queues (or clear), reset some static global structs to zero.

The idea is that we dont have to modify the init steps this way, so future merges remain easy.

Am I missing something with this approach?

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue provides no files, tests, or entry points; begin by tracing Nimble initialization, task and timer ownership, and the NRF5340 net-core/app-core shutdown flow. Review how Radio and other peripherals are stopped and whether Nimble exposes lifecycle support; the issue does not define a decided implementation or completion criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.