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:
- Ndiswrapper
- Netgear WG311 PCI Windows XP driver (available on driver CD or online here)
- 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!
- Email FAQ to a friend
- Printable version
- Rss Feed
- Last Updated: 5-13-08

{ 16 comments… read them below or add one }
Have you tested it on kubuntu hardy. I can get it to work under gutsy but not under hardy. iwlist wlan0 scan works fine but setting an IP address (either static or via DHCP) doesn’t work. I have noted that others have reported similiar problems under hardy so if you have it work there then I’m very interested.
Cheers
Vivek Gite
Could this configuration change to the card also be made to work for Windows?
Thanks
NT
notechyet,
This is Linux specific, use your driver cd to load Windows driver. Windows driver has all the features.
Vivek
Thanks for your prompt reply.
After finding your site I continued searching and found the right drivers here:
http://kbserver.netgear.com/release_notes/d102301.asp
I just came back from the machine I have done the update and all works.
Thanks a million anyway!
NT
Hai all,
I have followed the instruction and installed the NETGEAR but is unable to connect to internet.The following is what i have done.Iam using ubuntu 8.04.
Please provide help to fix it.Thanks in advance
root@-desktop:~# ndiswrapper -h install/manage Windows drivers for ndiswrapper usage: ndiswrapper OPTION -i inffile install driver described by 'inffile' -a devid driver use installed 'driver' for 'devid' (dangerous) -r driver remove 'driver' -l list installed drivers -m write configuration for modprobe -ma write module alias configuration for all devices -mi write module install configuration for all devices -v report version information where 'devid' is either PCIID or USBID of the form XXXX:XXXX, as reported by 'lspci -n' or 'lsusb' for the card root@-desktop:~# cd WG311v3\ V1.0/Driver/Windows\ Windows 2000/ Windows 98/ Windows ME/ Windows XP/ root@-desktop:~# cd WG311v3\ V1.0/Driver/Windows\ 2000/ root@-desktop:~/WG311v3 V1.0/Driver/Windows 2000# ls WG311v3.cat WG311v3.INF WG311v3.sys WG311v3XP.sys root@-desktop:~/WG311v3 V1.0/Driver/Windows 2000# ndiswrapper -i WG311v3.INF installing wg311v3 ... root@-desktop:~/WG311v3 V1.0/Driver/Windows 2000# ndiswrapper -l wg311v3 : driver installed device (11AB:1FAA) present root@-desktop:~/WG311v3 V1.0/Driver/Windows 2000# root@-desktop:~/WG311v3 V1.0/Driver/Windows 2000# ----------------------------------------------------------------------------------------------------------------------------------- ~# ifconfig eth0 Link encap:Ethernet HWaddr 00:19:d1:7a:20:25 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Base address:0x20c0 Memory:50300000-50320000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1564 errors:0 dropped:0 overruns:0 frame:0 TX packets:1564 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:81408 (79.5 KB) TX bytes:81408 (79.5 KB) wlan0 Link encap:Ethernet HWaddr 00:1b:2f:2c:dc:f9 inet6 addr: fe80::21b:2fff:fe2c:dcf9/64 Scope:Link UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:1360 errors:0 dropped:0 overruns:0 frame:0 TX packets:150 errors:0 dropped:53 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:175187 (171.0 KB) TX bytes:21676 (21.1 KB) Interrupt:23 Memory:50000000-50010000 wlan0:avahi Link encap:Ethernet HWaddr 00:1b:2f:2c:dc:f9 inet addr:169.254.9.75 Bcast:169.254.255.255 Mask:255.255.0.0 UP BROADCAST MULTICAST MTU:1500 Metric:1 Interrupt:23 Memory:50000000-50010000 ----------------------------------------------------------------------------------------------------------------------------------- iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11g ESSID:"ECsolutions" Mode:Managed Frequency:2.437 GHz Access Point: 00:60:B3:35:35:B2 Bit Rate=36 Mb/s Sensitivity=-200 dBm RTS thr=2346 B Fragment thr=2346 B Encryption key:off Power Management:off Link Quality:26/100 Signal level:-79 dBm Noise level:-96 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 ----------------------------------------------------------------------------------------------------------------------------------- DMESG OUTPUT [ 3596.049468] ndiswrapper version 1.52 loaded (smp=yes, preempt=no) [ 3596.090635] ndiswrapper: driver wg311v3 (NETGEAR,02/22/2005,3.1.1.7) loaded [ 3596.090770] ACPI: PCI Interrupt 0000:06:01.0[A] -> GSI 22 (level, low) -> IRQ 23 [ 3596.091253] ndiswrapper: using IRQ 23 [ 3596.350638] wlan0: ethernet device 00:1b:2f:2c:dc:f9 using NDIS driver: wg311v3, version: 0x3000036, NDIS version: 0x501, vendor: 'NDIS Network Adapter', 11AB:1FAA.5.conf [ 3596.350655] wlan0: encryption modes supported: WEP; TKIP with WPA, WPA2, WPA2PSK; AES/CCMP with WPA, WPA2, WPA2PSK [ 3596.350706] usbcore: registered new interface driver ndiswrapper [ 3598.160184] ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 3669.993980] heci: schedule work the heci_bh_handler failed error=0 [ 3706.520318] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 3710.071802] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3713.736498] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3713.761670] NET: Registered protocol family 17 [ 3720.250853] wlan0: no IPv6 routers present [ 3736.942182] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3821.691214] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3825.348107] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3829.103139] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3831.842907] wlan0: no IPv6 routers present [ 3848.210321] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3915.549491] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3915.686031] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3919.408591] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3923.300312] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3930.492619] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3946.648901] ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 3946.661021] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3948.569758] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3950.477270] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3972.252215] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3975.932720] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 3980.717887] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 3990.743111] wlan0: no IPv6 routers present [ 4000.479652] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 4336.055711] ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 4336.084399] ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 4337.971601] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 4344.546600] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 4345.818271] heci: schedule work the heci_bh_handler failed error=0 [ 4355.287810] wlan0: no IPv6 routers present [ 4362.633610] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 4645.748388] heci: schedule work the heci_bh_handler failed error=0 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------Vikas,
Your interface is up and running. Did you configured /etc/wpa_supplicant.conf?
hi vivek,
i dont know about /etc/wpa_supplicant.conf but in some post i seen that by installing ndisgtk and configure using this gui fixes the problem and i followed this procedure.And it works!!
One more thing i want to make the internet connection up when i boot to linux.When i reboots my machine the network configuration GUI shows only
wired connection details.So when i run modprobe ndiswrapper ,the wirless network starts.
But i want to start internet connection automatically when i boots to ubuntu.How to do it?
any fix??
Thanks in advance
Working, Ubuntu 8.04.1 Server.
Thank you
Hi
I have try all the given steps given. Till step 5 all works fine but setting an IP address (either static or via DHCP) doesn’t work.
Can Somebody Help
Thank you for such a straightforward set of instructions. Like many others, I’d researched, tried suggestions, given up, started all over again. After reading your tutorial, I downloaded the drivers, ndiswrapper, wpasupplicant … unzipped, logged into Linux (I’m using PCLinuxOS), told my config program where to find the NetGear drivers and was online within a matter of just a few minutes! I didn’t actually have to install ndiswrapper because PCLinuxOS installs it by default. Apparently the wpasupplicant program is installed by default also because after pointing to the NetGear drivers, I was asked if I wanted to use WPA encryption. But thanks to you, I knew what to do, what to expect, and I’m a happy camper. Where’s the donation button? Happy Holidays and thanks again.
how to do in gui mode
I have WPA2-PSK and AES in my setup. How should my wpa_supplicant.conf file read?
Create /etc/wpa_supplicant.conf as follows for WPA2-PSK (replace SSID and PSK with your actual values :
network={ ssid="YOUR-SSID" proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="YOUR-PASSWORD-PSK-KEY" }To connect type:
To get IP from router, type:
Hi Vivek, Awesome thread, this have helpd me become online on my ubuntu 8.04, but one problem: it wont come automatic on after every boot, i have to write $ sudo modprobe ndiswrapper to make it load, any help?
Add the following line to /etc/modprobe.d/ndiswrapper
Hi again, thx for the quick answer, but it is already alias wlan0 ndiswrapper in /etc/modprobe.d/ndiswrapper :S I´m going to try update to 8.10 and see it from there