.. _low_power_design_and_energy_harvesting_pmu_configuration: PMU Configuration ################# The ``atmosic,atmx3-pmu.yaml`` binding defines PMU configuration related to battery type, battery level, VDDIO/VSTORE configuration, RF and PV harvesting, external boost options, harvesting metering, SoC-off wakeup, and 32 kHz crystal load calibration. ``reg`` Required. ``interrupts`` Required. PMU interrupt (``PMU_IRQn``) for brownout, PMU watchdog warning, and energy monitoring events. The PMU driver provides a central handler that dispatches to appropriate sub-handlers based on compile-time configuration: * ``CONFIG_ATM_BROWNOUT`` * ``CONFIG_WDT_ATMOSIC_PMU_ENABLE`` Battery and supply configuration ================================ ``batt-type`` Type: ``int`` The battery type is specified through OTP and defaults to non-rechargeable. This property can override that default based on the board design. Valid ``batt-type`` values: * ``0``: Li-ion * ``1``: Rechargeable * ``2``: No battery * ``3``: Non-rechargeable If you wish to use Li-ion (``batt-type = <0>``), first power the board using a power source that is **not** lithium-ion, then load a program with ``batt-type`` set to ``<0>``. This enables the lithium-ion power circuit. You can then disconnect the non-lithium-ion power source, connect the lithium-ion battery, and proceed normally. ``batt-level`` Type: ``int`` The battery level is specified through OTP and defaults to > 1.8 V. This property can override that default. Valid ``batt-level`` values: * ``0``: <= 1.8 V * ``1``: > 1.8 V ``vddio-type`` Type: ``int`` The VDDIO type defaults to Internal and can be overridden through the ``vddio-type`` property based on the board design. Valid ``vddio-type`` values: * ``0``: Internal * ``1``: External The external VDDIO type is determined by the source on the board, which is commonly assumed to be VBAT. Therefore, it is supported only for > 1.8 V (``batt-level = <1>``). ``vstore-max`` Type: ``int`` The VSTORE maximum is specified through OTP and can be overridden through the ``vstore-max`` property. Supported values for ``vstore-max``: * 1500 mV to 3000 mV in 50 mV steps * 3100 mV * 3300 mV (default) ``vddpa-src`` Type: ``int`` Supply source for VDDPA. Valid ``vddpa-src`` values: * ``0``: VDDIOP * ``1``: VDDPAP / VSTORE (platform-specific naming) * ``2``: None ``hsc-mode`` Type: ``boolean`` Indicates whether the design uses a Hybrid Super Cap. This is valid only for Li-ion (``batt-type = <0>``). Harvesting configuration ======================== ``nonrf-harv`` Type: ``boolean`` Enables photovoltaic (PV) harvesting. Can be specified with ``rf-harv`` to enable combined harvesting. ``rf-harv`` Type: ``boolean`` Enables RF harvesting. Can be specified with ``nonrf-harv`` to enable combined harvesting. ``vharv-range`` Type: ``int`` The harvesting range must be specified when using PV harvesting and needs to match the PV cell operating region. Valid ``vharv-range`` values: * ``0``: 0.4 V - 0.45 V * ``1``: 0.45 V - 0.5 V * ``2``: 0.525 V - 0.6 V * ``3``: 0.6 V - 0.7 V * ``4``: 0.675 V - 0.8 V * ``5``: 0.75 V - 0.9 V * ``6``: 0.825 V - 1.0 V * ``7``: 0.9 V - 1.1 V * ``8``: 0.975 V - 1.2 V * ``9``: 1.05 V - 1.3 V * ``10``: 1.175 V - 1.45 V * ``11``: 1.3 V - 1.6 V * ``12``: 1.5 V - 1.8 V * ``13``: 1.7 V - 2.0 V * ``14``: 1.95 V - 2.25 V * ``15``: 2.2 V - 2.5 V External boost options ====================== ``boost-from-vharv-inductor`` Type: ``boolean`` This option is only available with Li-ion (``batt-type = <0>``), PV harvesting enabled, and a valid ``vharv-range`` setting. Refer to the application notes for the applicable scenarios, hardware connections, and performance. Based on the selected PV cell characteristics, choose the lower or upper level of ``vharv-range`` by enabling one of these properties: * ``vharv-ll`` * ``vharv-ul`` ``vharv-ll`` Type: ``boolean`` Select the lower level of the configured ``vharv-range``. ``vharv-ul`` Type: ``boolean`` Select the upper level of the configured ``vharv-range``. ``dig-test-out-pin`` Type: ``int`` Digital test output pin. Set when using inductive boost. ``boost-io-pin`` Type: ``int`` Boost I/O pin. Set when using two-diode boost. ``boost-from-vharv-two-diode`` Type: ``boolean`` This option is only available with Li-ion (``batt-type = <0>``), PV harvesting enabled, and a valid ``vharv-range`` setting. Refer to the application notes for the applicable scenarios, hardware connections, and performance. ``boost-from-vstore-two-diode`` Type: ``boolean`` This option is only available with Li-ion (``batt-type = <0>``), PV harvesting enabled, and a valid ``vharv-range`` setting. Refer to the application notes for the applicable scenarios, hardware connections, and performance. Harvesting meter ================ ``harv-meter`` Type: ``boolean`` Supported only when MPPT is disabled. The application must call the ``pmu_set_harv_meter()`` API to start or stop the meter. Instantaneous power computation depends on the configured ``vharv-range`` and the inductor used. ``inductor-nhenry`` Type: ``int`` Inductor value, in nH, used in the board design for the harvesting meter. SoC-off wakeup configuration ============================ ``soc-off-lpcomp-wakeup-pin`` Type: ``int`` LP comparator input pin number for SoC-off wakeup. Valid values are platform-specific: * ATM33xx / ATM34xx: ``3`` or ``4`` When this property is defined, ``soc-off-lpcomp-ref-level`` must also be defined. ``soc-off-lpcomp-ref-level`` Type: ``int`` LP comparator reference voltage level (``1`` to ``15``). The system wakes when the input voltage crosses this threshold. This property is required when ``soc-off-lpcomp-wakeup-pin`` is defined. 32 kHz crystal load calibration =============================== ``xtal-32k-cap-in`` Type: ``int`` 32 kHz crystal load value on ``XTALI_32K``. The value is calculated using calibration tools. ``xtal-32k-cap-out`` Type: ``int`` 32 kHz crystal load value on ``XTALO_32K``. The value is calculated using calibration tools.