Using an ESP8266 I can get the RSSI of the Wifi network using
Wifi.RSSI(). But is there a way to know the actual connection speed in Mbps, after joining successfully a WiFi network?
Wifi modules decide on link speed based on signal strength. So you can estimate the link speed with signal strength, which you can get with
The datasheet of ESP8266 contains a table mapping RSSI to link speed under "Sensitivity":
- -98 dBm: 1 Mbps
- -93 dBm: 6 Mbps
- -91 dBm: 11 Mbps
- -75 dBm: 54Mbps
- -71 dBm: 65Mbps, 72.2Mbps
Whenever these values are "minimum", "maximum" or "typical" remains unclear. These dBm limits are also quite low, which means the link speed will probably be capped by the other communication peer (your router). Here's the same table for a random D-link router, DI-624.