diff --git a/vd960DBN/BLE/OnlyUpdateApp_Peripheral/APP/net_srv.c b/vd960DBN/BLE/OnlyUpdateApp_Peripheral/APP/net_srv.c index c8ac243..e4e3a88 100644 --- a/vd960DBN/BLE/OnlyUpdateApp_Peripheral/APP/net_srv.c +++ b/vd960DBN/BLE/OnlyUpdateApp_Peripheral/APP/net_srv.c @@ -170,7 +170,9 @@ void mqtt_publish(char *topic, char *message, int req_qos) MQTTString topicString = MQTTString_initializer; int msglen = strlen(message); topicString.cstring = topic; - len = MQTTSerialize_publish(mqttBuf, sizeof(mqttBuf), 0, req_qos, 0, 0, topicString, (unsigned char *)message, msglen); + static uint16_t s_mqtt_pkt_id = 0; + uint16_t pkt_id = (req_qos > 0) ? ++s_mqtt_pkt_id : 0; + len = MQTTSerialize_publish(mqttBuf, sizeof(mqttBuf), 0, req_qos, 0, pkt_id, topicString, (unsigned char *)message, msglen); // Transport_SendPacket(mqttBuf, len); WCHNET_SocketSend(SocketId_TCP, (uint8_t *)mqttBuf, &len); }