Power Manager Developer Guide#

About this Guide#

This guide details the implementation of requirement-based power management for the Silicon Labs SiWx917 system-on-chip (SoC) platforms. It explains how to use the Power Manager Service application programming interface (API), integrate FreeRTOS Tickless Idle, configure ultra-low-power (ULP) operational modes, and configuration of specific power states including PS1 and Standby modes, set wake-up sources, and apply clock scaling to adjust the clock frequency based on the user requirements. The guide targets battery-powered and performance-sensitive designs that need deterministic, event-driven power behavior.

Audience#

This guide is for embedded system professionals who design and build low-power software:

  • Firmware developers: Implement power-state transitions, sleep modes, and peripheral power control.

  • Platform integrators: Integrate the Power Manager Service with FreeRTOS Tickless Idle and system components.

  • Application developers: Optimize battery life while balancing performance and power consumption.

  • Hardware engineers: Align hardware capabilities and constraints with power requirements on Si91x platforms.

Purpose#

This guide helps embedded software engineers design, integrate, and maintain applications that use the Power Manager Service on the SiWx91x architecture. It provides a structured path to:

  • Reduce development overhead with clear principles and patterns.

  • Accelerate integration with step-by-step examples.

  • Achieve better power results through validated practices using the WiSeConnect software development kit (SDK) and Power Manager Service API.

Use this guide for new (greenfield) designs and to enhance existing low-power implementations.

Scope#

This guide covers the comprehensive implementation of power management for SiWx91x devices, focusing on the following areas:

Core Implementation#

  • Software implementation of the Power Manager Service for SiWx91x devices, with emphasis on SiWx917.

  • Use of the WiSeConnect SDK in the Simplicity Studio integrated development environment (IDE).

  • Initialization, configuration, API usage, low-power operation, error handling, and debugging.

Power Management Features#

  • Requirement-based power management: Run-time selection of PS2, PS3, or PS4 power states by adding or removing power requirements.

  • FreeRTOS tickless idle integration: Automatic sleep mode entry when tasks are blocked, based on a configurable threshold (default: 100 ms).

  • PS1 implementation: Ultra-low-power state with ULP peripherals available.

  • Standby mode configuration: Standby mode setup with interrupt-driven wake-up enabled for the Arm Cortex-M4 core.

  • Clock scaling modes: Performance or PowerSave selection for workload-based clock and power optimization.

System Control and Management#

  • Wake source management: Configuration of general-purpose input/output (GPIO), Deep Sleep Timer, real-time clock (RTC) alarms, and wireless events.

  • Peripheral power management: Power gating control for peripherals in the M4 Subsystem (M4SS), Ultra-Low-Power Subsystem (ULPSS), and Network Processing Subsystem (NPSS), including RAM retention configuration.

  • Transition callbacks: Safe peripheral reconfiguration on entry to and exit from sleep and Standby modes.

  • Practical examples and best practices for integrating Power Manager functionality in embedded applications.

Hardware and Software Components#