forked from xuos/xiuos
1、Optimize transmission string matching rules
2、change Kconfig for mqtt and ota
This commit is contained in:
parent
117789121e
commit
5da9a9c4ae
|
@ -9,7 +9,7 @@ menu "lib using MQTT"
|
|||
if LIB_USING_MQTT
|
||||
choice
|
||||
prompt "Choose xiuos platform or Alibaba Cloud platform."
|
||||
default ALIBABA_PLATFORM
|
||||
default XIUOS_PLATFORM
|
||||
|
||||
config XIUOS_PLATFORM
|
||||
bool "xiuos platform."
|
||||
|
@ -34,11 +34,11 @@ menu "lib using MQTT"
|
|||
default "xiuosiot"
|
||||
|
||||
config PLATFORM_SERVERIP
|
||||
string "mqtt platform server ip."
|
||||
string "xiuos platform server ip."
|
||||
default "115.238.53.59"
|
||||
|
||||
config PLATFORM_SERVERPORT
|
||||
string "mqtt platform server port."
|
||||
string "xiuos platform server port."
|
||||
default "1883"
|
||||
endmenu
|
||||
endif
|
||||
|
@ -58,11 +58,11 @@ menu "lib using MQTT"
|
|||
default "d2e613c4f714b6b0774bd7b68eeceae3"
|
||||
|
||||
config PLATFORM_SERVERIP
|
||||
string "mqtt platform server ip."
|
||||
string "Alibaba Cloud platform server ip."
|
||||
default "101.133.196.127"
|
||||
|
||||
config PLATFORM_SERVERPORT
|
||||
string "mqtt platform server port."
|
||||
string "Alibaba Cloud platform server port."
|
||||
default "1883"
|
||||
endmenu
|
||||
endif
|
||||
|
|
|
@ -7,7 +7,7 @@ menu "OTA function"
|
|||
if TOOL_USING_OTA
|
||||
choice
|
||||
prompt "Compile bootloader bin or application bin."
|
||||
default MCUBOOT_BOOTLOADER
|
||||
default MCUBOOT_APPLICATION
|
||||
|
||||
config MCUBOOT_BOOTLOADER
|
||||
bool "Config as bootloader."
|
||||
|
|
|
@ -726,7 +726,7 @@ static void app_ota_by_4g(void)
|
|||
}
|
||||
}
|
||||
mcuboot.flash_deinit();
|
||||
KPrintf("ota file transfer complete,start reboot!\n");
|
||||
KPrintf("firmware file transfer successful,start reboot!\n");
|
||||
MdelayKTask(2000);
|
||||
mcuboot.op_reset();
|
||||
}
|
||||
|
@ -758,6 +758,7 @@ static void PropertyVersion(void)
|
|||
|
||||
memset(tempdatabuff,0,128);
|
||||
sprintf(tempdatabuff,"{\"clientId\":\"%s\",\"version\":\"%s\"}",CLIENTID,ota_info.os.version);
|
||||
KPrintf("------current version is:%s------\r\n",ota_info.os.version);
|
||||
|
||||
MQTT_PublishDataQs1("xiuosiot/ota/version",tempdatabuff,strlen(tempdatabuff)); //发送等级QS=1的PUBLISH报文
|
||||
}
|
||||
|
@ -794,7 +795,7 @@ static void app_ota_by_platform(void* parameter)
|
|||
uint32_t heart_time = 0;
|
||||
uint32_t flashdestination = DOWN_FLAH_ADDRESS;
|
||||
uint8_t topicdatabuff[2][64];
|
||||
char *ptr;
|
||||
char *ptr1, *ptr2;
|
||||
|
||||
mcuboot.flash_init();
|
||||
memset(&ota_info, 0, sizeof(ota_info_t));
|
||||
|
@ -829,14 +830,15 @@ reconnect:
|
|||
{
|
||||
freecnt = 0;
|
||||
MQTT_DealPublishData(MqttRxbuf, datalen);
|
||||
ptr = strstr((char *)Platform_mqtt.cmdbuff,topicdatabuff[0]);
|
||||
if(ptr != NULL)
|
||||
ptr1 = strstr((char *)Platform_mqtt.cmdbuff,topicdatabuff[0]);
|
||||
ptr2 = strstr((char *)Platform_mqtt.cmdbuff,"{\"fileSize\":");
|
||||
if((ptr1 != NULL) &&(ptr2 != NULL))
|
||||
{
|
||||
if(sscanf(ptr+strlen(topicdatabuff[0])+1,"{\"fileSize\":%d,\"version\":\"%11s\",\"fileId\":%d,\"md5\":\"%*32s\"}",&platform_ota.size,platform_ota.version,&platform_ota.streamId)==3)
|
||||
if(sscanf(ptr2,"{\"fileSize\":%d,\"version\":\"%11s\",\"fileId\":%d,\"md5\"",&platform_ota.size,platform_ota.version,&platform_ota.streamId)==3)
|
||||
{
|
||||
KPrintf("ota file size:%d\r\n",platform_ota.size);
|
||||
KPrintf("ota file id:%d\r\n",platform_ota.streamId);
|
||||
KPrintf("ota file version:%s\r\n",platform_ota.version);
|
||||
KPrintf("------Start the firmware file transfer!------\r\n");
|
||||
KPrintf("file size:%d,file id:%d,file version:%s\r\n",platform_ota.size,platform_ota.streamId,platform_ota.version);
|
||||
KPrintf("---------------------------------------------\r\n");
|
||||
if(mcuboot.op_flash_erase(DOWN_FLAH_ADDRESS,platform_ota.size) != kStatus_Success)
|
||||
{
|
||||
KPrintf("Failed to erase target fash!\n");
|
||||
|
@ -877,7 +879,7 @@ reconnect:
|
|||
else
|
||||
{
|
||||
KPrintf("current frame[%d] is written to flash 0x%x address successful.\n", platform_ota.num -1, flashdestination);
|
||||
KPrintf("Current progress is %d/%d\r\n",platform_ota.num,platform_ota.counter);
|
||||
KPrintf("current progress is %d/%d.\r\n",platform_ota.num,platform_ota.counter);
|
||||
flashdestination += platform_ota.downlen;
|
||||
platform_ota.num++;
|
||||
}
|
||||
|
@ -946,11 +948,11 @@ reconnect:
|
|||
strncpy(ota_info.error_message, "No error message!",sizeof(ota_info.error_message));
|
||||
|
||||
UpdateOTAFlag(&ota_info);
|
||||
KPrintf("ota file transfer complete,start reboot!\n");
|
||||
KPrintf("firmware file transfer successful,start reboot!\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
KPrintf("ota file transfer failed,start reboot!\n");
|
||||
KPrintf("firmware file transfer failed,start reboot!\n");
|
||||
}
|
||||
MQTT_UnSubscribeTopic(topicdatabuff[0]);
|
||||
MQTT_UnSubscribeTopic(topicdatabuff[1]);
|
||||
|
@ -982,6 +984,7 @@ static void PropertyVersion(void)
|
|||
|
||||
memset(tempdatabuff,0,128);
|
||||
sprintf(tempdatabuff,"{\"id\": \"1\",\"params\": {\"version\": \"%s\"}}",ota_info.os.version);
|
||||
KPrintf("------current version is:%s------\r\n",ota_info.os.version);
|
||||
|
||||
MQTT_PublishDataQs1(topicdatabuff,tempdatabuff,strlen(tempdatabuff)); //发送等级QS=1的PUBLISH报文
|
||||
}
|
||||
|
@ -1061,9 +1064,9 @@ reconnect:
|
|||
{
|
||||
if(sscanf(ptr,"{\"code\":\"1000\",\"data\":{\"size\":%d,\"streamId\":%d,\"sign\":\"%*32s\",\"dProtocol\":\"mqtt\",\"version\":\"%11s\"",&platform_ota.size,&platform_ota.streamId,platform_ota.version)==3)
|
||||
{
|
||||
KPrintf("ota file size:%d\r\n",platform_ota.size);
|
||||
KPrintf("ota file id:%d\r\n",platform_ota.streamId);
|
||||
KPrintf("ota file version:%s\r\n",platform_ota.version);
|
||||
KPrintf("------Start the firmware file transfer!------\r\n");
|
||||
KPrintf("file size:%d,file id:%d,file version:%s\r\n",platform_ota.size,platform_ota.streamId,platform_ota.version);
|
||||
KPrintf("---------------------------------------------\r\n");
|
||||
if(mcuboot.op_flash_erase(DOWN_FLAH_ADDRESS,platform_ota.size) != kStatus_Success)
|
||||
{
|
||||
KPrintf("Failed to erase target fash!\n");
|
||||
|
@ -1104,7 +1107,7 @@ reconnect:
|
|||
else
|
||||
{
|
||||
KPrintf("current frame[%d] is written to flash 0x%x address successful.\n", platform_ota.num -1, flashdestination);
|
||||
KPrintf("Current progress is %d/%d\r\n",platform_ota.num,platform_ota.counter);
|
||||
KPrintf("current progress is %d/%d.\r\n",platform_ota.num,platform_ota.counter);
|
||||
flashdestination += platform_ota.downlen;
|
||||
platform_ota.num++;
|
||||
}
|
||||
|
@ -1173,11 +1176,11 @@ reconnect:
|
|||
strncpy(ota_info.error_message, "No error message!",sizeof(ota_info.error_message));
|
||||
|
||||
UpdateOTAFlag(&ota_info);
|
||||
KPrintf("ota file transfer complete,start reboot!\n");
|
||||
KPrintf("firmware file transfer successful,start reboot!\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
KPrintf("ota file transfer failed,start reboot!\n");
|
||||
KPrintf("firmware file transfer failed,start reboot!\n");
|
||||
}
|
||||
MQTT_UnSubscribeTopic(topicdatabuff);
|
||||
MQTT_Disconnect();
|
||||
|
|
Loading…
Reference in New Issue