One problem is that WiFi is completely opaque, especially but not only on Linux. You get no low-level and no debugging information. It just connects and you get some bars, or it doesn't. I never know where to start when debugging a bad connection, and I wouldn't know where to start if I wanted to improve Linux WiFi.
For example, sometimes I can see a network, but can't connect. Why? I'd like to see something like "sent 100 low level packets, checksum failed on 88 of them, disconnecting".
Or I'd like some way to see whether receiving or sending is the problem - do I get garbled packets, or do I get good ones, but no answers to the ones I send.
Sometimes I know a connection is WPA2, but it stubbornly tries another encryption method. Why? Does the AP suggest it, or is it my configuration? Sometimes I can't enter a text password, it only accepts a fixed-length hexadecimal string (happens on Windows a lot). Again why? There is no good central low-level log file or debug tool that lets me see what is going on.
For example, sometimes I can see a network, but can't connect. Why? I'd like to see something like "sent 100 low level packets, checksum failed on 88 of them, disconnecting".
Or I'd like some way to see whether receiving or sending is the problem - do I get garbled packets, or do I get good ones, but no answers to the ones I send.
Sometimes I know a connection is WPA2, but it stubbornly tries another encryption method. Why? Does the AP suggest it, or is it my configuration? Sometimes I can't enter a text password, it only accepts a fixed-length hexadecimal string (happens on Windows a lot). Again why? There is no good central low-level log file or debug tool that lets me see what is going on.