# Power ## **Overview** Provides device power management functions. This module is used to reboot the device and set low power consumption for the device. **Since:** 1.0 **Version:** 1.0 ## **Summary** ## Files

File Name

Description

lowpower.h

Sets low power consumption for the device.

reset.h

Reboots the device.

## Enumerations

Enumeration Name

Description

LpcType { NO_SLEEP, LIGHT_SLEEP, DEEP_SLEEP }

Enumerates low power consumption modes.

RebootCause {   SYS_REBOOT_CAUSE_UNKNOWN = 0, SYS_REBOOT_CAUSE_CMD, SYS_REBOOT_CAUSE_UPG, SYS_REBOOT_CAUSE_UPG_B,   SYS_REBOOT_CAUSE_WIFI_MODE, SYS_REBOOT_CAUSE_USR_NORMAL_REBOOT, SYS_REBOOT_CAUSE_USR0, SYS_REBOOT_CAUSE_USR1,   SYS_REBOOT_CAUSE_AT_BUSY, SYS_REBOOT_CAUSE_MAX }

Enumerates reboot causes.

## Functions

Function Name

Description

LpcInit (void)

unsigned int 

Initializes low power consumption.

LpcSetType (LpcType type)

unsigned int 

Sets low power consumption for the device.

RebootDevice (RebootCause cause)

void 

Reboots the device using different causes.

## **Details** ## **Enumeration Type Documentation** ## LpcType ``` enum [LpcType](Power.md#gaa6139ca73fa81742134fe74345ccb748) ``` **Description:** Enumerates low power consumption modes.

Enumerator

Description

NO_SLEEP 

No sleep

LIGHT_SLEEP 

Light sleep

DEEP_SLEEP 

Deep sleep

## RebootCause ``` enum [RebootCause](Power.md#gaeac1b873015f5b0a8aa7f3c068507426) ``` **Description:** Enumerates reboot causes.

Enumerator

Description

SYS_REBOOT_CAUSE_UNKNOWN 

Unknown cause

SYS_REBOOT_CAUSE_CMD 

System reboot

SYS_REBOOT_CAUSE_UPG 

Reboot upon an upgrade

SYS_REBOOT_CAUSE_UPG_B 

Reboot upon an upgrade on the backup partition

SYS_REBOOT_CAUSE_WIFI_MODE 

Reboot in Wi-Fi mode

SYS_REBOOT_CAUSE_USR_NORMAL_REBOOT 

Normal reboot

SYS_REBOOT_CAUSE_USR0 

Custom cause 0

SYS_REBOOT_CAUSE_USR1 

Custom cause 1

SYS_REBOOT_CAUSE_AT_BUSY 

Reboot upon busy AT commands

SYS_REBOOT_CAUSE_MAX 

Maximum value

## **Function Documentation** ## LpcInit\(\) ``` unsigned int LpcInit (void ) ``` **Description:** Initializes low power consumption. **Returns:** Returns [WIFI\_IOT\_SUCCESS](Wifiiot.md#gae70eaf627c0370cc271dcb8060aee861) if the operation is successful; Returns an error code defined in [wifiiot\_errno.h](wifiiot_errno-h.md) otherwise. ## LpcSetType\(\) ``` unsigned int LpcSetType ([LpcType](Power.md#gaa6139ca73fa81742134fe74345ccb748) type) ``` **Description:** Sets low power consumption for the device. **Parameters:**

Name

Description

type Indicates the low power consumption mode to set.
**Returns:** Returns [WIFI\_IOT\_SUCCESS](Wifiiot.md#gae70eaf627c0370cc271dcb8060aee861) if the operation is successful; Returns an error code defined in [wifiiot\_errno.h](wifiiot_errno-h.md) otherwise. ## RebootDevice\(\) ``` void RebootDevice ([RebootCause](Power.md#gaeac1b873015f5b0a8aa7f3c068507426) cause) ``` **Description:** Reboots the device using different causes. **Parameters:**

Name

Description

cause Indicates the reboot cause.