Linux Install and Configure Netgear WG311 Marvell 88w8335 Rev 03 Chipset Wireless Card

Q. How do I install Netgear WG311 (Marvell 88w8335 Chipset) Rev 03 PCI wireless card driver under Ubuntu / Debian Linux operating system? How do I configure WPA authentication using Netgear wireless router and this card?

A. There is a work in progress Linux native driver for Marvell 88w8335 chipset based card. This driver seems to work with USB device oply. However, you can load and configure Netgear WG311 / Marvell 88w8335 chipset based card using Ndiswrapper Linux driver.

Ndiswrapper allows to use Windows wireless card driver and firmware under Linux. You need following softwares to configure Netgear WG311 PCI card:

  1. Ndiswrapper
  2. Netgear WG311 PCI Windows XP driver (available on driver CD or online here)
  3. Instructions are tested on Ubuntu and Debian Linux, but should work with any other Linux distros

Step # 1: Install Ndiswrapper utilities

Open the terminal and type the following command:
$ sudo apt-get update
$ apt-cache search ndiswrapper-utils
$ sudo apt-get install ndiswrapper-common ndiswrapper-utils-1.9

Step # 2: Download Windows Driver for Marvell 88w8335 PCI chipset

$ cd /tmp/
$ wget ftp://downloads.netgear.com/files/wg311v3_1_0.zip
$ unzip wg311v3_1_0.zip

Step # 3: Install Driver

To install driver, enter:
$ cd "/tmp/WG311v3 V1.0/Driver/Windows XP/"
$ sudo ndiswrapper -i WG311v3.INF

Verify that driver was installed:
$ ndiswrapper -l
Output:

mrv8335 : driver installed
        device (11AB:1FAA) present

Finally, install ndiswrapper driver itself:
$ sudo modprobe ndiswrapper
Run iwconfig to see wlan0 interface:
$ iwconfig

Step # 4: Install wpasupplicant

Now install wpasupplicant software, enter:
$ sudo apt-get install wpasupplicant

Step # 5: Configure WPA authentication

Open /etc/wpa_supplicant.conf file using gedit or other text editor, enter:
$ gksudo gedit /etc/wpa_supplicant.conf
Append following configuration for WPA:

network={
        ssid="YOUR-NETWORK-ESSID"
        proto=WPA
        key_mgmt=WPA-PSK
        pairwise=TKIP
        group=TKIP
        psk="YOUR-PASSWORD"
}

Save and close the file. Start Wi-Fi Protected access client:
$ sudo wpa_supplicant -Bw -c/etc/wpa_supplicant.conf -iwlan0

Step # 6: Grab IP address via DHCP

Type the following command:
$ sudo ifconfig wlan0 up
$ sudo dhclient wlan0

Output:

Internet Systems Consortium DHCP Client V3.0.5
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/wlan0/00:1e:2a:47:42:8d
Sending on   LPF/wlan0/00:1e:2a:47:42:8d
Sending on   Socket/fallback
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPACK from 192.168.0.1
bound to 192.168.0.2 -- renewal in 37933 seconds.

Step # 7: Test connectivity

Type the following command
$ ping yahoo.com
$ host google.com

Fire a webbroser and open gmail or google.com.

Step # 8: Shell Script To Start Everything

Make sure your driver get loaded each time you boot your computer via kernel module configuration /etc/modprobe.d/ndiswrapper file:
$ sudo ndiswrapper -m
Download and use a script called /root/wlan.up. Customize it according to your requirements:
$ gksudo gedit ~/wlan.up

 

Save and close the file:
$ sudo chmod +x ~/wlan.up
You can call this script from /etc/network/interfaces or your personal shell script startup file ~/.bash_profile or from GNOME.

Updated for accuracy!

Posted by: SXI ADMIN

The author is the creator of SXI LLC and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.