10 ms·
The sad state of Linux Wi-Fi
- captainmuon 12y agoOne 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.
- zercool 12y agoYou're right. This is incredibly frusturating. Are there any good work arounds?
- switch007 12y agoI've never dug in to it before, but some googling just suggested /sys/kernel/debug/ieee80211/phy*/ e.g. # cat /sys/kernel/debug/ieee80211/phy*/netdev:*/stations/*/rc_stats rate throughput ewma prob this prob this succ/attempt success attempts 1 0.6 68.0 100.0 0( 0) 9 12 ...
- gnu8 12y agoLooks interesting, but which devices and drivers does it apply to? I have no expectation that this would work over every common wifi interface in current laptops (to say nothing of the typical home gateway with their embedded linux distribution and custom proprietary drivers).
- switch007 12y agoAny driver which supports debugfs. Proprietary drivers of course will always be problematic. Manufacturers could always agree on some kind of debugging protocol... I'm sure we'd up with only one "standard" ;-)
- phunge 12y agoI've wondered the same thing. Up until now I've avoided digging deep into my issues -- I've never found good docs, googling leads you to misleading forum posts and generally had bad signal-to-noise, and the WiFi stack is nested so deep that it requires a lot of knowledge. But I guess I assumed that the underlying stuff was generally correct and written by experts in the field. Maybe it's time a motivated layman like me dug in and started asking dumb questions.
- jdong 12y ago>Sometimes I can't enter a text password, it only accepts a fixed-length hexadecimal string (happens on Windows a lot). Again why? Um, maybe because WEP passphrases are fixed length hexadecimal strings?
- swinglock 12y agoI feel the same way on Windows, but I've never attempted to dig deeper.
- simpsond 12y agoWireshark is a good tool for inspecting 802.11 frames, but it's still a pain. If you do go down this path, I highly recommend adding a capture filter for your adapters MAC, so you don't get flooded with management frames. Filter string: wlan addr 00:00:00:00:00:00.
- tomn 12y agoNetworkManager doesn't relay any error information to the interface at all, but it's log files are quite detailed. At least on systemd based distributions (tested on arch), running journalctl -fu NetworkManager will show you the live logs of NetworkManager interleaved with the logs of it's subprocesses; this has lots of juicy information that i've found quite usefull for debugging.
- aye 12y ago> journalctl -fu NetworkManager Perfectly sums up my feelings about NetworkManager.
- JetSpiegel 12y agoWhat so bad about Network Manager? nmcli is really useful.
- rphlx 12y agoUnnecessarily complex daemon; three lines in /etc/network/interfaces and a few shell scripts will suffice, thank you very much.
- andor 12y agoWhat's good for you might not be the best option for the majority of people. Making things that "just work" means handling complexity for users, and leads to somewhat complex code. Debian's static network configuration is great for servers and okay for desktops that never move. But it's nothing that you should put on laptops operated by enterprise users (the people that pay for Linux desktop development). Imagine users calling support from a Starbucks, trying the edit the wifi config files.
- clarry 12y agoHandling complexity by piling more complexity on top is sadly very common, even so common that people think it's inevitable. But it's not the only way. The other way can sometimes be harder, and it tends to take more thought, but in the end you may actually solve and get rid of complexity.
- klodolph 12y agoIt's opaque on Linux, but that's not the big problem. It's opaque on OS X and Windows as well, but nobody cares because it works. I wonder if we'll eventually get the kind of stability that we currently have with ethernet drivers... once the speeds are high enough that we stop upgrading, once the chips go into long-term production instead of changing every few years, once things settle down...
- vacri 12y agoGiven that wifi has been constantly evolving since it started, it's not going to settle on chips any time soon. 802.11ac has just been released, prompting a new round of chips.
- deathanatos 12y agoI disagree. It's possible to get advanced output from various command line tools in Linux, and it's possible to get networking information. It's much more difficult to do that on other OSs, especially Windows. I loathe debugging network troubles in Windows, because there is essentially no information. OS X has most of your standard tools, though some in some odd places, e.g., printing the routing table not being done with `route`. Furthermore, I care. My 2013 Macbook Pro is terribly slow to associate to even nearby APs, and drops the connection often. I have no idea why, because it is opaque: how do you list nearby APs? their signal strength or encryption type? I didn't learn this until just now, and it's, /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -s Seriously. There's no way I'll remember it, and if you're reaching for it, you likely can't Google it. And it appears to be deprecated. It's a much shorter command in Linux, and in general I find it easier to determine if the problem is the network connection or DHCP failure. IIRC, Network Manager's icon changes — admittedly not much – depending on which one it's on, so even without command line tools, I have some idea what's going on. OS X has the troubleshooter dialog, but that's never been able to fix the problem. (In general, I feel, those things never do. They also never tell you what they're doing. For all I know, they're just progress bars and timers.) WiFi off, WiFi on fixes a lot of problems.
- chrisbolt 12y ago
- danielweber 12y agoLiterally in the /etc/rc.local of the machine I'm on now: echo "STOPPING NETWORK MANAGER. . ." /usr/sbin/service networking stop echo "STOPPED" wpa_supplicant is no picnic, but at least I have more of an idea of WTF is going on.
- fragmede 12y agoWhat distro are you on? On the ones I'm familiar with, the network manager service is called 'NetworkManager' (inc caps) so I need to do 'service NetworkManager stop'
- danielweber 12y agoUbuntu 13.10. NB the process name is still "NetworkManager" despite the string I use to /usr/sbin/service
- cad71 12y agoYep and that is the beauty, but also the pitfall of open source. People can patch to make things work for them, but also as long no one take up the task (or form a group) to fundamentally redo a driver or rewrite the architecture nothing happens. So you should take up the task to change things (find people to help you), that's the strength of open source (community driven)
- pjmlp 12y agoThe strength that left me two months without WiFi on my Ubuntu install, as Canonical devs pushed their half backed replacement for the Broadcom drivers. Reversing their decision meant for many, either spending a few sleepless nights struggling to undo their changes or wait for feature parity. I waited, for me the time to spend nights tweaking Linux distributions is somehow gone at the turn of the century. Nowadays, either it works out of the box, or I don't care.
- alrs 12y agortfm. Linux provides the architecture, the vendors ignore it and do it themselves. The Intel drivers require blobs. Broadcom used to require blobs that you had to cut out of Windows drivers yourself, though I have no idea what that's like now. The vendors use the excuse that this stuff requires FCC certification, and if they expose the low-level stuff some hax0rs will turn the wi-fi portion of the spectrum into CB radio circa 1979. The OpenBSD guys used to recommend Atheros, because the specs were open. I have no idea what the current wisdom is. I run Thinkpads, which are BIOS-locked to only Lenovo provided cards, so I've been in iwl-land for a long time.
- stsp 12y agoThe Atheros HAL was reverse engineered for OpenBSD. adrian@freebsd used to work at Atheros and managed to get them to open source their HAL. The code is now in FreeBSD where the HAL was a blob for years. AFAIK no hardware docs are available for people outside the company. Ralink used to provide documentation on request. They've been acquired by Mediatek since. Mediatek allows OpenBSD to distribute binary firmware images under free terms (for the run(4) driver). Perhaps they'd still provide docs. I haven't asked yet. Realtek's engineers tend to be kind and helpful, but they don't provide docs on request, citing NDAs, and management has ignored my requests. There are several open source drivers for Linux written by Realtek engineers which can be used as a reference but they are pretty large so studying them takes time. Broadcom's open source drivers are unreadable to the point of being more or less equivalent to binary blobs. If you want to see why try to make sense of this file in Linux: drivers/netwireless/brcm80211/brcmsmac/phy/phy_n.c
- evmar 12y agoThe author wrote: "a billion mobile devices running Linux and using Wi-Fi all the time". I would bet that Android has a separate implementation of some of the wifi stack to make it work better.
- nine_k 12y agoAndroid is open-source. I suppose that these workarounds would make it into the mainline kernel if they existed.
- dublinben 12y ago>Android is open-source. But none of the WiFi drivers of Android devices are. If they've found an improved way to do WiFi, it's baked into the proprietary drivers.
- tormeh 12y agoAnd as long as our computers don't come with Linux preinstalled it will continue to be this way. This is what happens when your OS is a stranger in a strange land; it doesn't feel like it belongs there.
- DCKing 12y agoIf desktop Linux ever became popular enough for computers to come with it preinstalled, it would immediately go down the binary blob driver path that Android is on. For vendors, the reasons to close up their drivers would be identical whatever OS their kernel drivers would run on top.
- tormeh 12y agoOf course, but it would at least work.
- virtue3 12y agoComing from a guy that worked on pre-production android hardware... you wouldn't want any of those drivers. Ever. Seriously. They don't even properly report the cell signal levels correctly half the time (.... like returning -1 always on the error correction signal level...).
- mikepurvis 12y agoIt only gets worse on headless/embedded/arm machines. The RPi list of Wi-Fi adapters gives something of a picture: http://elinux.org/RPi_USB_Wi-Fi_Adapters http://elinux.org/RPi_USB_Wi-Fi_Adapters Note the number of ones which require some additional configuration steps, downloads, patches, or other monkeying around. And don't even get me started on connman and wicd.
- dublinben 12y agoThis is pretty easily avoided if you just buy an adapter known to work on Linux with only free software. The driver for this is included in the kernel. https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-usb-adapter-gnu-linux-tpe-n150usb https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-us...
- fragmede 12y agoI bet half those problems would go away if Rasbian Wheezy, with its ancient 3.2-based kernel, wasn't the default for many R-Pi users.
- woodson 12y agoRaspbian Wheezy comes with kernel 3.12 (see http://www.raspberrypi.org/downloads/ http://www.raspberrypi.org/downloads/)
- mackal 12y agowicd is pretty dead. It uses deprecated kernel features that will be removed at some point and with no maintainer for wicd, it will just stop working.
- vezzy-fnord 12y agoWould you care to list those deprecated features, or provide a source? I know wicd is a dead or dying project, but I didn't know it was that critical.
- mikepurvis 12y ago
- ploxiln 12y agoI stopped using NetworkManager years ago, I just use wpa_supplicant and dhcpcd directly (well I use the systemd services for these so they're started automatically). I also always name the 2.4GHz and 5GHz networks differently, and connect explicitly to the one I want. Yes it would be great if NetworkManager did the right things automatically, but the task might be impossible due to hardware and driver quirks. WiFi chips are among the buggiest chips in computers today. Really, the chip. I've seen ridiculous workaround in drivers for multiple vendors' chips. Also, the drivers are complicated and buggy. And the linux drivers don't get quite enough full-time attention from the chip vendor to work solidly. Those windows and mac wifi driver teams are pretty big.
- raverbashing 12y agoYeah, NM rarely works correctly "Ah why don't you open a bug", because people are not interested in making it work (like a lot of "modern" Linux stuff) If it works manually (dhcp, wpa_supplicant, etc), I don't see what's the problem. Or better, I see: NM doesn't work. Yeah, unfortunately you're right about WiFi chips. It's about making the bare minimum hardware and shoving everything onto the drivers.
- nodata 12y agoNM tries to be too clever. I have no idea what some of the options in the interface mean.
- fragmede 12y agoIf you haven't used Network Manager in years, I'd suggest taking another look. It (like PulseAudio) was shipped far too early, souring early-adopters on its use. Later kernels have (somewhat) cleaned up the wireless driver interface so these days I don't have problems with day-to-day usage of Network Manager.
- antocv 12y agoPulseAudio still requires you to be a hacker to get sound over network - something it promised to do well, but oh doesnt.
- icambron 12y agoOne of a handful reasons I don't have Linux on my laptop anymore, even though I like so many things about Linux so much more. I'm not sure about this point, though: > Connection time. I dislike OS X pretty deeply and think that many of its technical merits are way overblown, but it's got one thing going for it; it connects to an AP fast. I remember Linux being slow (and unreliable) at this, but OSX is pretty slow too, at least on my MBP. The OS that I've always had the best experience just with connecting to APs is actually Windows.
- ertdfgcb 12y agoI've noticed that on my OSX macbook the connection time is slow, but it seems to connect before you log in if it's asleep. I think Apple uses tricks like this to make it seem much faster.
- vamur 12y agoI'm running Archlinux from a flash stick on a cheap Haswell Celeron. From BIOS to chromium/wifi on is about 20-30 seconds. And I'm using connman so it could be faster with directly using wpa_supplicant/dhcpcd. On Windows it took up to two 2 minutes. So it is definitely an issue with hardware and drivers not Linux in general. Also using old hardware (including old wifi dongles) is a recipe for headaches. A cheap Haswell laptop or a desktop coupled with Linux friendly wifi dongle or a card should work fine.
- fragmede 12y agoWhich MBP do you have? It's fast on Apple products because they 'cheat', and re-use the last-given DHCP address. http://cafbit.com/entry/rapid_dhcp_or_how_do http://cafbit.com/entry/rapid_dhcp_or_how_do (and the follow up, http://cafbit.com/entry/rapid_dhcp_redux http://cafbit.com/entry/rapid_dhcp_redux)
- danudey 12y agoEssentially, they behave as if they've spent the last (however long you were offline) without sending any packets. If their lease is still valid, they should still be able to use the same IP address; i.e., they shouldn't need to re-acquire one. That's not always the case, so they also do a DHCP request along with that.
- webwanderings 12y agoMy regular laptop with Win7 gave up the other day and I have been attempting to rebuild an old laptop with Linux as a temporary solution. I bought a cheap usb wifi dongle ... and lo and behold, support nightmare ensued. Eventually, I realized that I didn't make a right choice in buying that tiny dongle. So now I am on phase two of rebuilding old laptop with Linux, with a different brand of usb wifi (double the price of the first cheap one). I am not a Windows fan anymore, but everything in Windows world just works out of the box. And what's with Linux on daily basis looking to install upgrade for its OS?
- sp332 12y agoDevice manufacturers write drivers for Windows. They don't write drivers for Linux. So it's probably (mostly) the fault of the manufacturer. Another thing is that Windows has an abstraction layer called NDIS which network drivers communicate to. This abstraction is complete enough that if you have a compatibility layer for NDIS, you can usually use Windows drivers directly on Linux. The project is called ndiswrapper. https://en.wikipedia.org/wiki/NDISwrapper https://en.wikipedia.org/wiki/NDISwrapper Edit: to be specific, maybe it would be helpful if Linux had a similar abstraction for drivers to use? As for the updates, that depends 100% on your distro and your own settings. If you're on Ubuntu, you can just uninstall the update-notifier, and/or edit /etc/apt/50unattended-upgrades to install updates without notifying you all the time.
- webwanderings 12y agoYup, ndiswrapper was one of the support routine. But even when things work, they don't work optimally, as the author is correctly claiming. But on the flip side, I should also mention that on another newer laptop with embedded wifi chip, I never had any wifi problems. Ultimately, I believe, Linux is probably suffering reputation - in comparison with Win/Mac - due to its multiple flavors and plethora of developmental end points. The lack of manufacturer support is just one of the issue.
- mrinterweb 12y agoI can sympathize with this article. Every time my kernel is upgraded, I must manually recompile my wireless driver. I'm using a patched version of a Broadcom wireless driver that some kind soul on Github has been maintaining. If I was new to linux, there would be no way that I would have been able to get my wireless interface working in the first place. Linux has made vast improvements over the years in how well it works with so much hardware. There just seems to be more of a need for better wireless driver support.
- shock 12y agoLook into dkms[0] so the driver is compiled automatically on each kernel upgrade. [0] - https://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support https://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support
- mrinterweb 12y agoThank you. I will check that out.
- zokier 12y agoI think it is unwise of him to generalize his issues to whole of Linux if he has only experience of one vendor and their drivers. Maybe the issues stem from problems in the Linux stack, or maybe they are vendor specific. Problem is that with a single datapoint you can't tell the difference.
- sandGorgon 12y agoCopy paste, printing and networking. Biggest usability misses of Linux. I don't consider these technical issues...but usability issues. Things like insisting on keeping the install ISO at 750 mb, leaves seamless driver support out of the todo list because...hey, there are no drivers anyway. I'm really surprised there is not a paid version of Linux with these features baked in. I would GLADLY pay for all these (as well as the royalties for mp3,flash, etc) EDIT: does anyone know if systemd-networkd would make things better [1] [1] https://wiki.archlinux.org/index.php/Systemd-networkd https://wiki.archlinux.org/index.php/Systemd-networkd
- scrollaway 12y agoSound isn't too great either. The BlueZ developers for example decided to drop HSF/HSP support in BlueZ 5.x [1], which means there is no way to get a bluetooth headset (with a microphone) working on Linux anymore; there's just no way. Although it's not like sound is great on Windows either. [1] http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/5.0/ http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/5....
- Someone1234 12y ago> Although it's not like sound is great on Windows either. Pre-Vista I might have agreed with you but now? I think Windows has quite good audio stack. See: https://en.wikipedia.org/wiki/Technical_features_new_to_Windows_Vista#Audio https://en.wikipedia.org/wiki/Technical_features_new_to_Wind...
- danielweber 12y agoVista was the first time I suddenly found myself unable to use my headphones on a Windows machine. Sounds was forced to go out through the speakers. I eventually rebooted to fix it. I feel things are moving backwards.
- izacus 12y agoYour single anectodal evidence of single non-updated driver does not really prove anything about "going backwards" or tell anything about the merit of new audio stack.
- pasbesoin 12y agoI recently helped a relative move an old Win XP machine to Ubuntu. I was going to move them to Lubuntu; however, the USB WiFi dongle they are using refused to cooperate -- or rather, the Lubuntu live disk I was testing refused to cooperate with it. The dongle's chipset was Linux friendly and had apparently worked without major problems up to about Ubuntu 10.10 or so. Google revealed the eruption of numerous reports of problems at that time. Problems that apparently persisted through several releases, for a good couple of years. The solution that people found worked was to download driver source code from the chipset manufacturer (RA) and build it, with custom settings, on one's own machine. Some also found success with banning one or more apparently concurrently competing drivers from being loaded on their system. Per some descriptions, multiple compatible drivers would wrestle for control of the device, evincing symptoms matching what I'd experienced. I was getting ready start a custom build and/or perhaps whacking driver loads -- after installing Lubuntu to get past the fixed Live CD configuration, when I thought to try the plain Ubuntu live disk as opposed to Lubuntu. Problem gone. Working stuff breaks. Breaks persist for months if not years. Ostensibly compatible/comparable systems aren't. I'm not going to complain; it is what we make of it. But still, today, we don't always do such a good job of making -- or maintaining. Separately, the Ubuntu screen image on my relative's truly mass produced, 17" Dell LCD is shifted slightly to the right -- just enough to hide the rightmost few pixels. An old 17" LCD I have plugged into an old T42, has a similar shifting. Useable, but slightly annoying, particularly with respect to today's anorexic scroll bars. I did a little research into the problem, months ago, but did not find a ready solution. Not WiFi, but still slightly to moderately awkward.
- liveoneggs 12y agoYou can probably fix your display issue with xvidtune
- pasbesoin 12y agoThanks you; I'll have a look at that. As I grumped in another comment, I'm getting old. One symptom of such is increasingly "putting up" with marginal cases. Starts becoming "easier" than finding/learning yet "one more thing". TL;DR: Don't get old...
- tdicola 12y agoI would extend it out to laptops and Linux in general. I've tried a few times over the last 10 years or so to use Linux on normal consumer laptops (Dells, Thinkpads, etc.) and it's always a really bad experience. Wifi issues, battery life, etc. have major problems. In the end I just gave up trying and use a MacBook with virtualization for running Linux.
- holri 12y agoI use Linux on ThinkPads since 1999 or so. I can not remember issues I could not solve. Just last week I installed Debian Wheezy on a X61 and everything worked out of the box. Works like a charm. This is a helpful resource: http://www.thinkwiki.org http://www.thinkwiki.org
- keithpeter 12y agoYup, Thinkpad X60 with Intel wifi cards seems to work OK provided you add the non-free firmware iwlwifi package. Some of the X61 and X61s series had an Atheros wifi card and would work from a default Debian install. I've also had good luck with a Dell Latitiude E5420 (i5). This and similar models have a Broadcom wifi card which is a known problem so I simply purchased an Atheros half size wifi card and popped it in. Unlike Thinkpads, the Dell bios will take hardware changes in its stride. Of course, we should not have to do these things. Perhaps as laptop sales decrease, a crowdfunded fully free laptop will become economically viable.
- steanne 12y agothe free software foundation lists exactly one laptop that gets their 'respects your freedom' cert. http://www.fsf.org/resources/hw/endorsement/respects-your-freedom http://www.fsf.org/resources/hw/endorsement/respects-your-fr...
- pjmlp 12y agoI went Windows instead, but share the same feelings.
- 12y ago
- dendory 12y agoI think a big portion of the problems Linux has these days is how unbelievably bloated and overconvulated distributions have become. Every single function has three, four or more ways to do the same thing, often with different results. When trying to get something working I never know if I should run the /etc/init.d script, restart the service manually, edit a config file, use the command line config until or use the GUI settings option. Sometimes you edit a config file and get the thing to work, only to find out some other utility will overwrite it next reboot. Other times you get strange errors or just nothing at all, because it's a deprecated method and you should have used the brand new tool-du-jour instead. It's a mess.
- freehunter 12y agoI tried setting proxy configuration so that apt-get would work with my employer's proxy. I put my (plain-text) username and password into a dozen different configuration files before it finally worked. Then I changed my password, and couldn't remember where all I had put my credentials in. I ended up having to reinstall the whole OS because I couldn't figure out how to undo the proxy settings that took me forever to figure out in the first place. Skipping over the fact that I had to put the password in plain text. So yes, I agree.
- yoodenvranx 12y agoI had similar problems with Linux. This is why I have now a rather long textfile in a dropbox folder in which I write down all problems/solution/tweaks I had to deal with. If the same thing pops up again after half a year I can just look it up.
- freehunter 12y agoI do the same thing with regex one-liners.
- aye 12y agoGreat idea. I keep a folder full of Markdown files that I push to a Bitbucket wiki.
- shmerl 12y agoI never was able to make my Ralink based card (D-Link DWA-160) to work on 802.11n band. It only works with b/g. I suspect it's a driver limitation (rt2800usb), but I never got any response from the developers about it.
- farresito 12y agoThanks god you use an Intel card. When I bought a Thinkpad, it came with a Realtek card. I'm still connecting through ethernet; never managed to make it work.
- bitwize 12y agoI have a thinkpad wired into a wifi bridge. Since it almost never moves nowadays, it's a pert-near ideal setup and sure beats the naff kernel support for the thing's internal rtl8192se chipset.
- farresito 12y agoAh, interesting. I barely move my Thinkpad, too, so it's not that big of a deal, but it's very sad all the situation. Someone mentioned here a github user was maintaining a driver for the card he was using, so I decided to check out if someone had a patched version of the Realtek I have on my computer, and it seems that there is: https://github.com/FreedomBen/rtl8188ce-linux-driver https://github.com/FreedomBen/rtl8188ce-linux-driver You might want to check out https://github.com/pvaret/rtl8192cu-fixes https://github.com/pvaret/rtl8192cu-fixes and https://github.com/dz0ny/rt8192cu https://github.com/dz0ny/rt8192cu
- slacka 12y agoI discovered this for myself after converting my parents 5 year old PC from XP to Linux Mint. As you can see from the bug tracker: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/852190 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/852190 the kernel drivers are much buggier than the GPL'd Realtek drivers. But the official Realtek drivers don't work with newer kernel versions. Fortunately there is: https://github.com/pvaret/rtl8192cu-fixes https://github.com/pvaret/rtl8192cu-fixes Does anyone know why doesn't the kernel adopt the official drivers? Is there anything I can do to help? What steps do I need to do?
- zanny 12y agoIf those are really under GPL, nothing should stop you from converting them into a kmod using the kernel 802.11 architecture and pushing them upstream. I'd imagine that since it hasn't happened yet there is something else at work impeding it.
- slacka 12y agoThey ARE GPLv2. See for yourself. 4.0.2_9000: http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU http://www.realtek.com.tw/downloads/downloadsView.aspx?Langi... Converting them to the latest kernel driver interface is beyond my skills and pvaret's rtl8192cu-fixes. Pvaret's remarks on github indicate it's a hack to just get them running and someone with Linux networking internals experience is needed to do a proper port. I'd be willing to test and file bug reports. Your 'fix it yourself' attitude is exactly the kind of response that gives Linux a bad name.
- noisy_boy 12y ago> Is there anything I can do to help? What steps do I need to do? Normally I would agree with you but zanny's reply was perfectly legitimate for your above question. I don't see any attitude from his/her side.
- zanny 12y agoBut "someone else should fix it" does not help either. If you do not provide Realtek the financial incentives (ie, not buying their products) for not maintaining proper Linux drivers (in kernel ones are what I would consider proper) then nobody in the world has a financial incentive to make them work for you. If you are buying realtek products, having them not work, and not demanding a refund for the lack of functionality, then nothing changes. It is disingenuous to blame kernel developers for not fixing a hardware vendors shitty driver when said hardware vendor is not paying them squat.
- legulere 12y agoI kind of feel like some user facing stuff on linux gets developed not until it's in a good or perfect state but until it's bearable. You can work with the GUIs for instance, but somehow they still feel very sluggish
- pjlegato 12y agoThis is precisely the problem with Linux. Everyone wants to work on cool kernel-level stuff or daemon-level stuff; nobody wants to bother with the tedious, unglamorous last-mile work of actually delivering a polished user experience around all of that cool stuff.
- _lce0 12y agolinux is a pretty vague term which can refer to many _moving_ things
- pjlegato 12y agoThat's another problem with Linux. "Linux" is a kit of 50,000 mostly-compatible little parts. If your hobby is assembling systems out of these parts, that's great; but it's less useful to you if you want to do higher-order work on top of an assembled computer system. For example, tailing /proc files and compiling new kernel drivers shouldn't be a part of getting wifi to work anymore in 2014. It should just work. Of course, if you want to tinker it's great that you _can_ tail the /proc files, but you shouldn't have to. You should be able to turn your computer on and just have wifi, out of the box.
- yellowapple 12y agoThe sluggishness, in my experience, depends on several factors: * Which toolkit is used (if any). Tk-based apps seem to be very quick, since Tk is pretty spartan and basic. GTK-based apps are okay. QT apps aren't quite as OK. Pure-X apps are zippy, but they're ugly as heck. * Which WM/DE you're using. GNOME3 and its relatives (Cinnamon, Unity?) are sluggish as heck. KDE and GNOME2/MATE are much more tolerable, with or without desktop effects. (Open|Black|Flux)box are zippy, as are cwm, Emerillon, WindowManager, and virtually all of the tiling WMs. Enlightenment is zippy sometimes, but I don't think I've ever managed to get it to run without crashing back to a login screen within 5 minutes of use. One curious thing I've noticed is that system resources have absolutely no bearing on UI zippiness. Whether I'm on a PowerBook with 512MB of RAM or a gaming rig with some Intel Core i9-867-5309-Quakemaster-Ludicrous-Gibs-Edition-whatever and terabytes of RAM with some NVidia GeFarce GTXXX 5-million-CUDA-core 8GB SLI monstrosity of a video card with hardware-accelerated 3D grass rendering, GNOME will always act like it's running on a God-damn ENIAC.
- ghostwords 12y agoI ended up blacklisting the built-in card on my ThinkPad X220 because it was too flaky to rely on: $ cat /etc/modprobe.d/blacklist-local.conf blacklist rtl8192ce I use a USB adapter instead (SMCWUSB-N2), which, besides providing wireless internet, is a fine reminder to just get a MacBook next time.
- nilved 12y agoOnly get a MacBook if you're hanging on to the USB adapter. The Broadcom chips they come with are terrible (and so is its EFI boot.)
- dnr 12y agoYeah, the default card in my X220 was a piece of crap. I got one of these for $15 and replaced it myself (took 10 minutes) and it's been muuuuch better. http://www.ebay.com/itm/Intel-Advanced-N-6205-wifi-card-Thinkpad-x220-x220i-t420-60Y3253-631954-001-/121336935951 http://www.ebay.com/itm/Intel-Advanced-N-6205-wifi-card-Thin... (I remember this was actually a customization option when I bought it and I stupidly didn't pick it. So you don't have to get a macbook, just read carefully when you get another thinkpad.)
- elementai 12y agoIt truly was an option. Patting myself on the back now for taking half an hour to research it two years ago. Although one can disassemble X200 with (relative) ease.
- scottlocklin 12y agoThat worked for me very well ... until the USB gizmo fell out. :( Ironically, I quit OS-X because my macbook was even worse.
- pjlegato 12y agoA main reason to use Apple products is that the hardware and software are always bundled and guaranteed to work together without any additional tweaking or messing around. You turn it on and it just works. Both Windows and Linux suffer from the problem of attempting to support n different hardware configurations in a decentralized fashion, and neither has solved it very well.
- iopq 12y agoPretty sure you can't ship a product that doesn't work on Windows. I'm just saiyan'
- w1ntermute 12y agoActually, I know people with MacBooks who regularly have problems with hibernation instability. And the whole reason for having a choice in hardware configuration choice is because one-size-fits-all doesn't work too well in the real world. It might be fine for all the coders in San Francisco writing iPhone apps and Rails websites, but there are many factors that come into play for other people. Some people can't afford an expensive laptop, want better specs, want to play games, want a touchscreen, want a full keyboard, etc. There are plenty of reasons for not going with whatever Apple has decided upon from on high.
- epx 12y agoLinux should simply adopt Android as default UI.
- bitwize 12y agoIf you're using NetworkMangler, God help you. Shit's never worked right for me... even connecting to my home wifi it gets way fewer bars than it should, and keeps making and breaking the association. Using just wpa_supplicant and dhclient, I've had far fewer problems, particularly with Intel wireless chipsets. Linux would benefit from a bit of expectations management. Some of us neither want nor need a less expensive Windows, and Linux in general tends to function a whole lot better if you don't treat it as such.
- schmichael 12y agoI've been using NetworkManager for years with few complaints. I love its VPN support and have used it consistently at a couple jobs. The moral: Anecdotes aren't very useful.
- tlarimer 12y agoThey can be when they are in abundance.
- JetSpiegel 12y agoThe plural of anecdote is not data, though.
- dingaling 12y ago> The plural of anecdote is not data, though. Of course it is. What do you think data comprises? It's just an aggregation of anecdotes.
- JetSpiegel 12y agoAre you really sure? Data is supposed to have been collected by some method, not just randomly waiting in forums for complains about something.
- _lce0 12y agowhen linux works, it's wonderful; when not, it's a pain in the a*^
- binaryanomaly 12y agoImho wifi on Linux should also be taken care of by the Core Infrastructure Initiative - wifi is critical today http://www.linuxfoundation.org/programs/core-infrastructure-initiative http://www.linuxfoundation.org/programs/core-infrastructure-...
- roscoebeezie 12y agoAnd this is why I am getting a Macbook.
- feld 12y agothe OSX wifi stack and drivers especially for the 802.11ac chip is garbage
- yellowapple 12y ago> between the Intel cards I've always been using That's probably a big part of the issue; my experience with Intel wireless on Linux hasn't been as great as with, say, Atheros chipsets. Plus, NetworkManager. Good God is that terrible. To put it in perspective: on one of my laptops (a PowerBook G4 running OpenBSD), I basically run the following by hand to connect to a wireless network: sudo ifconfig bwi0 nwid $MY_SSID sudo ifconfig wpa sudo ifconfig wpakey $MY_WPA_KEY sudo dhclient bwi0 Even that - on a crappy Broadcom wireless NIC, no less - is faster and more reliable than NetworkManager connecting with a good Atheros card.
- schmichael 12y agoThe first laptop I got at my current job is now sitting unused because of unreliable wifi in Linux and Windows 7. Due to BIOS restrictions work just got me a new laptop instead of messing with trying to replace the card. It's incredibly sad how shoddy modern wifi can be, and a testament to the importance of networking that flaky wifi can render a computer useless.
- plg 12y agoNot much better on OS X ... my brand new laptop with the most current OS X is totally unreliable about connecting to wi-fi on wake from sleep. Even on reboot half the time it fails. Maybe different cause from that highlighted by the OP's article ... but in the end not much better situation.
- ludwigvan 12y agodid you try turning off bluetooth? weird, but it worked for me on OS X to make connecting to wifi much faster.
- cerberusss 12y agoTry a different router. This helped me a great deal.
- deleted 12y ago[deleted]
- rbanffy 12y agoI have 3 Linux laptops in the house. One with Intel running Ubuntu, another with Broadcom running Fedora and the third with a Prism interface running CentOS 6. All three work flawlessly. We also have 3 Macbooks, a white one, a Pro 13 and a Retina 13. All three work flawlessly with our Wi-fi. My wife had a corporate-issued HP laptop running Windows 7. It connected to our wireless once or twice over a year. I had a network cable for her. My in-laws have a Windows 7 Dell laptop. It's now running Ubuntu, booted off a USB stick. It's doing so because Windows 7 sometimes connects to the network, sometimes doesn't and I never identified a pattern, so I simply gave up. Under Ubuntu, it works flawlessly. And yet, somehow, it's the sad state of Linux wi-fi... Go figure...
- Crito 12y agoYeah, I haven't even so much as bothered to look at the wifi chipsets in computers that I purchase since like... 2007? Since then I just assume that it works, and so far it always has. The only trouble I have is with this corporate T420 with Windows 7, on my home wifi network. Sometimes it takes 5+ minutes to connect (2.4ghz or 5ghz wireless-n, I have both available and it has trouble with both.) I've also never had a single problem with NetworkManager, despite what others are saying. Then again, I've also never had problems with the infamous PulseAudio... I bought a cheap-as-hell USB audio card off the internet the other day and it Just Worked™. That didn't even surprise me.
- diminoten 12y agoWhat do you mean "flawlessly"? What are your criteria for success? I suspect they're different from the person who wrote the submission.
- dnautics 12y agoI've used exclusively linux at home, for the last 6 years (except at work), and I did find that some of the nano wi-fi USB things (necessary for rPi) don't work.
- Timmmmbob 12y agoYes I have one that "works" in Linux, but it only ever connects at a glacial speed. In Windows it works at full speed as expected. ("Submit a bug", "Have you tried...", "What does [some command] say?", "It's the fault of the manufacturers" etc.)
- peterwwillis 12y agoWhy does my Intel card consistently pick 2.4 GHz over 5 GHz? http://kb.netgear.com/app/answers/detail/a_id/24246/~/what-is-the-difference-between-2.4-ghz-%26-5ghz%3F http://kb.netgear.com/app/answers/detail/a_id/24246/~/what-i... "Overall the 5GHz has shorter range compared to the 2.4GHz. It is recommended to select the 2.4 GHz if you using computers and wireless devices to access the Internet for simple browsing and email. These applications do not take too much bandwidth and work fine at a greater distance. However, if you are in a place which is crowded with more wireless signals, it is advisable to use the 5GHz network to avoid interferences. Furthermore, the 5GHz is most suited for devices which require uninterrupted wider bandwidth for video/audio streaming or multimedia content." I can sit literally right next to an AP and get a connection on the lowest basic rate It's possible that Linux is more likely to reduce your rate in the face of increasing errors and noise, whereas other OSes/drivers might ignore the noise/errors and keep the rate the same, regardless of literally not having the advertised throughput. In any case, even the WPA2 setup is slow for some reason, it's not just DHCP. Both your DHCP client and your WPA client are not optimized for speed on Linux, they are optimized for reliability. it's not unusual at all to be stuck at some low-speed AP when a higher-speed one is available Yeah; your wireless client isn't going to change APs until it loses signal. Most of these complaints are industry issues that have different proprietary fixes intended to appease consumers, but none of them are recommended or required by the industry.
- agumonkey 12y agoSo: - wireless chips are obscure and buggy - audio chips are obscure and buggy I wish for some organized effort to bring a few set of open hardware chips to replace proprietary ones that seem to only work easily on proprietary OSes. That would complement the work of guys like bunnie huang (novena laptop) and would let the linux world enjoy sound hardware for (allegedly) sound software. Maybe that's just a pipe dream and the complexity emerge whether or not it's open.
- mbq 12y agoMany chips/hardware pieces do already have a good Linux support, and the internet is full of info what will work perfect and what may cause problems.
- stuaxo 12y agoI've got this great thing where it doesn't work when I unhibernate .. well, it's OK since if I shut the lid and open it again then it works.
- ninjakeyboard 12y agoUpgrade to windows xp. problem solved.
- giancarlostoro 12y agoFor my desktop use I just use a TP-Link router in "client mode", as far as my laptop is aware I'm on ethernet. For my laptop, I buy cheap TP Link Wireless USB's my laptop has a crappy internal wireless card regardless of OS. Sometimes buying cheap USB drives work better than "top notch" wireless cards. I would still agree, Wireless on Linux is configured terribly. Sometimes you get bugs that have fixes you have to hunt down on the internet, which you wouldn't be able to get on, if your WiFi isn't working at all. You'd think the biggest thing to get attention on a Linux OS is anything related to networking, the most crucial features of any OS these days.
- dheera 12y ago"The 5 GHz signal is just as strong" Interesting. My dormitory at MIT has both 2.4GHz and 5GHz signals. The 5GHz is extremely weak but my Android devices love to pick a weak 5GHz signal over the 2.4GHz and subsequently have terrible speeds. On another note, I wish that browsers and applications would keep firing spawning and firing requests at a rate beyond human perception, until one succeeds. The state of browsing the web over Wi-Fi while moving from access point to access point is equally sad. I get an IP address, but applications almost universally refuse to retry their connections until the first zombie socket times out. Seriously, I shouldn't have to wait 10 seconds after each access point change. Should be more like <0.1 second after getting an IP. OSes/Applications should be thinking "This is Wi-Fi. Wi-Fi is supposed to be fast. Since no bytes came in for a full 0.5 seconds, something is wrong. I'm going to keep opening/closing sockets like hell, change networks, change frequencies, whatever it takes to get data to come in the next 0.3 seconds and make the user happy." Building devices with dual Wi-Fi cards may also offer ways to help alleviate the handover problem.
- aeturnum 12y ago> I wish that browsers and applications would keep firing spawning and firing requests at a rate beyond human perception, until one succeeds. I do not think you would enjoy the network conditions that come with that behavior. The point about killing old sockets early when switching wifi makes a lot of sense, however.
- dheera 12y agoWell, the problem is really that the network isn't even connected properly in the first place. I agree that it shouldn't behave badly while actually on the network. It's just odd that madly hitting refresh while wifi is reconnecting actually gives me a sooner and faster page load than letting the machine load by itself. That means there is something can be automated but unfortunately isn't being automated.
- rphlx 12y agoNetwork stacks are layered and even after 40+ years, on every OS I've seen, L4 (TCP) never queries nor uses any L1/L2/L3 link quality/stability/availability information when computing retrans intervals, etc. Doing that would indeed be an aesthetically distasteful layering violation, but it would enable much more optimal behavior in a lot of wifi & cell network scenarios, as you've said. It will probably happen eventually, at least in Linux, after a few more years of commercial pressure to make it suck less.
- gonzo 12y ago> "Instead we get access points trying to layer hacks upon hacks to try to force clients into making the right decisions." point-in-fact, this is how 802.11 works. > And separate ESSIDs for 2.4 GHz and 5 GHz. I'm not sure if the author thinks this is a good idea, or a bad one.
- ytjohn 12y agoI understood it that he just wants the one SSID and let his devices connect to the appropriate one. But his Linux system will always try the 2.4ghz first, so he ends up creating something like "mywifi24" and "mywifi5". Personally, I would prefer doing the two separate names so I can know what I'm connecting to. Being a radio guy, I see it as two separate bands, two separate physical radios. I don't see a point in trying to give them the same name. Of course, for my home environment, I'm pretty much using just 2.4, and I give all my access points the same SSID so I can "roam" between them. I suppose someone could want to be able to roam between 2.4 and 5ghz (I tend to use 5ghz for backhaul).
- shinymbp 12y agothis thread (not the article itself) is one fine example of the decline "hacker"-news is going through if you look at "linux" as a community of users and developers there is lots of get stuff for free attitude and not enough people capable of and willing to work on the tasks waiting (open source drivers for mobile GPUs anyone?) but hey, aren't we all busy on making lots of $$$ with our übercool startups these days? call it the sad state of hacker ethics or continue to improve the free software world day by day .. choice is yours
- zanny 12y agoRight here: https://wikidevi.com/wiki/Atheros_AR5B22 https://wikidevi.com/wiki/Atheros_AR5B22 This thing works. I just buy them in bulk. I can get one for $13 off ebay. Any device I run Linux on, I replace whatever half size mpcie card it has with one. I don't fuck with the realtek or broadcom chips I get, because ath9k is all-open, no proprietary firmware, works out of the box. Drivers are in any kernel since the 3 series started, the bluetooth is just a generic HCI bluetooth adapter over PCI, shows up as a usb device and works with bluez no problem. My best speeds on 5ghz with one of these has been around 20MB/s. Across my house I usually get around 8 - 10 MB/s. I think these chips are supposed to get much higher average throughput, but it works well enough I don't care. Works under Debian, Suse, Fedora, Arch, Mint, Mageia, even Slackware. Ath10k makes me mad, since they are now shipping firmware blobs. Again. And they were doing so well. I trust these chips so much when I'm doing IT supports and trying to advocate Linux to customers, I have been able to join every wifi network I've thrown the thing at, from ancient wireless-a routers to wireless AC ASUS routers with 2GB throughput. Point is, different vendors have different quality. The ath drivers have been great for me, but I've only ever bought this specific chip because of the value proposition.
- ploxiln 12y agoMuch appreciated tip, thanks. I've known some atheros chips had really good drivers, but this is more specific than my vague impressions. I suppose a major cause of the situation is that hardly anyone buys a laptop with the wifi chip as the first concern. Most laptops for sale don't clearly show the wifi chip, unless you go into the online configurator where you might be able to pay for an upgrade (yes I'm one of the weird people who considers the wifi chip, having once worked at a wifi ap vendor). I also doubt it's possible to replace the wifi chip on a macbook air or retina. So it's rare to have "cult favorite" chips of this type that enthusiasts can gravitate to, usually we just deal with whatever we end up with.
- hippich 12y agothanks to previous comment i just ordered one card on ebay for under $10 to test my theory - any laptop with pcie wifi card can be "upgraded" to atheros card. and i might even get few bucks back, since usually laptop-specific cards cost more on ebay :)) in theory if pcie cards are completely interchangeable, i should be able just swap them in and out. will see if it work out.
- nextos 12y agoIt can be somehow remedied a bit by adopting two strategies: - Cherry-pick hardware, in this case cards - Use very recent software stacks I just plugged in a Huawei 4G LTE dongle. I spent some time making sure this particular card worked, and discarded many others. I'm running the most recent kernel, systemd, udev, etc. It was a plug & play experience. If I had proceeded otherwise, it'd have been a nightmare.
- awongh 12y agoThis. Wifi is the #1 reason by far that I ditched my $800 thinkpad to switch to a $3500 MPB. (to still be in a unix environment) On my thinkpad, with one of the known, supported wifi chipsets, wifi would work about 8-9/10 times. But because I'm doing web dev stuff, those 1 or 2 times would basically brick the laptop for doing any kind of productive work. And that's not worth any kind of savings or effort.... afaik it's a driver problem first, before a linux wifi problem, but really I have no idea why it was working or not working. But if anyone is out there listening, this is how much the problem is worth to me- roughly $2500...
- moonchrome 12y agoWouldn't a simple USB WLAN solve your problems in the 2/10 case ? These things cost a couple of $ and are smaller than a USB stick.
- jingo 12y agoI've never been impressed with WiFi in general. Glad to see others in this thread reflecting a similar sentiment. I still prefer a wired connection, where possible. Not because I like wires, but because it is more reliable and the protocol is easier to understand.
- likeclockwork 12y agoHow is it that for the last decade I've been running Linux on whatever decent machines I was primarily using and whatever random garbage I could get my hands on and I haven't had any of these problems that people are perpetually complaining about? Are these people using some kind of exotic hardware? Am I just really lucky?
- dredmorbius 12y agoJust FYI, this response has about the same validity that refutation of online anonymity / pseudonymity as a non-issue does: simply because you're not experiencing a problem doesn't mean others aren't, and doesn't make their frustrations any less valid. I've used Unix for over 25 years, Linux for over 17. It's my platform of choice, I very, very rarely use anything else. And my Thinkpad T520i listing a "03:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000 [Condor Peak]" under lspci and running Debian GNU/Linux jessie/sid has _never_ had reliable WiFi, and I run it essentially 24/7 with a Cat5 cable plugged into hardwire networking. I've tried network manager, wicd-cli, wicd-curses, and other tools. I can see networks. I cannot connect to them. Plugging a cable in solves the problem far faster than futzing with a nonintuitive, low-feedback/diagnostics interface. So yeah, you're probably lucky.
- dredmorbius 12y agoAnd with that impetus, I've just set up ye olde /etc/network/interfaces configuration, and I've got a WPA2 connection running. One less cord to trip over. Why I could never get network manager nor wicd to work ... I don't know.
- coriny 12y agoYay, I'm lucky too. Not only that but 2 out of 3 MacBook Pros in my office do very badly with WiFi - slow to connect (my android phone is 10x faster) & they drop at the first sign of a flaky signal. The most robust laptop I've had on wifi was a Samsung running Fedora 20. Very fast to connect and never dropped. The pre-installed Windows 7 dropped continuously and often failed to connect. I suspect the "issue" may be very hardware dependent.
- bjornorn 12y agoWow. So many people in this thread are missing the point. «I use Linux at home with card X and it works great when I custom-configure wpa_supplicant» or «Just buy a MBP».
- bane 12y agoHonestly, it's almost easier these days just to virtualize a linux guest on your MBA/rMBP/whatever windows box and let the host handle the wi-fi.
- mcovey 12y agoI bought a Netgear wifi-to-ethernet adapter when I switched to Linux. For desktops, it's an ideal solution: zero-maintenance, the computer just knows eth0 has a connection from somewhere. It has a web interface to set up connections. The only downside - and this doesn't matter for most desktop users - no monitor mode, no reaver, nothing related to wireless at all, because as far as the OS is concerned, it's wired. For laptops, there are always plenty micro-sized USB adapters with known compatibility if your built-in wifi has bad or no drivers.
- Mikeb85 12y agoMaybe because I chose a laptop specifically for use with Linux (ThinkPad T530), but it works perfectly. Everything. Even WiFi, sound, suspend, Fn keys, fingerprint reader, everything.
- deleted 12y ago[deleted]
- GutenYe 12y agoThat's Linux.