ota update failed

luyifan
Posts: 6
Joined: Wed Aug 26, 2015 12:00 pm

ota update failed

Postby luyifan » Wed Aug 26, 2015 1:53 pm

I have issue about ota update. The sdk version is 1.2.0. I used a ubuntu os computer as the router. Another is windows8 computer as the server by miniwebserver. However, fireware updating is always failed.
My code is following:

Code: Select all

LOCAL void ICACHE_FLASH_ATTR
user_esp_platform_upgrade_rsp(void *arg)
{
   struct upgrade_server_info *server = arg;
   if (server->upgrade_flag == true) {
      ESP_DBG("user_esp_platform_upgrade_successful\n");
   } else {
      ESP_DBG("user_esp_platform_upgrade_failed\n");
   }

   os_free(server->url);
   server->url = NULL;
   os_free(server);
   server = NULL;
}

LOCAL void ICACHE_FLASH_ATTR
user_esp_platform_upgrade_begin(struct espconn *pespconn)
{
   struct upgrade_server_info *server = (struct upgrade_server_info *)os_zalloc(sizeof(struct upgrade_server_info));;
   server = (struct upgrade_server_info *)os_zalloc(sizeof(struct upgrade_server_info));
   uint8_t user_bin[15] = {0};
   server->pespconn = pespconn;
   server->port = client_esp_conn->proto.tcp->remote_port;
   server->check_cb = user_esp_platform_upgrade_rsp;
   server->check_times = 120000;
   tcp_server_ip.addr = ipaddr_addr("192.168.150.10");
   os_memcpy(server->ip, &tcp_server_ip.addr, 4);
   if (server->url == NULL) {
      server->url = (uint8 *)os_zalloc(512);
   }
#if 1
   if (system_upgrade_userbin_check() == UPGRADE_FW_BIN1) {
      os_memcpy(user_bin, "0x40000.bin", 12);
   } else if (system_upgrade_userbin_check() == UPGRADE_FW_BIN2) {
      os_memcpy(user_bin, "0x00000.bin", 12);
   }
   os_sprintf(server->url, "GET /%s HTTP/1.0\r\nHost: "IPSTR":%d\r\n"pheadbuffer"", user_bin, IP2STR(server->ip), 80);
#else
   os_sprintf(server->url, "GET /%s HTTP/1.0\r\nHost: "IPSTR":%d\r\n"pheadbuffer"", "fireware/0x00000.bin", IP2STR(server->ip), 80);
#endif
//   os_printf("%s", server->url);
   if (system_upgrade_start(server) == false) {
      ESP_DBG("upgrade is already started\n");
   }else
      os_printf("Updateing...\n");
}

And the result is following:

Code: Select all

system_upgrade_start
upgrade_connect
Updateing...
upgrade_connect_cb
GET /0x40000.bin HTTP/1.0
Host: 192.168.150.10:80
Connection: keep-alive
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gec    ko) Chrome/30.0.1599.101 Safari/537.36
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8

sumlength = 175336

Has anyone have the similar promble?

Who is online

Users browsing this forum: No registered users and 47 guests