Page 1 of 1

T5 设备已经授权好,之前用的 3.13.x 的 sdk,然后刷了最新 3.14.0sdk 的固件后,再次刷回之前 3.13.x 的固件,设备就起不来

Posted: 2026年 Sep 21日 11:10
by zhengmin4516

设备怎么抢救回来啊

u_bootloader enter
ty heap base: 28000A00 size: 65280
__read_manage_block: mag->blockid=55, id=0, mag->state=107.
__read_manage_block: mag->magic=0xE732A084, rescrc=0x0, mag->crc32=0x914B5E0C.
__read_manage_block: mag->blockid=48, id=1, mag->state=37.
__read_manage_block: mag->magic=0xE4EEC7FA, rescrc=0x0, mag->crc32=0x9AA4F3AA.
_judge_ota_info checkerr0:1, checkerr1:1
jump toxx:0x2010000
jump toxx:0x2010000

tuya l2 boot
block 7C9000 invalid, blockid=255, id=0, state=255, magic=0xFFFFFFFF, rescrc=0x0, crc32=0xFFFFFFFF
block 7CA000 invalid, blockid=255, id=1, state=255, magic=0xFFFFFFFF, rescrc=0x0, crc32=0xFFFFFFFF
manage info check: 0x3
block 6C9000 invalid, blockid=55, id=0, state=107, magic=0xE732A084, rescrc=0x0, crc32=0x914B5E0C
block 6CA000 invalid, blockid=48, id=1, state=37, magic=0xE4EEC7FA, rescrc=0x0, crc32=0x9AA4F3AA
manage info check1: 0x3
no action in boot
jump toxx:0x2020000
jump toxx:0x2020000
�sensor:W(3):uncali sdmadc value:[0 0]
flash txpwr table:0xf
xtal_cali:57
rosc:E(102):should not be here: bk_rosc_32k_get_tick_diff 301
rwnx_cal_set_rfconfig(0x101) phy on; rf off
-------- co-procresser startup, left heap: 32768, reset reason: 0
cust:W(109):custstart cp1
ret_code444444444=0
wakeup
netif_set_link_up 1006
netif_set_up 860
wakeup

