Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Thermostat weekly schedule (TZ-1517) #551

Open
kiw-github opened this issue Jan 28, 2025 · 2 comments
Open

Thermostat weekly schedule (TZ-1517) #551

kiw-github opened this issue Jan 28, 2025 · 2 comments
Labels

Comments

@kiw-github
Copy link

Question

The SDK has a function esp_zb_zcl_thermostat_weekly_schedule_start(), what schedule algorithm does it perform?
⁃ What cluster attributes does it change and use in its work?
⁃ Where does it get the time from?

When changing a cluster attribute according to the schedule, how can I get an event about its change?

If the device has several endpoints from thermostat clusters, how can I specify which endpoint to work with when starting esp_zb_zcl_thermostat_weekly_schedule_start()?

According to the SDK, there is a schedule reading function esp_zb_zcl_thermostat_weekly_schedule_get_next_record(), but there is no function that sets this schedule from a program and not via ZigBee.

When the ESP32 is overloaded, the specified schedule is not saved in NVS. How can I implement saving the schedule?

Additional context.

No response

@github-actions github-actions bot changed the title Thermostat weekly schedule Thermostat weekly schedule (TZ-1517) Jan 28, 2025
@ANARHIST1984
Copy link

Same, how I can read schedule from Zigbee SDK?

@xieqinan
Copy link
Contributor

xieqinan commented Feb 6, 2025

@kiw-github ,

The SDK has a function esp_zb_zcl_thermostat_weekly_schedule_start(), what schedule algorithm does it perform?

The esp_zb_zcl_thermostat_weekly_schedule_start() function enables the thermostat weekly scheduler to set the next temperature from the schedule table by comparing the transition times.

⁃ What cluster attributes does it change and use in its work?

It is only related to the ESP_ZB_ZCL_ATTR_THERMOSTAT_OCCUPIED_COOLING_SETPOINT_ID and ESP_ZB_ZCL_ATTR_THERMOSTAT_OCCUPIED_HEATING_SETPOINT_ID.

⁃ Where does it get the time from?

The time is from the UTC time of system.

When changing a cluster attribute according to the schedule, how can I get an event about its change?

The callback registered with esp_zb_core_action_handler_register() will be triggered by the ESP_ZB_CORE_THERMOSTAT_VALUE_CB_ID event.

If the device has several endpoints from thermostat clusters, how can I specify which endpoint to work with when starting esp_zb_zcl_thermostat_weekly_schedule_start()?

The current SDK (v1.6.2) only supports singleton mode for thermostat cluster.

According to the SDK, there is a schedule reading function esp_zb_zcl_thermostat_weekly_schedule_get_next_record(), but there is no function that sets this schedule from a program and not via ZigBee.

The esp_zb_zcl_thermostat_set_weekly_schedule_cmd_req() function can be used to configure the schedule table.

When the ESP32 is overloaded, the specified schedule is not saved in NVS. How can I implement saving the schedule?

The thermostat schedule table is required to be saved in the application. If the NVS space is insufficient, you will need to increase its size.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants