Skip to content

Zigbee Sleepy End Device Example #9962

Closed
@felipejfc

Description

@felipejfc

Related area

Zigbee

Hardware specification

ESP32-C6

Is your feature request related to a problem?

We currently lack an example of working sleepy end device.

Describe the solution you'd like

We should have a working example, I did try to make it by myself, however I don't ever receive "ESP_ZB_COMMON_SIGNAL_CAN_SLEEP", also, I can't configure PM cause it causes a crash. Reference project: https://github.com/espressif/esp-zigbee-sdk/tree/main/examples/esp_zigbee_sleep/light_sleep

EDIT:

I actually receive the signal, however current consumption keeps super high even when I call esp_zb_sleep_now()

Describe alternatives you've considered

No response

Additional context

No response

I have checked existing list of Feature requests and the Contribution Guide

  • I confirm I have checked existing list of Feature requests and Contribution Guide.

Activity

P-R-O-C-H-Y

P-R-O-C-H-Y commented on Nov 14, 2024

@P-R-O-C-H-Y
Member

Hi @felipejfc, I have added a sleepy example #10551. Deep sleep is used so there is no need to set up PM.
I am closing this issue as solved. If you have any questions feel free to reopen or text here :)

felipejfc

felipejfc commented on Nov 14, 2024

@felipejfc
Author

Thx for that!! Super cool.
Is light sleep also supported though? For some applications, deep sleeping will be less power efficient because it takes much longer to bootstrap radio signal etc after one than if light sleeping

P-R-O-C-H-Y

P-R-O-C-H-Y commented on Nov 14, 2024

@P-R-O-C-H-Y
Member

The light sleep is currently not possible, as the Power Management would need to be enabled in sdk config which is not currently. Also what is used for Zigbee in the official light sleep example (what you have linked in the description) is the FreeRTOS tickles idle, which may bring some unexpected behavior (CONFIG_FREERTOS_USE_TICKLESS_IDLE).

We may add the PM in the future releases, when we do I will test the light sleep with Zigbee and if its doable, I will implement it and add another example :)

tomasz90

tomasz90 commented on Apr 13, 2025

@tomasz90

Hi!
@P-R-O-C-H-Y is there another option to reduce power consumption than light sleep or deep sleep? Unfortunately deep sleep is only suitable for completly passive elements like sensors, cause reconnection takes couple of seconds.. I am stuck at 60mA which is really unacceptable, specially for a zigbee device which should be very power efficient.

P-R-O-C-H-Y

P-R-O-C-H-Y commented on Apr 14, 2025

@P-R-O-C-H-Y
Member

Hi @tomasz90 please open a discussion or join our discord channel for those questions to not spam already closed issue.
Also the reconnection time is now about 320 mS if the device is in good range, as we are saving the network channel. So the scan is fast. I don't see a different way to reduce power consumption than using deep sleep. Maybe you can lower the clock if its possible for your device.

me-no-dev

me-no-dev commented on Apr 14, 2025

@me-no-dev
Member

@tomasz90 looks like your consumption comes from your sensor and not from the ESP. There is nothing we can do in that case. You could look into controlling the sensor power through a mosfet and turn it on only when the ESP wakes up and needs to check the values (or som other way if the sensor allow it). Also, let's discuss this elsewhere like @P-R-O-C-H-Y requested.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Area: ZigbeeIssues and Feature Request about ZigbeeType: Feature requestFeature request for Arduino ESP32

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    Zigbee Sleepy End Device Example · Issue #9962 · espressif/arduino-esp32