$wdrv_tx_cmd_buffer_init, addr[0]=0x280137d0, pattern_addr=0x280137cc
wdrv_tx_cmd_buffer_init, addr[1]=0x28013af0, pattern_addr=0x28013aec
wdrv_tx_cmd_buffer_init, addr[2]=0x28013e10, pattern_addr=0x28013e0c
W(371):cif_handle_bk_cmd_get_mac_addr_req
W(371):base mac: 30:48:7d:91:35:9d
bluetoot:W(374):bk_bluetooth_init bluetooth already initialised
-------- app startup, left sram: 192888, psram: 9043968, reset reason: 0
parameter: 0xffffffff, 0xffffffff
go to tuya
[01-01 00:00:00 ty D][fdef][tuya_svc_lan.c:2465] lan disable
[01-01 00:00:00 ty D][fdd1][tal_thread.c:224] Thread:sys_timer Exec Start. Set to Running Stat 0x60fdd124
[01-01 00:00:00 ty I][fdef][tal_thread.c:200] thread_create name:sys_timer,stackDepth:6144,totalstackDepth:10240,priority:5
[01-01 00:00:00 ty D][fdb0][tal_thread.c:224] Thread:wq_system Exec Start. Set to Running Stat 0x60fdb02c
[01-01 00:00:00 ty I][fdef][tal_thread.c:200] thread_create name:wq_system,stackDepth:8192,totalstackDepth:18432,priority:3
[01-01 00:00:00 ty D][fd9b][tal_thread.c:224] Thread:wq_highpri Exec Start. Set to Running Stat 0x60fd9b34
[01-01 00:00:00 ty I][fdef][tal_thread.c:200] thread_create name:wq_highpri,stackDepth:5120,totalstackDepth:23552,priority:4
[01-01 00:00:00 ty D][fdef][tuya_tls.c:939] TLS version: mbed TLS 3.1.0
[01-01 00:00:00 ty D][fdef][tuya_svc_netmgr_linkage.c:72] link[9] is registered [0]
[01-01 00:00:00 ty D][fdef][tuya_svc_netmgr_linkage.c:72] link[2] is registered [1]
tkl_wifi_init
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:0
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:1
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:2
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:3
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:4
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:5
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:6
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:7
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:8
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:114] add new node,type:9
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:58] init watchdog, interval: 60
tkl_watchdog_init interval_ms(30000)!
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:161] update type:7,period:10
[01-01 00:00:00 ty D][fdef][tuya_devos_health.c:554] watch_dog_interval:60, monitor_detect_interval:600
[01-01 00:00:00 ty D][fd88][tal_thread.c:224] Thread:health_monitor Exec Start. Set to Running Stat 0x60fd8870
[01-01 00:00:00 ty I][fdef][tal_thread.c:200] thread_create name:health_monitor,stackDepth:3072,totalstackDepth:26624,priority:5
[01-01 00:00:00 ty I][fdef][mqc_app.c:544] mqc app init ...
[01-01 00:00:00 ty E][fdef][mqc_app.c:130] handler cnt is zero
[01-01 00:00:00 ty D][fdef][mqc_app.c:123] mq_pro:5 cnt:1
[01-01 00:00:00 ty D][fdef][mqc_app.c:123] mq_pro:31 cnt:2
[01-01 00:00:00 ty D][fdef][tuya_svc_online_log.c:291] svc online log init success
[01-01 00:00:00 ty E][fdef][log_seq.c:930] logseq empty
[01-01 00:00:00 ty D][fdef][tuya_ws_db.c:466] init fs. Path: null
[01-01 00:00:00 ty D][fdef][kv_storge.c:46] *****************kvs_init.
[01-01 00:00:00 ty D][fdef][simple_flash_protected.c:206] protected init. addr:0x007cd000
[01-01 00:00:00 ty E][fdef][simple_flash_protected.c:73] protected key data is not matched magic(0xd532976f),crc32(0x3deff7a4)
[01-01 00:00:00 ty N][fdef][simple_flash.c:969] sf protected init err, need backup
[01-01 00:00:00 ty N][fdef][simple_flash.c:447] key_addr: 0x7fd000 block_sz 4096
[01-01 00:00:00 ty N][fdef][simple_flash.c:533] get key:
[01-01 00:00:00 ty D][fdef][simple_flash_protected.c:216] protected verify begin
[01-01 00:00:00 ty E][fdef][simple_flash_protected.c:128] protected key data is not matched magic(0xd532976f),crc32(0x3deff7a4)
[01-01 00:00:00 ty D][fdef][simple_flash.c:877] begin try update kv version
[01-01 00:00:00 ty N][fdef][simple_flash.c:1635] block head check error, expect:magic=0x98761234, or magic=0x135726ab, max block_id=[0, 15], crc32=526333
[01-01 00:00:00 ty N][fdef][simple_flash.c:1638] block head check error, real:magic=0xd5168368, block_id=34870, crc32=2070567359
[01-01 00:00:00 ty N][fdef][simple_flash.c:1116] block head check error, expect:magic=0x135726ab, max block_id=[0], 15], crc32=526333
[01-01 00:00:00 ty N][fdef][simple_flash.c:1118] block head check error, real:magic=0xd5168368, block_id=34870, crc32=2070567359
[01-01 00:00:00 ty N][fdef][simple_flash.c:1116] block head check error, expect:magic=0x135726ab, max block_id=[0], 15], crc32=509931
[01-01 00:00:00 ty N][fdef][simple_flash.c:1118] block head check error, real:magic=0x5db2c04d, block_id=17078, crc32=-1944065941
[01-01 00:00:00 ty N][fdef][simple_flash.c:1173] kv not valid, use protected to recover
[01-01 00:00:00 ty E][fdef][simple_flash_app.c:344] create_flash_hand_and_init err 6
[01-01 00:00:00 ty E][fdef][tuya_ws_db.c:469] db init fails -1
[01-01 00:00:00 ty E][fdef][tuya_iot_com_api.c:88] db init fails -1
[01-01 00:00:00 ty E][fdef][tuya_iot_com_api.c:146] ret:-1
[01-01 00:00:00 ty E][fdef][tuya_app_main.c:601] ret:-1
[01-01 00:00:00 ty N][fdef][tuya_app_main.c:616] sdk_info:< TuyaOS V:3.13.8 BS:40.00_PT:2.3_LAN:3.5_CAD:1.0.5_CD:1.0.0 >
< BUILD AT:2026_06_01_16_33_32 BY ci_manage FOR tuyaos-ai AT T5 >
IOT DEFS < WIFI_GW:1 DEBUG:1 KV_FILE:0 LITTLE_END:1 SL:1 OPERATING_SYSTEM:98 RELIABLE_TRANSFER:0 >

