2 ms·
5mbps is about the best case (all 3 nodes on the same table). In more realistic deployment, it'll be much less. So, why so slow? TL;DR: Too little RAM on ESP8
by kees99 9y ago
5mbps is about the best case (all 3 nodes on the same table). In more realistic deployment, it'll be much less.
So, why so slow?
TL;DR: Too little RAM on ESP8266.
WiFi is half-duplex, i.e. in basic scenario (no MIMO; all stations close enough that each can hear at least some other), only one node can transmit at a time. [CSMA/CA] protocol is used to enforce this limitation. This protocol is susceptible to [Hidden node problem], which absolutely will be present for wifi repeater. Meaning that data in a single burst is transmitted fast, but any switch-over of who's transmitting is going to be really slow, with collisions, pauses, etc. In turn, that means that to achieve any decent throughput, WiFi repeater should buffer as much data as possible to minimize number of transmitter switch-overs. And that requites RAM - say to buffer half-second data burst at 54Mbps you'll need 3.5MB of RAM. Alas, ESP8266 only has 96KB of data RAM, out of which just 32KB is used as packet buffer with standard SDK.
[CSMA/CA] https://en.wikipedia.org/wiki/CSMA/CA https://en.wikipedia.org/wiki/CSMA/CA
[Hidden node problem] https://en.wikipedia.org/wiki/Hidden_node_problem https://en.wikipedia.org/wiki/Hidden_node_problem