diff --git a/main/zh_gateway.c b/main/zh_gateway.c index 5626a91..a6d69f3 100755 --- a/main/zh_gateway.c +++ b/main/zh_gateway.c @@ -694,13 +694,12 @@ void zh_mqtt_event_handler(void *arg, esp_event_base_t event_base, int32_t event break; } data.payload_data.config_message.led_hardware_config_message.led_type = zh_led_type_check(atoi(extracted_hardware_data)); - extracted_hardware_data = strtok(incoming_payload, ","); // Extract first white gpio number value. + extracted_hardware_data = strtok(NULL, ","); // Extract first white gpio number value. if (extracted_hardware_data == NULL) { break; } data.payload_data.config_message.led_hardware_config_message.first_white_pin = zh_gpio_number_check(atoi(extracted_hardware_data)); - break; extracted_hardware_data = strtok(NULL, ","); // Extract second white gpio number value. if (extracted_hardware_data == NULL) { @@ -727,6 +726,7 @@ void zh_mqtt_event_handler(void *arg, esp_event_base_t event_base, int32_t event data.payload_data.config_message.led_hardware_config_message.blue_pin = zh_gpio_number_check(atoi(extracted_hardware_data)); data.payload_type = ZHPT_HARDWARE; zh_send_message(incoming_data_mac, (uint8_t *)&data, sizeof(zh_espnow_data_t)); + break; default: break; } @@ -1438,7 +1438,7 @@ void zh_espnow_led_send_mqtt_json_hardware_config_message(const zh_espnow_data_t zh_json_t json = {0}; char buffer[512] = {0}; zh_json_init(&json); - if (device_data->payload_data.config_message.led_hardware_config_message.first_white_pin == ZH_NOT_USED || device_data->payload_data.config_message.led_hardware_config_message.red_pin == ZH_NOT_USED) + if (device_data->payload_data.config_message.led_hardware_config_message.first_white_pin == ZH_NOT_USED && device_data->payload_data.config_message.led_hardware_config_message.red_pin == ZH_NOT_USED) { zh_json_add(&json, "Led type", "Not used"); }