找回密码
 立即注册

微信扫码登录

查看: 207|回复: 3

[BLE Mesh] 定时器间隔设置低于200ms,定时发送数据则显示错误TX_ERRNO_TX_FIFO_FULL

[复制链接]

11

主题

9

回帖

141

积分

荣耀黄金

积分
141
发表于 2025-1-9 09:30:17 | 显示全部楼层 |阅读模式
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLSR8258
SDK及版本: tc_ble_mesh-V4.1.0.1

如题,设置一个软件定时器,定时间隔如果低于200左右,比如150ms,定时时间到则发送消息mesh_tx_cmd2normal_primary(G_ONOFF_SET_NOACK, (u8[]){onoff}, 1, unicast_adr, 1),当发送到第26、30、33、36、39、42次时,出现错误,没有成功发送。
log错误显示[ERR]:tx upper layer failed: 6(see tx_errno_e),对应enum tx_errno_e{...}为TX_ERRNO_TX_FIFO_FULL。



Mesh 手册中写道“sdk默认10ms调⽤⼀次⼴播包发送函数”,为何设置远大于10ms还会发送错误?请指教,谢谢。

5

主题

121

回帖

461

积分

版主

积分
461
发表于 2025-1-9 14:02:03 | 显示全部楼层
默认命令的发送,会有6次重传,每次重传会花费30-40ms, 也就是发完一个命令需要180-240ms左右。你设置的是150ms, 所以出现你这个问题是符合预期的。如果你想设置150ms,可以考虑把重传次数减小

11

主题

9

回帖

141

积分

荣耀黄金

积分
141
 楼主| 发表于 2025-1-9 20:29:49 | 显示全部楼层
TL_HSF 发表于 2025-1-9 14:02
默认命令的发送,会有6次重传,每次重传会花费30-40ms, 也就是发完一个命令需要180-240ms左右。你设置的是1 ...

感谢,此外,能否告知这个6次重传是标准协议规定还是Telink的经验值?

5

主题

121

回帖

461

积分

版主

积分
461
发表于 2025-1-10 11:33:57 | 显示全部楼层
经验值
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-1-19 21:29 , Processed in 0.081405 second(s), 20 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表