@@ -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