WiFi under Linux - rant no 7

Discussion in 'Linux Networking' started by Timothy Murphy, Mar 14, 2006.

  1. Why is WiFi configuration under Linux so painful
    and time-consuming?

    You put your WiFi card in the laptop.
    If you're lucky one light comes on.
    If you are really lucky the second light starts flashing.
    (I'm thinking of Orinoco-like cards.)

    But you get no message from the computer.
    You try "ping www.google.com" but this meets with silence.

    No-one tells you, but sooner or later you look in /etc/pcmcia
    and deduce that the computer reads "config"
    and then perhaps "wireless.opts".
    Unless the kernel is very recent,
    in which case it tries to use hostap whatever you say.

    What would I like?
    First of all I'd like to be told the card is actually working.
    Then I'd like to be told if it could "hear" any other WiFi source,
    and if so what I need to do to link to it.

    The wizards I've tried (mainly in RedHat and more recently Fedora)
    are utterly useless.
    I thought NetworkManager would be the answer,
    but now I doubt if any such program can work with all WiFi cards.
    In my case it simply added to the problems
    by altering configuration files already set up.

    As a general rule, I'd like any program that alters files
    to be obliged to copy the previous version
    (in such a way as not to over-write earlier versions,
    eg config1, config2, etc).
    And I'd like any program that alters config files
    to tell me what files it has altered.

    I believe millions of hours have been wasted around the world
    getting WiFi set up.

    Windows is not perfect, by any means -
    I'd give it 5 out of 10, and Linux 1 out of 10.
    At least when Windows WiFi doesn't work,
    it doesn't work -
    it doesn't hint that it may start working
    if only you try a bit harder.
    Though the Windows Troubleshooter
    is almost as bad as the Linux wizards.
     
    Timothy Murphy, Mar 14, 2006
    #1
    1. Advertisements

  2. Timothy Murphy

    Unruh Guest

    It isn't. Worked out of the box for me.

    My laptop already had one.
    Why should you get a message from the computer? What message?
    Yes, not only do you need the network card in the computer but you have to
    tell it that you want it to connect. Not everyone wants to connect to any
    random AP that happens to be around when the laptop is switched on. And if
    there are 10 AP, whch one do you want.

    Many distros have a wireless setup gui. Use it.

    Or you can set it up by hand.
    Which distro do you use?


    ????
    Not on my distro it does not. Are we supposed to guess your distro?

    You want a whole array of messages on your screen "The wireless is working"
    " The hard drive is working" "the keyboard is working", "The screen is
    working",..... I sure would not.
    iwlist s
    in a terminal window.

    Ah so you use redhat?
    Now if you had some questions people might be able to help you.

    OK, you have told us what you would like. Some do that, others do not.

    Well, maybe. Mine were not.

    ??? Now if only you gave us some information we might be able to point out
    what it is you are doing wrong.


    There are about 100 troubleshooting methods under Linux.

    a) lsmod|less
    look for th ewireless module driver.
    If it is loaded
    b) iwlist s
    Do AP show up? Under what port? (eth1? wlan0? ath0?....)

    c)Edit /etc/sysconfig/network-scripts/ifcfg-eth1 ( or whatever the port
    was) and enter the relevant info ESSID, KEY, ...
    ifup eth1

    Of course you also have to tell the system whether you want the default
    route out of the wireless or the eth0 port.
     
    Unruh, Mar 15, 2006
    #2
    1. Advertisements

  3. No argument, there.
    Note: comment inline.

    The sig you have been using for quite some time indicates you may be a
    professor (correct?) Well, professor, when I used RedHat I felt like I'd
    need a pH.D. to figure out how to fix it when it was broken (which was all
    of the time.) Instead of bitching about it, I switched disributions. Try
    slackware. That distibution follows the principle of Occam's razor- I'm
    sure you know it.
     
    Douglas Mayne, Mar 15, 2006
    #3
  4. Timothy Murphy

    Doug Laidlaw Guest

    I am about to try Wi-Fi under Mandriva. There are plenty of wizards
    provided, and there are a couple of points to watch that I have seen on the
    Web. I will let you know how I find it. As Bill says, you need to
    understand at a basic level why you are taking each step. Like you, I am
    not a tech type. I am a lawyer.

    The other thing is that you need to do things at the remote unit as well.

    Doug.
     
    Doug Laidlaw, Mar 15, 2006
    #4
  5. Timothy Murphy

    ray Guest


    Jeez - I don't know why you had such difficulty. I plugged a Belkin
    wireless card into my laptop, followed a couple of simple steps to set up
    ndiswrapper, and voila - there it was. No hassle, no fuss, took about
    three minutes. I've done this with Elive, (K)Ubuntu, and Suse.
     
    ray, Mar 16, 2006
    #5
  6. So, you were lucky.
    But what were the "couple of simple steps"?
    What would you have done if those steps had not worked?

    It really shows a lack of imagination to say
    "What problem? It works fine on my completely different computer,
    with a completely different WiFi card."

    It is obvious from reading this newsgroup
    that many people _do_ have problems setting up WiFi.
    And in my opinion Linux is very, very bad at helping them.

    When my car has broken down,
    I do not find it much help for a spectator to say,
    "I don't know what you are worrying about.
    My car is working fine."
     
    Timothy Murphy, Mar 16, 2006
    #6
  7. Things evolve under GNU/Linux, with support becoming better over time for
    more devices/protocols. If you have to wait for someone to
    /* wizardize */ the solution so it will be palatable for you, then
    you'll have to wait longer in general. Also, if you are starting with
    unsupported hardware, then you might have to wait indefinitely for
    support. If you want support /* now */, then you have to pursue other
    options. You can write the code yourself, or set a bounty for the work to
    be done, etc. It won't magically appear because you wish that it
    existed.

    To maximize all of the contributions made by the entire free
    software/open source movement, you need to learn to use the source. Look
    for a distribution which gives you the power to do that. If you don't,
    then you are at a disadvantage. People, like me, will point out that
    it could be working for you- because you asked the question. I won't tell
    you how to fix RedHat/Fedora because I gave up on that approach. If
    you need RH/FC fixed on your system, then _your_ work is in front of you.

    Part of using GNU/Linux (and other OSs as well) is learning how to fix it
    when its broken. This is one area where the various distributions diverge.
    Some distro's don't expect the end user to be able to fix anything for
    himself, while other distro's expect that he can do simple things, and
    others expect that you have compiled and bootstrapped completely from
    scratch. Decide where you fit in that picture.
     
    Douglas Mayne, Mar 16, 2006
    #7
  8. Timothy Murphy

    Keith Keller Guest

    When my car has broken down, I pay a mechanic to fix it, and I don't
    rant at the guy I'm paying when explaining my issue.

    --keith
     
    Keith Keller, Mar 16, 2006
    #8
  9. Timothy Murphy

    ray Guest

    It was like 'ndiswrapper -i /locationofdrivers' followed by 'modprobe
    ndiswrapper' - all documented in the ndiswrapper man pages. I don't
    understand why it wouldn't have worked - I checked before I went shopping
    and got a card supported under ndiswrapper. "If I were president, then the
    moon would be made of green cheese." - A false assumption leads to any
    conclusion you want.
    In my rather limited experience, if you google first, pick a supported
    card and follow a few simple instructions - it works. The people who have
    problems generally are working with a non-supported card. The off-brand
    card that came with my laptop did not work. Simple solution: $30 for an
    ndiswrapper supported card.
     
    ray, Mar 16, 2006
    #9
  10. Personally, I regard as ndiswrapper as a second-best solution
    at the best of times - something I'd use if nothing else worked.

    In any case, didn't you have to specify an encryption key?
    An ESSID?
    Do you have a static IP address?
    If so, how did the WiFi device at the other end know about it?
    How did your laptop know what AP to link to?
    Was it told what APs were available?

    Even with Windows - which in this one area
    is miles ahead of linux -
    you don't just put a card in and it is connected.
    What would it connect to?
    I wouldn't describe a card that only works with ndiswrapper as "supported".
    Why not get a card supported by the kernel?

    In any case, you have not said what you would do if your card did not work.
    Apparently you had one that did not work,
    and your solution was to get another one.
    But presumably the card that did not work for you
    did work under Windows.
     
    Timothy Murphy, Mar 16, 2006
    #10
  11. That's an absurdly bad analogy.
    Do you pay someone to fix your WiFi if it does not work?
    If that is your approach, why not just use Windows?
     
    Timothy Murphy, Mar 16, 2006
    #11
  12. Sorry, but that is just not relevant to the point at issue.
    There is no list as far as I know of WiFi devices supported by Linux.

    I'm talking about cards that certainly do work under Linux,
    so there is no question of writing code for them.
    But it is often absurdly difficult, in my view, to set up WiFi.
    Where do you set the WEP key?
    How do you tell if it is ASCII or hex?
    Where do you set the ESSID?
    Why can't Linux tell me that it hears a remote system,
    but I have to give the correct WEP code,
    as Windows does?

    Windows tells me there are 4 networks it sees,
    and asks me to choose between them.
    Linux either connects my laptop to my desktop,
    or else it doesn't, and doesn't tell me anything.
    Although I usually use Fedora, this issue has nothing to do with that.
    My rant actually came from setting up WiFi on an old ThinkPad I bought
    last weekend, which was running Slax with vmware .
    I found it quite hard to work out how vmware-player worked,
    but that is a different issue.

    What annoyed me was that when I had vmware set up,
    and my WiFi card was working, to the extent that the light on it
    was flashing, indicating that it was receiving and sending packets,
    there was no obvious indication of why it was not linking to my LAN.
    I found in the end that the WEP key was being read in ASCII,
    rather than hex, because I had used lower case abcdef.
    So my machine knew what I wanted to link to,
    and had exchanged packets with that machine.
    Why then didn't it tell me what the problem was?
    This had nothing to do with the distro.
    As it happens, I compile a CVS version of orinoco_cs
    to go with the kernel (which I also compile),
    because the standard version of orinoco_cs does not seem to work
    with USB devices.
     
    Timothy Murphy, Mar 16, 2006
    #12
  13. Timothy Murphy

    Unruh Guest

    What you do on any computer with any operating system where something does
    not work.

    No, it was used to demonstrate to you that your rant was over some
    peculiarity of your system, not all systems. Linux has not problem with
    wireless cards. Linux handles wireless cards fine. Linux has trouble with
    SOME wireless cards. Of course if yours happens to be one, you many be
    upset. YOu should probably first direct your upset at the manufacturer
    since it is his product that does not work. If you plugged in your wireless
    card in Windows and it did not work what would you do?


    Linux is an operating system. Linux does not "help them".
    If the wireless card does not work, there are a number of possible reasons.
    a) Noone has written a driver for it, including the manufacturer. In this
    case it may be possible to use eitehr Linuxant driverloader or ndiswrapper
    to use the windows driver in Linux.
    b) The card is new and your operating system is old. In that case the
    operating system simplydoes not recognise the card.
    c) The manufacturer went to a lot of trouble to ensure that Linux could not
    use the card no matter how hard people tried to get it to work.


    However if you say, "My chevy does not work. General Motors does make cars
    that work." a response that "My chevy works fine" is a contradiction to
    your claim that General Motors does not make cars that work.

    Had you simply said " my wireless card does not work" people would have
    responded with " please give us the details and maybe we can help". YOu
    said Linux wireless does not work, which is contradicted by the millions
    who use wireless under Linux.
     
    Unruh, Mar 16, 2006
    #13
  14. Timothy Murphy

    Unruh Guest

    Depends on the distribution.
    It does
    iwlist s
    will list all of the AP the card can find. Under encryption, on means you
    need a WEP key. The essid is listed (or hidden in which case you have to
    know it.)


    YOu did not ask it.

    An old computer with an old operating system? Hmm, I seem to have a lot of
    trouble setting up wifi on my Commodore 80 as well.


    Probably because you did not ask it.
    Apparently you finally did.
    That is the driver. It has absolutely nothing to do with user interaction
    nor should it. The various programs which interact with the user ARE
    distribution dependent. So, it certainly does have to do with the distro.
     
    Unruh, Mar 16, 2006
    #14
  15. In my experience, sometimes that works and sometimes it doesn't.
    Sometimes you get a working driver and all is well, then you upgrade
    your kernel by a single minor release and - oops - the driver won't
    compile now. Or it compiles but it won't install. Or it compiles and
    installs but won't associate, or makes iwconfig dump core, or, or, or.
    My advice is that if you find a configuration that works for you, do not
    change anything at all - which is kind of pathetic advice, I admit, but
    it's the only safe thing I've found.
     
    Jeremiah DeWitt Weiner, Mar 16, 2006
    #15
  16. Okay, if you say it's not relevent, then it's not relevent to you. Hear
    what you want.
    What happens when you want to go beyond WEP. Then, AFAIK, WPA does have a
    list of supported hardware. If it's not supported somewhere on this page
    then you're going to have your work cut out for you:
    http://hostap.epitest.fi/wpa_supplicant/
    If all you want is WEP, then iwconfig is the baseline command:
    man iwconfig

    This is distro dependant. In slackware, I'd start looking in
    /etc/rc.d/rc.inet1.conf. In another distro, I'd have to look for a
    wizard.

    It also can be "absurdly easy." I can go to the library or another
    location which allows open access and simply connect. This is going to be
    distribution dependant how you disable/enable wifi when moving from
    location to location, but falling back to the base commands iwconfig,
    dhcpcd may be relevent for all linuces.
    Well, is vmware-player part of your problem or not? If VMWare is being
    used, then explain with more specificity:

    Option 1: Booted Slax Live CD which was hosting VMWare player to serve as
    guest for another OS. Why this is a good idea is not clear.

    Option 2: Booted some other OS hosting VMWare player to boot guest Slax
    OS. I guess this is to see how well Slax does with virtual hardware.
    Again, how does this help?

    Option 3: Some other.

    I think it would be more likely to succeed using a full distro instead of
    a live CD. Slax does a lot, but the question is "does it do this?"
    Again, it's not clear why you introduced VMWare (or if you did).
    Sorry, I don't know anything about that hardware. I have tested madwifi
    and centrino hardware only.
    Note: comments inline.
     
    Douglas Mayne, Mar 16, 2006
    #16
  17. Timothy Murphy

    Keith Keller Guest

    That was intentional. Your initial analogy was absurdly bad.
    I don't, because I can fix it. I can't fix my car, unfortunately.
    It is not my approach, but it seems to be yours. Did your rant to
    people you're not paying for help fix your wifi?

    My wifi works pretty well. I'm using the experimental bcm43xx driver
    with an Airport Extreme and the Slackintosh distro on an iBook.[0] If I
    was able to figure out how to do *that*, you should, with sufficient
    effort, be able to get your wifi working, or at least detail to the group
    what you're seeing so that someone can give you enough advice to help
    you get it working. The fact that you don't seem to want to expend this
    effort (or, at least, have not expended any such effort yet) is not the
    fault of linux or a particular distro.

    --keith

    [0] I really should update my driver--maybe I can get it to support
    better than 1Mbps on my hardware. :)
     
    Keith Keller, Mar 16, 2006
    #17
  18. Timothy Murphy

    ray Guest

    Precisely my solution. It would be much preferable if hardware
    manufacturers would make Linux drivers - or at least release their
    'proprietary specs' which everyone in the industry already knows, so that
    proper drivers could be written.
    There is a list which covers a lot of wireless cards for Linux. It
    identifies fully supported cards, those which will work with ndiswrapper,
    and those that are pretty much hopeless.
    I got the cheapest thing I could find with a good likelihood of working.
    This particular card may work with a kernel driver - I'm not sure exactly
    which chipset is inside, but it looks promising. I've not had the time to
    try it, and ndiswrapper works, so not much motivation.
    That is true. I followed the ndiswrapper directions for the included card,
    hoping it might work. It didn't. So I got another one. The included card
    was only 802.11b anyway, so no big loss - the new one is 802.11g.
     
    ray, Mar 17, 2006
    #18
  19. Sadly, that's simply not true.
    iwlist only lists the machine I am actually connected to.
    windows can see 3 APs at this moment.
    ---------------------------------
    [[email protected] ~]$ sudo iwlist eth0 s
    eth0 Scan completed :
    Cell 01 - Address: 02:02:2D:4A:52:80
    ESSID:"maths.tcd.ie"
    Mode:Ad-Hoc
    Frequency:2.457 GHz (Channel 10)
    Signal level:-77 dBm Noise level:-96 dBm
    Encryption key:eek:n
    ---------------------------------
    I know from the flashing light on my laptop card
    if I turn off my desktop
    that Linux also sees one at least of these APs.
    But iwlist shows nothing.
    Also, if I give the wrong WEP key then iwlist shows nothing.
    The operating system is not old:
    ---------------------------------
    [email protected]:~$ cat /etc/slackware-version
    Slackware 10.1.0
    [email protected]:~$ uname -a
    Linux slax 2.6.12.2 #1 SMP Sat Jan 28 17:12:56 GMT 2006 i686 unknown unknown
    GNU/Linux
    ---------------------------------
    Incidentally, I had no choice in operating system -
    this is what the machine came with,
    and until I had WiFi set up I had no way of changing it.
    As it happened I quite like Slax (and vmware)
    and will probably continue to run them on this laptop
    if I can sort out some issues with installing Slax "modules".
    I did not "ask it".
    It simply occurred to me that it might want the WEP hex key
    with capital ABCDEF (I used lowercase because that worked in Windows),
    and when I changed it - with iwconfig as you suggest -
    it worked.

    My point (you seem to be deliberately misunderstanding this)
    is that Linux did not tell me, as Windows does,
    that it could see the device I was trying to link to,
    but that I had given the wrong key.

    I repeat, Linux does not do a good job of helping you
    if you have a problem with WiFi.
    Several people seem to feel they have answered this complaint
    by saying that they don't have any problems with WiFi.
    Great. Then the issue does not arise for you.
    But it is apparent from this newsgroup that lots of people
    _do_ have problems with WiFi,
    and it is their problems I am talking about.
     
    Timothy Murphy, Mar 17, 2006
    #19
  20. Sigh.
    I've already explained several times that I _do_ have WiFi working
    on my ThinkPad,
    but it was _more difficult_ than it should have been, IMHO,
    and Linux _did not give me as much help_ as it should have done.

    While I don't claim to be a WiFi guru,
    I think I have a reasonable understanding of WiFi under Linux,
    and it seems to me that someone with less knowledge -
    a Linux newbie, say - is likely to meet considerable difficulty
    in setting up WiFi under Linux.
     
    Timothy Murphy, Mar 17, 2006
    #20
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.