[01-01 00:00:00 ty N][fdef][tuya_app_main.c:617] name:tuyaos_ai_toy_demo:1.0.0
[01-01 00:00:00 ty N][fdef][tuya_app_main.c:618] firmware compiled at Sep 21 2026 11:07:17
bk_value:0 / 0 / 0, ty_value:0
[01-01 00:00:00 ty N][fdef][tuya_app_main.c:619] system reset reason:[0]
[01-01 00:00:00.064 ty D][0x60fdef34][tuya_app_main.c:624] device_init in
[01-01 00:00:00.064 ty D][0x60fdef34][mf_core.c:38] mf_core_init success
[01-01 00:00:00.065 ty D][0x60fd5c0c][tal_thread.c:216] enter Thread:mf_test func call
[01-01 00:00:00.066 ty I][0x60fdef34][tal_thread.c:200] thread_create name:mf_test,stackDepth:5120,totalstackDepth:31744,priority:4
[01-01 00:00:00.066 ty D][0x60fd5c0c][tal_thread.c:224] Thread:mf_test Exec Start. Set to Running Stat 0x60fd5c0c
[01-01 00:00:00.567 ty D][0x60fd5c0c][mf_test.c:218] mf thread delete
[01-01 00:00:00.567 ty D][0x60fd5c0c][tal_thread.c:265] Del Thrd:mf_test
[01-01 00:00:00.568 ty N][0x60fdef34][tuya_app_main.c:477] mf_init successfully
[01-01 00:00:00.568 ty N][0x60fdef34][tuya_app_main.c:493] prodtest_ssid_scan ignored
[01-01 00:00:00.568 ty D][0x60fdef34][tal_sleep.c:22] cpu_set_lp_mode_cnt:0
-- cpu sleep set enable:1, mode:0
[01-01 00:00:00.569 ty D][0x60fdef34][tal_sleep.c:29] set cpu lp mode:1
-- cpu sleep set enable:0, mode:0
[01-01 00:00:00.570 ty D][0x60fdef34][tal_sleep.c:96] <tal_cpu_lp> disable_cnt:1
[01-01 00:00:00.570 ty D][0x60fdef34][tal_sleep.c:96] <tal_cpu_lp> disable_cnt:2
-- wifi lp set enable: 0, dtim:0
wifi:E(1030):set listen_int 0,the recommended value is 1,3,10
[01-01 00:00:00.572 ty D][0x60fdef34][tal_wifi.c:962] <tal_wifi_lp_dis> disable_cnt:1
[01-01 00:00:00.572 ty N][0x60fdef34][tuya_iot_wifi_api.c:384] wifi soc init. pid:dvm23xmqneaeptpz firmwarekey:NULL ver:1.0.0
[01-01 00:00:00.573 ty N][0x60fdef34][tuya_iot_wifi_api.c:253] sw ver: 1.0.0
[01-01 00:00:00.573 ty D][0x60fdef34][tuya_wifi_link.c:1007] tuya wifi link init mthd:0,wifi start mode:4, enable_station_ap:0
[01-01 00:00:00.573 ty E][0x60fdef34][ws_db_gw.c:84] wd_protected_read fails gw_wsm -1
[01-01 00:00:00.574 ty D][0x60fdef34][ws_db_gw.c:257] gw_wsm read ret:-1
[01-01 00:00:00.574 ty E][0x60fdef34][tuya_wifi_link.c:104] wd_gw_wsm_read error:-1
[01-01 00:00:00.574 ty D][0x60fdef34][tuya_wifi_reset.c:682] nc_tp:10, wifi_start_mode:4
[01-01 00:00:00.574 ty N][0x60fdef34][tuya_wifi_link.c:51] reset wifi link params to factory state, nc_tp:10 md:0 mthd:0 start mode:4
[01-01 00:00:00.575 ty D][0x60fdef34][simple_flash_protected.c:397] protected write [gw_wsm][141]
[01-01 00:00:00.575 ty N][0x60fdef34][simple_flash_protected.c:29] protected data not enabled
[01-01 00:00:00.576 ty E][0x60fdef34][ws_db_gw.c:70] wd_protected_write fails gw_wsm -1
[01-01 00:00:00.576 ty D][0x60fdef34][ws_db_gw.c:257] gw_wsm write ret:-1
[01-01 00:00:00.576 ty E][0x60fdef34][tuya_wifi_link.c:1016] ret:-2819
[01-01 00:00:00.576 ty D][0x60fdef34][tuya_bt_link.c:287] bt init...
[01-01 00:00:00.577 ty D][0x60fd5c0c][tal_thread.c:240] Thread:mf_test Exec Finish. Set to Del Stat
[01-01 00:00:00.577 ty D][0x60fd5c0c][tal_thread.c:95] del list not empty...deleting 0x60fd70b8, next 0x60fdfff0
[01-01 00:00:00.577 ty D][0x60fd5c0c][tal_thread.c:103] Final Free Thread:mf_test, is_self:1
[01-01 00:00:00.577 ty D][0x60fd5c0c][tal_thread.c:107] delay to delete thread self
[01-01 00:00:00.578 ty D][0x60fdef34][tuya_ble_svc.c:2512] get_wifi_list eanbled
[01-01 00:00:00.578 ty D][0x60fd5c0c][tal_thread.c:119] finally delete thread self
[01-01 00:00:00.578 ty D][0x60fd5c0c][tal_thread.c:73] real delete thread:0x60fd5c0c
[01-01 00:00:00.579 ty D][0x60fdef34][tuya_ble_svc.c:2518] get_netcfg_stat eanbled
[01-01 00:00:00.579 ty D][0x60fdef34][tuya_ble_svc.c:2522] get_dev_log eanbled
[01-01 00:00:00.579 ty D][0x60fdef34][tuya_ble_svc.c:2528] get_ap_name eanbled
[01-01 00:00:00.580 ty D][0x60fdef34][tuya_ble_svc.c:2534] get_multi_net eanbled
[01-01 00:00:00.580 ty D][0x60fdef34][tuya_svc_netmgr_linkage.c:72] link[3] is registered [2]
[01-01 00:00:00.580 ty E][0x60fdef34][ws_db_gw.c:84] wd_protected_read fails gw_wsm -1
[01-01 00:00:00.581 ty D][0x60fdef34][ws_db_gw.c:257] gw_wsm read ret:-1
[01-01 00:00:00.581 ty E][0x60fdef34][tuya_iot_wifi_api.c:316] ret:-1
[01-01 00:00:00.581 ty E][0x60fdef34][tuya_app_main.c:526] ret:-1
[01-01 00:00:00.582 ty E][0x60fdef34][tuya_app_main.c:625] ret:-1
[01-01 00:00:00.582 ty D][0x60fdef34][tal_thread.c:265] Del Thrd:tuya_app_main
[01-01 00:00:00.592 ty D][0x60fdef34][tal_thread.c:240] Thread:tuya_app_main Exec Finish. Set to Del Stat
[01-01 00:00:00.592 ty D][0x60fdef34][tal_thread.c:95] del list not empty...deleting 0x60fdffe0, next 0x60fdfff0
[01-01 00:00:00.592 ty D][0x60fdef34][tal_thread.c:103] Final Free Thread:tuya_app_main, is_self:1
[01-01 00:00:00.592 ty D][0x60fdef34][tal_thread.c:107] delay to delete thread self
[01-01 00:00:00.593 ty D][0x60fdef34][tal_thread.c:119] finally delete thread self
[01-01 00:00:00.593 ty D][0x60fdef34][tal_thread.c:73] real delete thread:0x60fdef34
[01-01 00:00:05.017 ty D][0x60fd8870][tuya_devos_health.c:71] feed watchdog
[01-01 00:00:15.017 ty D][0x60fd8870][tuya_devos_health.c:71] feed watchdog
[01-01 00:00:25.017 ty D][0x60fd8870][tuya_devos_health.c:71] feed watchdog
[01-01 00:00:35.017 ty D][0x60fd8870][tuya_devos_health.c:71] feed watchdog
[01-01 00:00:45.017 ty D][0x60fd8870][tuya_devos_health.c:71] feed watchdog


