Slashdot Mirror


State of WLAN Support on Linux?

ntropic asks: "I/ve recently bought a Belkin 802.11G USB adapter and was dismayed to find, after a few hours of struggling with it, that there seems to be no one who has managed to get it working under Linux. During the search for clues, it seemed that sum total of Linux support for wireless networking are the linux-wlan project, and the linuxant wrappers for Windows drivers. The former seems to support only Prism chipsets while the latter is a commercial solution, albeit quite an inexpensive one. Is that all, or are there better sources for wireless networking support?"

19 of 608 comments (clear)

  1. rt2x00 by cortana · · Score: 4, Informative

    As long as you don't need WPA, get a card with an rt2x00 series chip. The drivers work fine, though they are not yet good enough to be merged into the kernel. http://rt2x00.serialmonkey.com/

    1. Re:rt2x00 by Daengbo · · Score: 5, Informative

      The most common of these chips right now is the RaLink 2500, used in many laptops. The driver was open sourced in early 2005 and lacked some important features at the time, such as managed networks. The driver now is stable, though, and causes me no problems on my laptop except needing to be unloaded before suspending.

      For what it's worth, Ubuntu supports this chip out of the box with their restricted modules package, and I didn't have to do any CLI work to get the chip working under Breezy on my latest laptop, unlike a similar model that I bought last year which I spent a fair amount of time researching the chip and compiling the driver under Warty. Under Breezy, it only required filling in the necessary info in the standard network configuration dialog.

  2. Linux and wireless by Akaihiryuu · · Score: 4, Informative

    Not sure what chipset your wireless card uses, but if it's Broadcom, there are 2 solutions now. 1) http://ndiswrapper.sourceforge.net/ lets you use Windows drivers on Linux. 2) http://bcm43xx.berlios.de/ the native Broadcom driver is stabilizing now. It's experimental at this state, but people are using it on both x86 and ppc. I think you have to have a 2.6.15 or later kernel to use that though. I'm still using ndiswrapper for mine, it works okay until the native drivers are stabilized more.

  3. Madwifi by secureboot · · Score: 5, Informative

    Absolutely untrue. Madwifi has support for a ton of b/g chipsets based on Atheros stuff. You can pick up a nice DLink DWL-520 for cheap, and it'll work great. (at least, that's what I think i picked up a few months ago... its something like that, at least).

  4. Re:ndiswrapper by DarkClown · · Score: 3, Informative

    I'm using a Belkin 802.11G adapter with ndiswrapper. Works like a charm for me - just be sure and have the ndiswrapper sources around to make for when you do kernel upgrades...

  5. Re:Suse 10 by Anonymous Coward · · Score: 5, Informative

    That's because ndiswrapper is included with Suse 10, but not with knoppix or kubuntu.

    Let's make sure we take a chance somewhere in this list to thank the developers who've made it possible to use ANY wireless NIC with Linux.

    Thanks guys.

  6. Wireless drivers by JWSmythe · · Score: 4, Informative

    You aparently didn't come across the biggest Linux wireless site that I know of.

    http://www.hpl.hp.com/personal/Jean_Tourrilhes/Lin ux/

    The only wireless device that I haven't managed to make work is the Broadcom BM4306 that came with my HP zv6000. That's not a failure of the Linux drivers. There is a stupid soft button to enable the antenna, and no one has figured it out for this particular zv6000 subrevision. All my other wireless cards work fine in the PCMCIA/PCCARD slot.

    As I've found, if all else fails, get a wireless bridge (like a Linksys WET54G), and plug it into your ethernet port. Sticking on one extra device is a lot easier than switching to Windows. :)

    --
    Serious? Seriousness is well above my pay grade.
  7. You have the choice of Atheros, Ralink, Intel, by MrHanky · · Score: 4, Informative

    Atmel and Realtek, I believe. With WLAN, you really have to check which chipset you get before buying. Avoid Broadcom, Prism54 (driver support is coming, but depends on reverse engineering). Here is a page with some recommendations.

    Personally, I have an Asus WL-107 with Ralink rt2500 chipset (cardbus), which works acceptably, and a 3com with Prism54 that doesn't work. Beware of cards that change chipset from revision to revision.

  8. Linux wireless card compatibility list by rincebrain · · Score: 5, Informative

    Why hasn't anyone else linked to this chart which aims to be a complete list of wireless cards and what driver, if any, they're supported by under Linux?

    It's incredibly useful.

    Personally, I've had bad luck playing with the bcm43xx driver a few weeks ago, and I've loved the new version of the ipw2200 [finally the 1.0.[78] bugs are gone!] and my rt2x00 card is a nice backup.

    Also, ndiswrapper works fine, provided you use 1.8 if you're on a 64-bit system. :)

    --
    It's only an insult if it's not true.
  9. Re:The problem, I think, is always the same... by Karma+Farmer · · Score: 5, Informative

    hopefully next time they will research purchases for their Linux boxes a bit more carefully before plonking down their cash.

    It should be noted that you generally have no way of knowing the internal chipset in a network adapter from anything printed on the outside of the box. Manufacturers often sell two or more entirely different devices under exactly the same name, in exactly the same packaging, with nothing to distinguish them except serial numbers.

  10. If you haven't got your heart set on Linux... by Anonymous Coward · · Score: 3, Informative

    If you are simply using Linux because you don't like Microsoft products, you might want to have a wander into the *BSD camp and try out OpenBSD which has excellent wireless support* (see compatability list here - Belkin USB adapters are in there, but check the model number). OpenBSD is an extremely secure free operating system with most of the applications that you can find on a Linux distribution. If however it must be Linux, then try SuSE out - it may have the support you need.

    * And excellent documentation, a brilliant firewall, a wonderfully clean code base, superb ports system and super sweet line of T-Shirts! =)

  11. Ndiswrapper works great on belkin 802.11g card by CallMeeStoopEd · · Score: 3, Informative

    I have a Belkin 802.11g usb card based on the rt2500 chipset. It works great with the ndiswrapper kernel module. Make sure to follow the directions in the README/INSTALL files. Different versions of ndiswrapper work to varying degrees. I use ndiswrapper-1.1rc1 for the rt2500 Belkin adapter and ndiswrapper-0.10 for the builtin Broadcom adapter on my laptop. It sucks having to use different versions for the different cards, but I just set up a script to change things for me and it pretty much just works. Linux' support for hardware can be hard to set up initially, but once you get it working it usually continues to work (unlike a certain proprietary OS that fails every time the Wind-blows).

  12. Kernel developers looking for dramatic change here by kiwi_mcd · · Score: 3, Informative

    The network developers have recognised that this is a major problem at present. One of the big problems was that nobody was in charge in effect of wireless! (although Jeff Garzik has done a wonderful job of overall networking devices). John Linville has now taken on the job of sorting this mess out. (http://lwn.net/Articles/167272/ http://lwn.net/Articles/167270/).

    Subsequent to this discussion there has been a lot of positive discussion on the netdev mailing list and here are some updates:
    * Public git tree has opened now
    * WPA patches are getting merged
    * Other drivers are getting merged into kernel
    * OSDL is having a summit to get together the key players (http://developer.osdl.org/shemminger/blog/?p=29)

    I would say the picture in six months to a year will be dramatically better.

    If you want to contribute then google the netdev mailing list and jump on in. We would certainly appreciate help!!!

  13. Re:Absolutely laughable! by Weaselmancer · · Score: 5, Informative

    I'm guessing you don't know a whole lot about Linux driver development. I'm not being snarky, it's just your comment seems to indicate that.

    Plus, Linus' kernel isn't stable. He just waves his hand in the air and announces that 'the distros' will have to make Linux actually work. That means that now we have Red Hat's kernel, Suse's kernel, Mandrake's kernel, Debian's kernel.... and they are all running different versions and patch levels, and each will have different assortments of bugs.

    This is not really the case. Even though different distros do things differently, the kernel API remains the same. The only time the API changes is when Linus says so. And that usually happens on even numbered releases (if at all). You will typically see Linux drivers advertised that they work with the 2.4 or 2.6 kernel. Occasionally 2.0 kernel for legacy stuff. And that's pretty much it. Not a terribly difficult target at all. And certainly not harder than Windows.

    --
    Weaselmancer
    rediculous.
  14. Re:Absolutely laughable! by diegocgteleline.es · · Score: 3, Informative

    Linus (and others) *do* tweak the kernel API on a regular basis.

    Well, "tweak the kernel API" is not the same than "tweak every API in the kernel"

    Notice that the huge majority of the thousands of drivers inside the kernel doesn't have any changes at all between releases. It'd be crazy if the kernel needed to modify all the drivers for EVERY release. That's certainly not true. Some of them change, sure - when a given subsystem changes something. It doesn't happen every release. You can check it in the git web interface. Some drivers have not had any commit for MONTHS. In fact most of the commits you'll see in the changelogs are internal driver changes, not changes needed to make the driver work with a new api. Some drivers however (ej: the propietary nvidia driver) need changes. If they didn't put a entire opengl stack inside the driver things would be easier. Who knows.

    Of course, that's source. At binary level, everything changes. You can't load a kernel module compiled for another kernel version: There're checks to avoid that: Even for the cases where it could work. Many plugin-based apps (drivers are more like plugins, not "programs built in top of the kernel api") require that too. Linux is not a closed source kernel and we don't want that it becomes one.

    Windows XP maintains the compatibility, yeah. They've rewritten the USB stack 3 times or so (just like linux) and they maintain the compatibility for all the drivers supporting the 3 different stacks. Just imagine how horribly complex and hard to maintain and evolce the XP kernel has to be.

  15. no clue! by flithm · · Score: 5, Informative

    You have absolutely no idea what you're talking about! How on earth did this get modded up!?

    There is only the Linux kernel... and no you don't have to develop a driver for multiple versions of Linux! That's nothing short of absolute lies!

    If it's one thing I hate it's an anti-Linux zealot that doesn't even know what they're talking about. At least take the time to learn about what you preach against.

    A point by point rebuttal of everything you said:

    But first let me point out that I've actually written device drivers for both Windows and Linux, I am an open source software author, and I've played parts in writing large applications for big Windows shops. I run and use Linux and Windows on a daily basis... something you have obviously never done.

    So here goes...

    Windows moves *slower*. When you're writing drivers, slower is demonstrably a good thing.

    Windows does not move slower than Linux. The driver API changed significantly with NT, then with 2000. It's been largely stable since then, but there are still continuous changes. It's a complete misnomer to suggest otherwise.

    By the same token, the Linux API isn't as unstable as "keeping the API open" suggests. There are many drivers available in the kernel that have been there for... a LONG time. Most of them were ported to 2.6 with no trouble at all.

    As a person who has written device drivers I can tell you that writing and maintaining a Linux driver is significantly easier. The docs and community support is all there, and everything makes sense. It's pretty much the opposite when it comes to Windows driver development.

    Trying to maintain a driver for Linux would require constant attention.

    Simply not true. And the beautiful part about Linux is that even if a driver does need updating, there's a significant chance that if the driver is used by enough people, some person will just fix it on their own. But let me just reiterate that this is completely untrue in most cases. At least not any more than it's true for Windows.

    Plus, Linus' kernel isn't stable. He just waves his hand in the air and announces that 'the distros' will have to make Linux actually work. That means that now we have Red Hat's kernel, Suse's kernel, Mandrake's kernel, Debian's kernel...

    I'm sighing right now. Why... where do these idiots come from? And how do they get modded up!? Linux is a kernel. It's not an operating system. Nor is Red Hat, Ubuntu, Gentoo, etc... they're distributions of an OS that uses Linux as its kernel.

    I've built Linux From Scratch a few times, so I'm painfully / joyfully aware of what this actually means. You're obviously confused about this point so I'll explain it to you.

    Basically no matter what distro of Linux you use... you are using your own customized version of a Linux based OS. It may not seem like it when you've first installed it, but it's still true. By the time you get to know what you're doing your OS is probably inherently different than even some other person using the same base distro. You've installed different packages, maybe compiled your own apps and installed them wherever you feel like it. Customized start up scripts, etc.

    Whether or not you see that as a benefit is up to you. But let me tell it is a great benefit, and that's what makes Linux so great! That's why there are so many flavors (and no there's not just 5, there are literally hundreds). Choice is what makes it so great.

    Imagine a world with 5 automobiles that were supposed to fit everyone.

    Anyway... getting back to the point. So you've got all these infinite numbers and possibilities of Linux based OSes out there. Driver hell? I don't think so. This doesn't mean the kernel is any different and it doesn't mean writing a device driver for Linux has to be re-done for every OS, distro, or any other such nonsense.

    it means any commercial entity has to develop separate driver

  16. Re:ndiswrapper by DaveAtFraud · · Score: 4, Informative
    ...Works like a charm for me - just be sure and have the ndiswrapper sources around to make for when you do kernel upgrades...
    If you're using a rpm based distro such as Fedora, you might look into setting up Livna as a repository for yum and then just get the appropriate ndiswrapper rpm from them. The folks at Livna do a really good job of publishing a recompiled ndiswrapper rpm whenever the kernel gets updated.

    I'm running ndiswrapper under Fedora Core 4 (x86_64) on a HP Pavillion laptop with a built-in Broadcomm wireless NIC. Works great.

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
    Ben
  17. Re:the blame game by level_headed_midwest · · Score: 3, Informative

    Add the venerable Orinoco 802.11b to that list also. Works like a champ on my laptop.

    --
    Just "gittin-r-done," day after day.
  18. Re:the blame game by Directrix1 · · Score: 3, Informative

    To push your point a little more. I bought a 802.11g netgear card. I put it in. I booted Ubuntu from the LiveCD to check the support. It automatically detected the card and connected me to the nearest open WAP. Far far more painless than the Windows equivalent.

    --
    Occam's razor is the blind faith in the natural selection of least resistance and in universal oversimplification. -- EF