# intel 4965ag unable to join wireless network [solved]

## jgs

I just got an HP dv6500 for work, and have been able to get just about everything configured and working the way I'd expect.  The one BIG exception to that is the wireless  :Sad: 

The laptop has an Intel 4965agn chip in it:

```
lspci:

02:00.0 Network controller: Intel Corporation Unknown device 4229 (rev 61)
```

and I've managed to get that recognized by the kernel using ndiswrapper:

```
# ndiswrapper -l

netw4x32 : driver installed

        device (8086:4229) present

# dmesg | grep wlan

wlan0: ethernet device 00:13:e8:1f:ed:71 using NDIS driver: netw4x32, version: 0x1000b, NDIS version: 0x501, vendor: 'Intel(R) Wireless WiFi Link 4965AG Driver', 8086:4229.5.conf

wlan0: encryption modes supported: WEP; TKIP with WPA, WPA2, WPA2PSK; AES/CCMP with WPA, WPA2, WPA2PSK
```

and I've got an extremely basic config:

```
/etc/conf.d/net:

config_wlan0=( "dhcp" )

essid_wlan0="echols"

mode_wlan0="managed"
```

The problem comes when I try to start the interface:

```
# /etc/init.d/net.wlan0 start

 * Caching service dependencies ...                                                                  [ ok ]

 * Starting wlan0

 *   Loading networking modules for wlan0

 *     modules: apipa arping ccwgroup macchanger macnet rename iwconfig essidnet iptunnel ifconfig system dhcpcd ip6to4

 *       iwconfig provides wireless

 *       ifconfig provides interface

 *       dhcpcd provides dhcp

 *   Configuring wlan0 for MAC address 00:13:E8:1F:ED:71 ...                                         [ ok ]

 *   Configuring wireless network for wlan0

 *   Connecting to "echols" in managed mode (WEP Disabled) ...                                       [ !! ]

 *   Failed to configure wireless for wlan0                                                          [ !! ]
```

and dmesg shows:

```
ADDRCONF(NETDEV_UP): wlan0: link is not ready
```

I've tried extending the "sleep_associate_wlan0" time to 25 seconds, but that didn't change anything.  I was also unsuccessful at getting the chip recognized using iwlwifi.  Any other ideas out there?Last edited by jgs on Thu Jul 12, 2007 3:21 pm; edited 2 times in total

----------

## didymos

You could try the new mac80211 stack in linux 2.6.22, and the iwlwifi drivers for it, which support your card:

http://intellinuxwireless.org/

They're still relatively new, but hey, if they work, they work.

----------

## jgs

I tried patching gentoo-sources-2.6.20 with the new mac80211 stack and using iwlwifi on that and it didn't work...I'll emerge vanilla-sources-2.6.22 now and give that a shot.

----------

## jgs

It would appear that 2.6.22 (i used gentoo-sources, not vanilla) is a dead-end as well.  I enabled mac80211, compiled, installed and rebooted, and when I try to compile iwlwifi i get:

```
iwlwifi-0.1.1 # make

make -C /lib/modules/2.6.22-gentoo/source O=/lib/modules/2.6.22-gentoo/build M=/root/iwlwifi-0.1.1/compatible/ modules

make[1]: Entering directory `/usr/src/linux-2.6.22-gentoo'

  CC [M]  /root/iwlwifi-0.1.1/compatible/base-3945.o

/root/iwlwifi-0.1.1/compatible/base.c: In function 'd_config':

/root/iwlwifi-0.1.1/compatible/base.c:7492: error: 'IEEE80211_CONF_CHANNEL_SWITCH' undeclared (first use in this function)

/root/iwlwifi-0.1.1/compatible/base.c:7492: error: (Each undeclared identifier is reported only once

/root/iwlwifi-0.1.1/compatible/base.c:7492: error: for each function it appears in.)

/root/iwlwifi-0.1.1/compatible/base.c: In function 'iwl_pci_probe':

/root/iwlwifi-0.1.1/compatible/base.c:9013: warning: format '%08x' expects type 'unsigned int', but argument 4 has type 'resource_size_t'

make[3]: *** [/root/iwlwifi-0.1.1/compatible/base-3945.o] Error 1

make[2]: *** [_module_/root/iwlwifi-0.1.1/compatible] Error 2

make[1]: *** [modules] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.22-gentoo'

make: *** [modules] Error 2
```

I also recompiled ndiswrapper against the new kernel; it'll give me a wlan0 still, but it also still has the same problems connecting.  :Sad: 

----------

## Paris Heng

You try Ubuntu 7.04, it works fine for my Intel corporation PRO/WIRELESS 2200BG.

----------

## jgs

heh.  I've tried (in order of success):

Gentoo 2007.0 - installed, get wlan0 interface using ndiswrapper.  iwlist scan sees nearby access points but i can't associate with them

openSUSE 10.2 - installed w/o incident, doesn't even recognize wired ethernet.  attached usb ethernet dongle, got dhcp address, attempted online update but nothing was available.

Knoppix 5.1.1 - boots, doesn't configure any wireless hardware

Fedora Core 7 - doesn't have driver for the SATA controller in the dv6500

Ubuntu (and Kubuntu) 7.04, kubuntu 7.10 beta 2 - won't even boot into the installer; documented and unresolved bug

so right now the laptop is sits with openSUSE 10.2 and a usb ethernet dongle, with a stack of linux install discs beside it.

and still no wireless...

----------

## jgs

So last night I reinstalled Gentoo...this morning I reinstalled ndiswrapper, and got the freaking thing to associate!  I did have to do it manually however:

```
# iwlist wlan0 scan

...

Cell 02 - Address: 00:0F:66:0D:05:95

                    ESSID:"echols"

                    Protocol:IEEE 802.11g

                    Mode:Managed

                    Frequency:2.412 GHz (Channel 1)

                    Quality:71/100  Signal level:-50 dBm  Noise level:-96 dBm

                    Encryption key:off

                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s

                              24 Mb/s; 36 Mb/s; 54 Mb/s

                    Extra:bcn_int=100

                    Extra:atim=0

...

# iwconfig wlan0 freq 2.412

# iwconfig wlan0 ap 00:0F:66:0D:05:95

# iwconfig wlan0 essid echols

# ifconfig wlan0 up

# dhcpcd wlan0
```

So now at least I know it can work...only need to figure out how to make it work automagically.

----------

## jgs

Annnnnnd - we're done.

The final solution: ndiswrapper and wpa_supplicant.

```
# cat /etc/conf.d/net

config_wlan0=( "dhcp" )

modules=( "wpa_supplicant" )

wpa_supplicant_ath0="-Dwext -c /etc/wpa_supplicant/wpa_supplicant.conf"
```

```
# cat /etc/wpa_supplicant/wpa_supplicant.conf

network={

        ssid="echols"

        key_mgmt=NONE

        scan_ssid=1

}

network={

        key_mgmt=NONE

        priority=-9999999

}
```

Now everything works like a charm  :Very Happy: 

----------