Re: T5 设备已经授权好,之前用的 3.13.x 的 sdk,然后刷了最新 3.14.0sdk 的固件后,再次刷回之前 3.13.x 的固件,设备就起不来

Posted: 2026年 Sep 21日 11:15
by fangweng

结论:这是 KV 安全格式升级到 v3 导致的「不可降级」—— 3.14.0 固件首次启动时会把 KV 分区数据迁移成 v3 格式,再刷回 3.13.x 后老代码读不了新格式,设备就起不来了。官方明确:升级到 v3 之后的版本不支持降级。

日志也印证了这点:bootloader 段是正常的(no action in boot 后正常跳到 0x2020000),app 也正常起来了(go to tuya、各线程创建都在),最后停在 tuya_devos_health add new nod 之后没下文 —— 大概率就是挂在初始化过程中读 KV 数据的阶段,复位后循环。

抢救方法(二选一):

  • 最快:直接刷回 3.14.0 固件。 v3 格式它认识,设备立刻能起,授权和配置都还在,什么都不用补。
  • 必须留在 3.13.x:用烧录工具把 flash 整片擦除后再烧 3.13.x。 T5 即 BK7258,用 BKFIL / bk_loader 的擦除功能把 flash 擦干净(至少要擦掉 KV 分区)。注意:授权三元组(UUID/AuthKey)烧在 flash、由 SDK 经 KV 读取,擦除后设备变回未授权状态,需要重新走授权烧录 + 配网流程。

各产品线 KV 升到 v3 的起始版本(这些版本起都不支持往下降):

产品线v3 起始版本
3.14 AI3.14.0
3.11 IoT3.11.35-beta.100
3.3 GW3.3.4-beta.271
3.6 IPC3.6.2-beta.47
3.9 IPC3.9.1-beta.68

给同批次其他设备的建议:升 3.14.0 之前先确认后续不需要回退老版本,否则先备好可重新授权的产线环境再动。

出处:放翁 2026-08-20 群里记录的版本公告(kv 安全升级 v3、不支持降级);kb/config/20260529-linux-sdk-uuid-authkey-authorization.md(授权数据烧在 Flash 分区、经 KV 读取)。


以上内容由 AI 自动分析生成,如有疑问请回复补充。