Open FPOOOOOOO opened 2 years ago
HI, I did at some point manage to have 13-16 Mbps througput on root, but takes some fiddling around. Your 8M is a good start. Some non-exhaustive list of notes you can try:
Serial flasher config -> Flash SPI Mode -> QIO (def DIO)
and Serial flasher config -> Flash SPI speed -> 80 MHz (def 40 MHz)
. This one made a huge difference in my app.Component config -> ESP32-secific -> CPU Frequency -> 240MHz
and Component config -> Free RTOS -> uncheck: "run only on first core"
Environment
Problem Description
我目前的需求是在没有路由器的情况下,固定根节点,然后有16个节点通过mesh连接到根节点,每个节点往根节点有1Mbit的吞吐量,也就是根节点需要有16Mbit的吞吐量。我融合了
esp-mdf/examples/function_demo/mwifi/console_test
和esp-mdf/examples/function_demo/mwifi/no_router
,经过测试根节点当server还是client,都只有8M左右的吞吐量。mesh的底层也是wifi发送,但是在esp-idf/examples/wifi/iperf
中,wifi的速度能够到30M,请问一下这是为什么?有什么办法提高吞吐量到16M?Now what I want to do is fixing root node without a router, let 16 other non-root node connected to the root node via mesh network. Every non-root node could have a throughput at 1Mbit/s, that is to say the root node could have throughput at 16Mbit/s. I combine two example together to get non-router mesh throughput test——
esp-mdf/examples/function_demo/mwifi/console_test
ANDesp-mdf/examples/function_demo/mwifi/no_router
. But whether the root node is server or client, it only has 8M throughput. As I have known, mesh's bottom layer code is wifi, in theesp-idf/examples/wifi/iperf
example ,wifi's throughput could up to 30M, I want to know why mesh's throughput is such low? Is there any method to do to improve the throughput up to 16M?Debug Logs
Other items if possible
我注意到mesh 非根节点的上行速率是限制的,从测试结果来看目前上行速率是能达到1Mbit/s的。如果我要测试根节点下行速率能否达到16M,我得知道非根节点接受速率能否达到16M?不然我没法知道是根节点发不出16M,还是非根节点收不到16M。请问一下有没有好办法知道根节点下行速率能否达到16M?
I notice that mesh non-root node up-stream throughput has a flow control. As the result is above, the non-root up-stream throughput could be 1M. So the problem comes to test whether the root node down-stream throughput could be 16M, to do that I have to know whether the non-root node receive throughput could be 16M? If not, I am not sure it's the root node Tx throughput is not sufficient or the non-root node Rx throughput not sufficient? Please, if you have any idea to test the root node down-stream throughput to be 16M or not, inform me.
@EspHuifeng @zhanzhaocheng