# HOWTO: Looking for a working 802.11g PCMCIA wireless card?

## D33T

I recently purchased a 3COM 3CRWE154G72 OfficeConnect wireless card because, accoriding to prism54.org, the card worked flawlessly in linux. When the card arrived, I learned that there are two version of this card and that the one I have, version 2, was a different, unsupported chipset.

I also know by reading through these forums and other places on the internet that the same applies to the Netgear 802.11g and Linksyst 802.11g cards (as well as MANY others).

So, I was in a spot that a lot of other people are in as well, until I read somewhere that the ZyXEL ZyAIR G-100 card still works with prism54.org, and this works in linux. Having nothing else to try, and not finding anywhere that another "version" of the card has ever been released, I decided to try one.

Unlike the other cards I tried, THIS CARD WORKED! In fact, I'm using it as I type this! I personally got mine from buy.com, but there are many online stores that sell this card. If you want 802.11g wireless in linux (and in PCMCIA form), this card will work.

What I did to set it up

Using the 2.4.28-gentoo-r9 kernel, I set the following:

```

General Setup --->

  PCMCIA/CardBus support --->

     <M> PCMCIA/CardBus Support

     [*] Cardbus support

  PCI Hotplug Support

     <M> Support for PCI Hotplug (Experimental)

Network device support --->

   Wireless LAN (non-hamradio) --->

     [*] Wireless LAN (non-hamradio)

     < > Intersil Prism GT/Duette/Indigo PCI/PCMCIA
```

I turn on PCI Hotplug because I thought I read somewhere that you need it for the firmware to load with prism54. This may or may not be correct; I'm simply posting what I did to help anyone else out; feel free to post any follow-ups or correct any of my errors!

Now, recompile your kernel and place the new kernel where it needs to be for your system. You may have to reboot for the remaining steps to work, but I'm not sure. I did just to make sure.

Then, I had to define some keywords for portage and emerge some packages for everything to work well.... You need to do these as root (or use sudo)

```

# echo "sys-apps/baselayout ~x86" >> /etc/portage/package.keywords

# echo "net-wireless/wireless-tools ~x86" >> /etc/portage/package.keywords

# echo "net-wireless/pcmcia-cs ~x86" >> /etc/portage/package.keywords

# echo "net-wireless/prism54 ~x86" >> /etc/portage/package.keywords

#

# emerge -av baselayout prism54
```

The baselayout >= 1.11 has wireless support built in. If I recall correctly, you don't need to enable anything in the kernel or install prism54, but I did because I couldn't get it to work otherwise. Also note that prism54 depends on wireless-tools and pcmcia-cs, so if you don't emerge prism54, you WILL NEED TO emerge pcmcia-cs and wireless-tools seperately.

After it's all done, you need to get the firmware from prism54.org. Rename it to "isl3890' and copy it to /lib/firmware/ and /usr/lib/hotplug/firmware/ (I know it needs to be in at least 1 of these two spots, but I dont' know which one it needs, nor have I tested it either way).

```

# mv 1.0.4.3.arm isl3890

# cp isl3890 /lib/firmware/

# cp isl3890 /usr/lib/hotplug/firmware
```

Now you need to setup your wireless connection. You need to edit /etc/conf.d/wireless to match your environment. Check the gentoo-wiki for some help. The file itself is very well commented though, so you shoudl be able to do it from there. Basically, you'll probably need something like the following (assumign that your wireless card is eth1, you use channel 6, and your access point's ESSID is 'homeap', you use dhcp, and you know the hex value of your wep key):

```

essid_eth1="homeap"

mode_eth1="auto"

channel_eth1="6"

sleep_scan_eth1="1"

key_homeap="yous-houl-duse-your-wepk-eyhe-re"

config_homeap=( "dhcp" )

dhcpcd_homeap="-D -t 5"

preferred_aps_eth1( "homeap" "any" )
```

There are a lot more settings that you can play with, but those are the ones I used (for now anyway). It tried to connect to 'homeap' first, and if it fails, it should jump on the nearest access point.

In my case, I also needed to load some modules at boot.....

```

# echo "ds" >> /etc/modules.autoload.d/kernel-2.4

# echo "pci_hotplug" >> /etc/modules.autoload.d/kernel-2.4

# echo "prism54" >> /etc/modules.autoload.d/kernel-2.4
```

Make sure you add pcmcia to boot as well, then reboot (or start everything by hand if you feel like it)....

```

# rc-update add pcmcia boot
```

Everything should be up and running and you should be connected to your access point!

NOTES: You may not need to do all of these steps, this is simply a rundown of what I did. Feel free to deviate or post some comments if you'd like. I use these forums a lot (as well as gentoo-wiki.com), so I like to post helpful information when I have it!

So, if you want to get your linux laptop (or any computer with a PCMCIA port) connected to your access point but you don't want to get an orinoco or other atheros-based card (or don't have the cash to...), get yourself an ZyXEL ZyAIR G-100 (also called G100). Hope this was helpful - enjoy!

My references:

http://gentoo-wiki.com/HOWTO_Wireless_Configuration_and_Startup

http://gentoo-wiki.com/HARDWARE_PCMCIA_NIC

http://prism54.org/

----------

## d0nju4n

cool HowTO.  I misread the subject line and thought you needed help...silly me.  Anyway, you may want to change the subject and add HowTO to it somewhere, it may be more helpful to people looking for this type of thing

----------

## D33T

Good point. Fixed, and bumped in hopes people will find it helpful!

----------

## bobulus

Right on, awesome howto! I just (literally 5 minutes ago) got my Allnet ALL0271 PCI card working. So here is another card to recommend to poential wireless gentoo-ers:

ALL0271 -> prism gt/duette chipset

http://www.allnet-usa.com/flash/shop.php?kat=WiFi+54Mbit

I ordered mine right from the allnet website and it took about a week to get to me (Canada). Its even advertised to be "ready for unix!" GREAT CARD - highly recommended.

----------

