Search found 6 matches

by hamiee
2024年 Jun 13日 17:10
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

Re: WBR3模块调用uf_file接口出错

那你们 逻辑是:预约了一个喂食,到时间的时候会去读这个文件?读出错就重复读直到try-times?超过try-times如何处理? 如果这样做:配置内容保存在配置文件,同时ram里缓存一份,上电启动设备运行起来的时候,把配置文件读到ram里。正常的时候使用ram里的数据。如果预约有更新的时候就去更新文件,同时刷新ram缓存。如果读出错超过try-times,对设备做一个重启恢复。这样可以减少flash的读写次数,遇到问题也可以恢复。 flash读错的问题,可能是读的时候电压变化(比如电机运行导致系统供电负担较大,电压降低等)、flash自身品质(硬件也都是有良率的)等情况导致 ,软件无法完全...
by hamiee
2024年 Jun 13日 15:43
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

Re: WBR3模块调用uf_file接口出错

愚者千虑必有一得 2024年 Jun 13日 11:16

你们这个文件读写的频率是什么样的?

这个读写频率是根据用户设置的预约决定的,每个预约执行一次,一般一天执行5次左右

by hamiee
2024年 Jun 13日 15:41
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

Re: WBR3模块调用uf_file接口出错

你好,能提供一份完整的错误log吗?我们看看有没啥特殊的场景。 另外我们flash存储有两套,一套kv,一套uf,我们kv遇到这样的问题的时候,会做一次软件重启来恢复。目前看,uf没有这样的恢复操作。 打印等级之前设为err了,打印的有点少。rtc预约时间到时,会执行以下代码: uFILE* tuya_fid = NULL; static uint8_t try_times=0; LOG_ERROR(".......alarm active %d",try_times); ++try_times; LOG_ERROR("UF %d %p",ufexis...
by hamiee
2024年 Jun 12日 16:55
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

Re: WBR3模块调用uf_file接口出错

你好,从你的问题现象来看,是从flash里读取数据,在解析数据的时候,发现数据的crc或者是magic段不正确,导致返回了4, UF_BLOCK_UNVALID错误。 但是后面你重启又恢复了,数据并没有损坏,可能是在读取的时候由于某些未知原因:如电压不稳之类的,导致flash里数据读错了。 另外,你的sdk比较老了,已经eol了,建议更新到新的版本。比如tuyaos 3.8.5版本之后,修复了不少历史问题,稳定性会更好一些。 你好,非常感谢解答。因为产品已经出货,更换sdk需要进行详尽测试比较费时,现在有客户投诉,需要短时间内解决问题。现在读取失败后,会一直失败,必须重启才能恢复正常一小段时...
by hamiee
2024年 Jun 12日 16:54
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

Re: WBR3模块调用uf_file接口出错

你好,非常感谢解答。因为产品已经出货,更换sdk需要进行详尽测试比较费时,现在有客户投诉,需要短时间内解决问题。现在读取失败后,会一直失败,必须重启才能恢复正常一小段时间,请问旧的sdk有没有办法在软件上规避这个问题?

by hamiee
2024年 Jun 12日 11:36
Forum: TuyaOS-联网单品开发
Topic: WBR3模块调用uf_file接口出错
Replies: 11
Views: 1205

WBR3模块调用uf_file接口出错

大家好,使用WBR3模块开发产品,程序刚开始运行时会创建一个uf文件,名为"/hy/cfg.bin";刚开始读写是正常的,过几个小时后调用 ufopen("/hy/cfg.bin", "r")会出现“[06-05 19:18:36 TUYA Err][uf_flash_file_app.c:266] uf_open /hy/cfg.bin err 4“指令的报错,且返回值为null,重启之后又正常了,而且数据没丢失,请问需要怎么修复这个问题? 使用的sdk版本: ty_iot_wf_bt_sdk_rtos_rtl8720cf_ameb...