【已解决】请教一下:关于esp-now中 forward_ttl 的作用?

jr-test
Posts: 100
Joined: Mon Aug 23, 2021 3:04 am

【已解决】请教一下:关于esp-now中 forward_ttl 的作用?

Postby jr-test » Thu May 04, 2023 6:43 am

在esp-now的组件中,结构体espnow_frame_head_t有一个配置广播的forward_ttl的参数,数据传输中的跳跃数。
该如何理解和体现它的作用呢?
Last edited by jr-test on Wed May 24, 2023 8:01 am, edited 1 time in total.

ESP_LiuH
Posts: 42
Joined: Fri Feb 10, 2023 7:20 am

Re: 请教一下:关于esp-now中 forward_ttl 的作用?

Postby ESP_LiuH » Wed May 10, 2023 7:00 am

当设备收到目的地址与自身 MAC 地址不匹配时,会根据该值进行判断是否转发数据,实现扩展 esp-now 数据传输范围的目的。

jr-test
Posts: 100
Joined: Mon Aug 23, 2021 3:04 am

Re: 请教一下:关于esp-now中 forward_ttl 的作用?

Postby jr-test » Thu May 18, 2023 8:08 am

好的,感谢您的回复。
我还想问一下使用这个消息多跳功能还需设置哪个参数吗?
我测试下来发现消息并没有进行多跳,从而扩大传输的距离。不知道是哪里没设置好。

ESP_LiuH
Posts: 42
Joined: Fri Feb 10, 2023 7:20 am

Re: 请教一下:关于esp-now中 forward_ttl 的作用?

Postby ESP_LiuH » Wed May 24, 2023 4:06 am


jr-test
Posts: 100
Joined: Mon Aug 23, 2021 3:04 am

Re: 请教一下:关于esp-now中 forward_ttl 的作用?

Postby jr-test » Wed May 24, 2023 7:57 am

ESP_LiuH wrote:
Wed May 24, 2023 4:06 am
可以检查下是否按照如下
https://github.com/espressif/esp-now/bl ... trl.c#L341
https://github.com/espressif/esp-now/bl ... trl.c#L342 示例进行设置
再次感谢您的回复。
我这边好像已经测试到这个消息多跳的效果,测试两个设备通信,一直到超出两个设备的通信距离,然后再在两个设备之间增加一个设备,作为消息中继,然后之前的两个设备又能进行设备通信了。
一开始只设置了forward_ttl,没有设置forward_rssi。后面看源码,发现消息多跳的卡在https://github.com/espressif/esp-now/bl ... now.c#L347这里过不去,满足这里的条件应该就可以消息多跳了。

Who is online

Users browsing this forum: Bing [Bot] and 56 guests