ESP8266 Developer Zone The Official ESP8266 Forum 2015-09-03T16:02:53+08:00 https://bbs.espressif.com:443/feed.php?f=7&t=999 2015-09-03T16:02:53+08:00 2015-09-03T16:02:53+08:00 https://bbs.espressif.com:443/viewtopic.php?t=999&p=3542#p3542 <![CDATA[Re: 基于SDK 1.3.0 FOTA升级失败,求分析原因]]> 问题已经找到,原来是在网站上传的文件名错误!太粗心了...

Statistics: Posted by icomet — Thu Sep 03, 2015 4:02 pm


]]>
2015-08-25T14:31:23+08:00 2015-08-25T14:31:23+08:00 https://bbs.espressif.com:443/viewtopic.php?t=999&p=3421#p3421 <![CDATA[Re: 基于SDK 1.3.0 FOTA升级失败,求分析原因]]>
1. “&&”应该是“&”,非常感谢您的反馈,我们已经更新了 IoT_Demo

2. token 是用户想控制 ESP8266 设备时给出的一个随机字串,您可以参考 \esp_iot_sdk_v1.3.0\document 路径下的文档“2B-ESP8266__SDK__IOT_Demo” 中的说明。

简单的升级示例,可以参考这个帖子 http://bbs.espressif.com/viewtopic.php?f=7&t=865#p2950

感谢您对 ESP8266 的关注!

Statistics: Posted by ESP_Faye — Tue Aug 25, 2015 2:31 pm


]]>
2015-08-24T14:34:29+08:00 2015-08-24T14:34:29+08:00 https://bbs.espressif.com:443/viewtopic.php?t=999&p=3391#p3391 <![CDATA[基于SDK 1.3.0 FOTA升级失败,求分析原因]]> 2. 在SDK 1.3中 IoT demo做了修改:
#define device_type 54403
具体代码见附件 app.7z;
3. 编译后,经过调试,设备成功激活;ping正常;此过程中遇到的问题见后文;
4. 在https://iot.espressif.cn/#/上传bin,创建新版本;点升级版本;
5. ESP8266的打印信息如下:

Code:

user_esp_platform_recv_cb: {"nonce": 779601965, "get": {"action": "sys_upgrade", "version": "b1.0.8t54403(a)"}, "meta": {"Authorization": "token 9d8ea99150486f5f97db650960b349d21f2c0e9d"}, "path": "/v1/device/rpc/", "method": "GET", "deliver_to_device": true}

{"status": 200, "nonce": 779601965, "deliver_to_device": true}

GET /v1/device/rom/?action=download_rom&version=b1.0.8t54403(a)&filename=user2.bin HTTP/1.0
Host: 115.29.202.58:80
Connection: keep-alive
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Accept: */*
Authorization: token de245dadba58f047310949e235aae55b929f1bfa
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8


system_upgrade_start
upgrade_connect
upgrade_connect_cb
GET /v1/device/rom/?action=download_rom&version=b1.0.8t54403(a)&filename=user2.bin HTTP/1.0
Host: 115.29.202.58:80
Connection: keep-alive
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Accept: */*
Authorization: token de245dadba58f047310949e235aae55b929f1bfa
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8

user_esp_platform_sent_cb
totallen = 266
user_esp_platform_sent_beacon 126562324
user_esp_platform_sent_cb
user_esp_platform_recv_cb: {"status": 200, "epoch": 1440344766, "message": "ping success", "identified": true, "datetime": "2015-08-23 23:46:06"}

ping success
user_esp_platform_sent_beacon 176624565
user_esp_platform_sent_cb
user_esp_platform_recv_cb: {"status": 200, "epoch": 1440344816, "message": "ping success", "identified": true, "datetime": "2015-08-23 23:46:56"}

ping success
upgrade_check
user_esp_platform_upgrade_failed
{"path": "/v1/messages/", "method": "POST", "meta": {"Authorization": "token de245dadba58f047310949e235aae55b929f1bfa"},"get":{"action":"device_upgrade_failed"},"body":{"pre_rom_version":"v1.0.7t54403(a)","rom_version":"b1.0.8t54403(a)"}}

user_esp_platform_sent_cb
user_esp_platform_recv_cb: {"status": 200, "message": "send message success", "result": "success"}


升级失败;
问题: “upgrade_check” 这个打印说明什么?已经下载完了bin吗?
6. 服务器端message见下图
[img]
Untitled.jpg
[/img]
请帮忙分析下原因;谢谢!

调试中遇到的问题:
1. active_nonce = os_random() && 0x7FFFFFFF; “&&”应该是“&”吧? “&&”导致nonce总是1,在激活过程中循环,不停打印;
2. user_esp_platform_sent()函数中,os_memcpy(token, esp_param.token, 40); 这句改为 os_memcpy(token, esp_param.devkey, 40) 后才能正确激活;否则服务器返回400错误;why?
app.7z

Untitled.jpg

Statistics: Posted by icomet — Mon Aug 24, 2015 2:34 pm


]]>