Linksys WPC54G ver. 1.2 with WPA on Hardy

I’m pleased to say that my old trusty Linksys WPC54G ver 1.2 works without ndiswrapper Hardy Heron. I have been using this card since Hoary, but never “natively”. My last attempt at installing it was under Feisty and I failed. Whether it was me or Feisty being… Well, feisty and uncooperative remains to be determined. You were supposed to do something like this:

sudo aptitude install bcm43xx-fwcutter
sudo bcm43xx-fwcutter -w /lib/firmware/ ~/bcmwl5.sys

Where bcmwl5.sys was the original Windows driver you could obtain from the linksys ftp site. It did not work for me, and I ended up falling back on ndiswrapper like usual which always worked, but was always flaky.

I figured I might as well try the bcm43xx trick under Hardy. Things generally improve over time, and old bugs and quirky behaviors go away – it’s not like Debian where you get a stable release once in a century. Unfortunately, it once again failed miserably. Or rather I failed. Or perhaps, should I say we had a miscommunication. I asked Hardy to use the bcm43xx module and he did exactly that – despite the fact it was the wrong thing to use.

What I didn’t notice was that some sort of a switcharoo took place, and this time around the errors spewed forth by the card were something among the lines of: b43/ucode5.fw” not found. As you can probably see, they did not mention bcm43xx anywhere, but I assume that b43 == bcm43xx. I assumed wrong. They are two different modules. So how do you make the card work under Hardy? Like this:

sudo aptitude install b43-fwcutter

Yep, that’s it.It automatically pull down the relevant firmware, cut it and throw the relevant .fw files into /lib/firmware automagically. It’s that easy. This is what happens when you assume the “well, this worked last time so I’m just gonna keep trying and ignore this very helpful error message right here cause I know better” stance.

My next task was of course to configure the system to use WPA. Ubuntu is nice enough to support it out of the box via the wpa_supplican package – not all distros do though. Etch ships without it, and it took me a while before I figured out why I couldn’t connect. My Gutsy laptop had no issues picking up the Wifi in my house. All I had to do was to pick the network from a list using knetworkmanager, type in my passphrase and I was ready to go. It would be a bit more difficult with this system, because I was building it bare bones, without any window manager.

How do you set up WPA without the GUI? There is a really nice writeup in Ubuntu forums that shows you what you need to do. Let me summarize it here, for future reference.

First you need to convert your pass phrase to an actual hex key. You do this by running the following command:

wpa_passphrase my_ssid "my long passphrase"

If your passphrase is an actual phrase (ie. it contains spaces as it should) you will need to put it in quotation marks. The output will look something like this:

network={
    ssid="my_ssid"
    #psk="12345678"
    psk=fe727aa8b64ac9b3f54c72432da14faed933ea511ecab1 5bbc6c52e7522f709a
}

You are interested in the last line – the psk value. Copy it, save it or hold on to it in some way. Next open up your /etc/network/interfaces and add the following lines to the bottom:

auto wlan0
iface wlan0 inet dhcp
wpa-driver wext
wpa-ssid <your_essid>
wpa-ap-scan 1
wpa-proto WPA
wpa-pairwise TKIP
wpa-group TKIP
wpa-key-mgmt WPA-PSK
wpa-psk <your_calculated_psk_key>

The last line is where you paste in that long hex key we calculated in the previous step. Now running:

sudo ifup wlan0

should bring your wireless up, authenticate and negotiate an IP from the DHCP. The first line, will automate this process so that every time you boot, or insert your card into the machine, it will try to authenticate and connect.

There is one small issue with this setup that I noticed. The LED’s on my card no longer work, but that might be unrelated to this setup. They worked when I was using it under Feisty with ndiswrapper, and it did lit up when I briefly experimented with Debian Etch on this system. But they never switched on under Hardy for some reason. Then again, maybe the card just had it – I’ve been using it for few years now, and it is a little bit “bent” from that one time, I forgot to take it out before putting the laptop in my bag. so perhaps the LED’s just died a natural death. The card still works though.

[tags]linux, hardy, ubuntu, hardy heron, linksys, wpc54g ver 1.2, wpa, tkip[/tags]

This entry was posted in sysadmin notes and tagged , . Bookmark the permalink.



4 Responses to Linksys WPC54G ver. 1.2 with WPA on Hardy

  1. Richard H UNITED STATES Mozilla Firefox Windows says:

    Awesome! You told me exactly what I needed to know to get my old wireless card to work on my daughter’s linux laptop.

    Thanks a bunch!

    Reply  |  Quote
  2. Chris Nolte UNITED STATES Mozilla Firefox Ubuntu Linux says:

    Hi,

    I just installed Ubuntu today (10.04), trying to extend the life of my Dell Inspiron 6000. I have an ethernet connection, and am trying to get the wireless connection working, so far without success. I have a WPC54G ver 1.2 card. I tried this command:
    sudo aptitude install b43-fwcutter
    and it didn’t do anything:
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Initializing package states… Done
    Writing extended state information… Done
    No packages will be installed, upgraded, or removed.
    0 packages upgraded, 0 newly installed, 0 to remove and 240 not upgraded.
    Need to get 0B of archives. After unpacking 0B will be used.
    Writing extended state information… Done
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Reading extended state information
    Initializing package states… Done

    I get the impression from your description that it is supposed to detect the existence of the card and find the right driver and install it? What am I missing?

    Next, I tried:
    chris@panda:~/WPC54Gv2_40826$ sudo b43-fwcutter bcmwl5.sys
    Sorry, the input file is either wrong or not supported by b43-fwcutter.
    This file has an unknown MD5sum ebf36d658d0da5b1ea667fa403919c26.

    I’d appreciate any suggestions as to how to proceed.

    Reply  |  Quote
  3. Chris Nolte UNITED STATES Mozilla Firefox Ubuntu Linux says:

    I should say that in the network connection manager drop-down, under “wireless networks” it says “device not ready”.
    sudo lshw -C network says that wlan0 is DISABLED.

    Reply  |  Quote
  4. Chris Nolte UNITED STATES Mozilla Firefox Ubuntu Linux says:

    I got prompted to update a bunch of packages, and something fixed the problem. Now my wireless connection is working. So, thanks and disregard the above!

    Reply  |  Quote

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>