@@ -160,7 +160,8 @@ bool ZigbeeEP::setBatteryVoltage(uint8_t voltage) {
160160
161161bool  ZigbeeEP::reportBatteryPercentage () {
162162  /*  Send report attributes command */ 
163-   esp_zb_zcl_report_attr_cmd_t  report_attr_cmd = {0 };
163+   esp_zb_zcl_report_attr_cmd_t  report_attr_cmd;
164+   memset (&report_attr_cmd, 0 , sizeof (report_attr_cmd));
164165  report_attr_cmd.address_mode  = ESP_ZB_APS_ADDR_MODE_DST_ADDR_ENDP_NOT_PRESENT;
165166  report_attr_cmd.attributeID  = ESP_ZB_ZCL_ATTR_POWER_CONFIG_BATTERY_PERCENTAGE_REMAINING_ID;
166167  report_attr_cmd.direction  = ESP_ZB_ZCL_CMD_DIRECTION_TO_CLI;
@@ -181,7 +182,8 @@ bool ZigbeeEP::reportBatteryPercentage() {
181182
182183char  *ZigbeeEP::readManufacturer (uint8_t  endpoint, uint16_t  short_addr, esp_zb_ieee_addr_t  ieee_addr) {
183184  /*  Read peer Manufacture Name & Model Identifier */ 
184-   esp_zb_zcl_read_attr_cmd_t  read_req = {0 };
185+   esp_zb_zcl_read_attr_cmd_t  read_req;
186+   memset (&read_req, 0 , sizeof (read_req));
185187
186188  if  (short_addr != 0 ) {
187189    read_req.address_mode  = ESP_ZB_APS_ADDR_MODE_16_ENDP_PRESENT;
@@ -219,7 +221,8 @@ char *ZigbeeEP::readManufacturer(uint8_t endpoint, uint16_t short_addr, esp_zb_i
219221
220222char  *ZigbeeEP::readModel (uint8_t  endpoint, uint16_t  short_addr, esp_zb_ieee_addr_t  ieee_addr) {
221223  /*  Read peer Manufacture Name & Model Identifier */ 
222-   esp_zb_zcl_read_attr_cmd_t  read_req = {0 };
224+   esp_zb_zcl_read_attr_cmd_t  read_req;
225+   memset (&read_req, 0 , sizeof (read_req));
223226
224227  if  (short_addr != 0 ) {
225228    read_req.address_mode  = ESP_ZB_APS_ADDR_MODE_16_ENDP_PRESENT;
@@ -396,7 +399,8 @@ bool ZigbeeEP::setTimezone(int32_t gmt_offset) {
396399
397400tm ZigbeeEP::getTime (uint8_t  endpoint, int32_t  short_addr, esp_zb_ieee_addr_t  ieee_addr) {
398401  /*  Read peer time */ 
399-   esp_zb_zcl_read_attr_cmd_t  read_req = {0 };
402+   esp_zb_zcl_read_attr_cmd_t  read_req;
403+   memset (&read_req, 0 , sizeof (read_req));
400404
401405  if  (short_addr >= 0 ) {
402406    read_req.address_mode  = ESP_ZB_APS_ADDR_MODE_16_ENDP_PRESENT;
@@ -448,7 +452,8 @@ tm ZigbeeEP::getTime(uint8_t endpoint, int32_t short_addr, esp_zb_ieee_addr_t ie
448452
449453int32_t  ZigbeeEP::getTimezone (uint8_t  endpoint, int32_t  short_addr, esp_zb_ieee_addr_t  ieee_addr) {
450454  /*  Read peer timezone */ 
451-   esp_zb_zcl_read_attr_cmd_t  read_req = {0 };
455+   esp_zb_zcl_read_attr_cmd_t  read_req;
456+   memset (&read_req, 0 , sizeof (read_req));
452457
453458  if  (short_addr >= 0 ) {
454459    read_req.address_mode  = ESP_ZB_APS_ADDR_MODE_16_ENDP_PRESENT;
@@ -564,7 +569,8 @@ static void findOTAServer(esp_zb_zdp_status_t zdo_status, uint16_t addr, uint8_t
564569}
565570
566571void  ZigbeeEP::requestOTAUpdate () {
567-   esp_zb_zdo_match_desc_req_param_t  req = {0 };
572+   esp_zb_zdo_match_desc_req_param_t  req;
573+   memset (&req, 0 , sizeof (req));
568574  uint16_t  cluster_list[] = {ESP_ZB_ZCL_CLUSTER_ID_OTA_UPGRADE};
569575
570576  /*  Match the OTA server of coordinator */ 
0 commit comments