Resource usage for nRF54L¶
CPU usage¶
Mira normally use at most 10% of the CPU measured over a 40ms window. Some infrequent processing uses the CPU, at thread/appplication level, for longer periods.
Note that delaying IRQ handlers above priority 2 will decrease Mira's network performance.
Mira will drop further received packets until it has processed it at thread/application level. That will also lead to decreased network performance.
MPSL & SoftDevice Controller¶
MiraMesh uses the MPSL API to schedule its radio usage and allow coexistance with other radio protocols.
The SoftDevice Controller isn't used by MiraMesh, but it can be used together with it.
Peripherals, DPPI and PPIB usage by MiraMesh¶
MiraMesh uses the following resources:
Resource | Power Domain | How many |
---|---|---|
DPPI | 10 | 5 |
DPPI | 20 | 1 |
DPPI Group | 10 | 1 |
PPIB11 | 10 | 1 |
PPIB21 | 20 | 1 |
GRTC CC regs | 20 | 2 |
GRTC IRQ | 20 | 1 |
EGU10 Events | 10 | 1 |
EGU10 IRQ | 10 | 1 |
Configure the actual resources with the config argument to
the miramesh_sys_init
function. If using the
MiraMesh Zephyr integration module,
this is already handled, but the default values can be changed in the project's KConfig files.
MiraMesh also uses hardware granted to it by MPSL's timeslot API.
Interrupts used by MiraMesh¶
The two configured interrupts should have interrupt handlers that call miramesh_grtc_irq_handler
and miramesh_egu_irq_handler
.
The configured EGU IRQ need to have a priority between 1 and the GRTC's IRQ priority.
If using the MiraMesh Zephyr integration module, this is already handled.