Netgear MA401 Wireless NIC in SuSE 8.2


0. Introduction / Purpose - 1. Steps - 2. Troubleshooting - 3. Links

Dave Levin

0. Introduction / Purpose

The Netgear MA401 and MA401RA are relatively cheap ($30 on Amazon at the time of this writing) wireless pcmcia network cards. My story, much like many of the other Linux users out there, is that I got ahold of this card, and found troubles getting it working.

I immediately turned to Google. In a perfect world, there would have been a page that gave instructions on getting it working. The best I could find, however, were some fragmented newsgroup articles (most in German), and a couple sites with a jewel of information here or there.

So, in my neverending pursuit to try to make this a perfect world, I have consolidated all of this disparate information into the site you hold before you.

If there are any updates necessary, please feel free to contact me at dml (AT) cs.umd.edu.

1. Steps

Let's get to it.

0. Edit /etc/pcmcia/wlan-ng.conf

Anywhere where it says NETGEAR MA401, uncomment the lines (if commented) and change bind "prism2_cs" to bind "orinoco_cs" . This should yield a file that looks like this:

[...]

card "NETGEAR MA401 11Mbps 802.11 WLAN Card"
    version "NETGEAR MA401 Wireless PC", "Card", "Version 01.00"
    bind "orinoco_cs"

[...]

card "NETGEAR MA401RA 11Mbps 802.11 WLAN Card"
    version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA"
    bind "orinoco_cs"

[...]

Make sure you make this change at every occurance of NETGEAR MA401 : there are probably two of them, and depending on if you have the MA401 or the MA401RA (not specified anywhere on the card itself), you won't want to miss it.

1. Edit /etc/sysconfig/pcmcia
Set PCMCIA_SYSTEM to "external", that is:

[...]

PCMCIA_SYSTEM="external"

[...]

2. Edit /etc/sysconfig/hotplug
Specify the PCMCIA hardware to be the default hotplug hardware.

[...]

HOTPLUG_NET_DEFAULT_HARDWARE="pcmcia"

[...]

The purpose behind this is explained further in step 4 below.
3. Set up the card using YaST2
The next step is to establish an interface name for the card. For ethernet devices, this is generally of the form eth#, where the numbers begin at 0. If you have a wired ethernet card, then eth0 is probably already taken. In any case, choose the smallest number not already taken (probably eth1).

This is a straight-forward step and I present it here in order to show how it is possible to add a wireless pcmcia device through YaST without having to name it eth-pcmcia. If you don't mind having it named this, then by all means just add the wireless card in the straightforward manner (that is, specify it as being PCMCIA when creating it in YaST).

3.0 Start up YaST2

There is generally an icon for this somewhere, else you can start it from the command line with sudo yast2.

3.1 Get rid of the existing wireless device

In Network Devices -> Network card, click the "Change..." button at the bottom right and remove any of the devices that correspond to your wireless card. If none are listed, then skip this step. Otherwise, go ahead and delete them; we'll add them in the next step.

3.2 Add the wireless device

In Network Devices -> Network card, click the "Change..." button at the bottom right. Next, click the "Add" button at the bottom.

This is the important part. Check the "Wireless device" box, but do NOT specify that it is PCMCIA. This will allow you to name the card eth# as opposed to the default of eth-pcmcia.

Click "Next", choose your setup method (static IP or DHCP) and the other information (for help on this, see one of the many other help files out there).

With this, you should have a device with the name eth #. Now we need to make up for the fact that we did not say the card was PCMCIA.

4. Edit /etc/sysconfig/network/ifcfg-<device name>
Having created a new device, you caused a file to be created, the name of which is dependent on the name of the device. For instance, if you named it eth1, then you must edit /etc/sysconfig/network/ifcfg-eth1.

It is necessary to specify some of the modes. Here is my file in its entirety:

BOOTPROTO='dhcp'
MTU=''
REMOTE_IPADDR=''
STARTMODE='hotplug'
UNIQUE=''
WIRELESS='yes'
WIRELESS_ESSID=''
WIRELESS_KEY=''
WIRELESS_MODE='automatic'
WIRELESS_NICK='Prism I'
WIRELESS_NWID=''
As you can see, I set mine up to use DHCP and to automatically grab the wireless network settings, such as the ESSID. Help on these settings is abundant.

Setting STARTMODE to 'hotplug', in addition to step 2 above, has a very cool consequence. This will make ifup and ifdown unnecessary: to stop/start the interface, all you need to do is remove/insert the pcmcia card. I have found this to be very useful in areas where the connection to the WAP has been unstable.

5. Reboot
Reboot your machine. This allows the files where you stated the module name (orinoco_cs, not prism2_cs) to be reread, and the new modules to be loaded.

At this point, your card should be usable. The standard network tools (ifconfig, iwconfig, ifup, etc.) ought to be fair game.

2. Troubleshooting

The most useful troubleshooting tip I came across was to tail /var/log/messages while inserting and removing the card. This will show if the modules are getting loaded correctly, as well as which modules it is trying to load. Keep in mind: it ought to be loading orinoco_cs . If it is not, then your /etc/pcmcia/wlan-ng.conf file is probably wrong.

For more information on this, view the SuSE Wireless LAN Support site, linked below.

3. Links

Here are some of the pages I found that offered some good insight: