# No Wireless on my acer spire (wpa_supplicant)

## jody

Hi

I recently installed genoo ( 2.6.30-gentoo-r4 ) using genernel.

I now wanted to get my wireless running by following this gentoo handbook:

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=4

I chose the wpa_supplicant way, and filled /etc/conf.d/net and /etc/wpa_supplicant/wpa_supplicant.conf

as described in this handbook. But neither after restarting net nor after a reboot

did anything 'happen'. I emerged wireless-tools, and 'iwconfig says

```
localhost ~ # iwconfig

lo        no wireless extensions.

eth0      no wireless extensions
```

Am i missing any steps?

Heres my /etc/conf.d/net:

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

# This blank configuration will automatically use DHCP for any net.*

# scripts in /etc/init.d.  To create a more complete configuration,

# please review /etc/conf.d/net.example and save your configuration

# in /etc/conf.d/net (this file :]!).

# wpa_supplicant gegen?ber wireless-tools bevorzugen

modules=( "wpa_supplicant" )

# Es ist wichtig, dass wir wpa_supplicant mitteilen welcher Treiber

# verwendet werden soll, da es nicht sehr gut raten kann.

wpa_supplicant_eth0="-Dmadwifi"
```

 (I was running DHCP over my wire network)

Heres my wpa_supplicant.conf:

```
# The below line not be changed otherwise we refuse to work

ctrl_interface=/var/run/wpa_supplicant

# Ensure that only root can read the WPA configuration

ctrl_interface_group=0

# Let wpa_supplicant take care of scanning and AP selection

ap_scan=1

# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers

network={

  ssid="idastrasse"

  psk="***********"

  # The higher the priority the sooner we are matched

  priority=5

}
```

I think the genkernel-installation has all the required settings,

even though some of them are '<M>'

Thank you for any helpful hints!

Jody

----------

## Erdie

At first you should make sure that the required kernal module required for your specific hardware is loaded. Just check with "lsmod". If you dont find it, try to load with "modprobe"

-Erdie

----------

## jody

Erdie - thanks for your reply

How do i find out what the kernel module for this hardware is called?

I looked at lspci

```
localhost jody # lspci | grep -i ethernet

00:0a.0 Ethernet controller: nVidia Corporation MCP67 Ethernet (rev a2)

05:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)

```

 i assume  the "Atheros" entry is the important one, but how do i find out the name

of the corresponding module?

Thank You

  Jody

----------

## d2_racing

Hi, you should try the ath5k or ath9k module inside the kernel.

----------

## jody

Hi 

It seems that the genkernel-installation did not

include the ATH5 or ATH9:

```
localhost linux # grep ATH .config-genkernel2

# CONFIG_MATH_EMULATION is not set

CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"

CONFIG_MD_MULTIPATH=m

CONFIG_DM_MULTIPATH=m

# CONFIG_ATH5K is not set

# CONFIG_ATH9K is not set

```

How can i do a new genkernel which includes these?

Can i simply edit the .config file, or will this one be ignored?

(i currently want to stay with genkernel, because my last attempt

of a manual install resulted in a panic during boot (could not

find the filesystem or something like that...)). Probably a 

similar problem: how can i find out what driver to load for my harddisk?

Thank You

  Jody[/code]

----------

## jody

ok - i managed to build a new kernel using genkernel which *does* have ath5k,

but even though it appears in lsmod

```
localhost ~ # lsmod | grep ath

ath5k                 105088  0 

mac80211              123080  1 ath5k

led_class               3872  1 ath5k

cfg80211               55740  2 ath5k,mac80211
```

there still seems to be domething wrong

```
localhost ~ # iwconfig

lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:""  

          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   

          Tx-Power=0 dBm   

          Retry min limit:7   RTS thr:off   Fragment thr:off

          Encryption key:off

          Power Management:off

          Link Quality:0  Signal level:0  Noise level:0

          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

          Tx excessive retries:0  Invalid misc:0   Missed beacon:0
```

Since i am quite a newbie as far as wireless internals are concerned,

i have no idea how to interpret this output. I suspect my wireless still

isn't running because of the 'Link Quality', 'Signal level' and 'Noise level' which are all 0...

So - would this output mean the wireless is working, but thereare no signals present?

Or is it still inactive and i have to start it somehow?

The fact that it says 'ESSID:""' is a bit troubling.

Assuming that ESSID and SSID are basically the same thing, 

my wlan should have a SSID, the one which i defined in wpa_supplicant.conf.

But as i said, i am completely knowledgeless in the field of wlan, and all my assumptions

may well be wrong.

I know tht the our wlan uses WPA2-Personal and AES encryption - might that be a problem?

I'd be very thankful for some sort of explanation how all these different factors play together,

and how i could get my wlan running.

Update:

  I now made a softlink 'ln -s net.lo net.wlan0'

and did a '/etc/init.d/net.wlan0 start' which seemed to work well:

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

 * Starting wlan0

 *   Starting wpa_supplicant on wlan0 ...                                   [ ok ]

 *   Starting wpa_cli on wlan0 ...                                          [ ok ]

 *     Backgrounding ...

```

 but iwconfig still shows the same (empty ESSID, 0 signal and noise level...

Thank You

  Jody

----------

## d2_racing

Ok, first, can you run this to see if your wireless card is seeing something :

```

# iwlist scan

```

After that, what windows manager do you use ? Kde,Gnome, Xfce etc...

Also, do you plan to use networkmanager or WICD or even wpa_supplicant ?

----------

## pappy_mcfae

Your problem lies here:

```
wpa_supplicant_eth0="-Dmadwifi"
```

 Change it to read: 

```
wpa_supplicant_eth0="-Dwext"
```

and then retry.

Blessed be!

Pappy

----------

## jody

Thanks!

The suggestion  to replace to the conf.d/net entry to 

```
wpa_supplicant_eth0="-Dwext"
```

brought me closer to the solution of my problem. Now i can see all wlans in the neighborhood

using 'iwlist scan'. However it seems that my wlan0 does not get a correc IP-address from DHCP;

it should be 192.168.1.XXX instead of 192.168.0.YYY:

```
localhost jody # ifconfig

eth0      Link encap:Ethernet  HWaddr 00:1b:38:5d:d5:36  

          inet addr:192.168.1.47  Bcast:255.255.255.255  Mask:255.255.255.0

          inet6 addr: fe80::21b:38ff:fe5d:d536/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:3876 errors:0 dropped:0 overruns:0 frame:0

          TX packets:2894 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:2532930 (2.4 MiB)  TX bytes:499201 (487.5 KiB)

          Interrupt:22 Base address:0x8000 

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:238 errors:0 dropped:0 overruns:0 frame:0

          TX packets:238 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:235166 (229.6 KiB)  TX bytes:235166 (229.6 KiB)

wlan0     Link encap:Ethernet  HWaddr 00:1f:3a:06:12:93  

          inet addr:192.168.0.108  Bcast:192.168.0.255  Mask:255.255.255.0

          inet6 addr: fe80::21f:3aff:fe06:1293/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:1220 errors:0 dropped:0 overruns:0 frame:0

          TX packets:171 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:85947 (83.9 KiB)  TX bytes:17163 (16.7 KiB)

wmaster0  Link encap:UNSPEC  HWaddr 00-1F-3A-06-12-93-77-6C-00-00-00-00-00-00-00-00  

          UP RUNNING  MTU:0  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)

```

If i do a 'ping' with unplugged network cable, it doesn't work.

Restarting net.wlan0 doesn't change things, even with unplugged network cable

There seems to be a dhcpd associated with the wlan0:

```
localhost jody # /etc/init.d/net.wlan0 restart

 * Stopping wlan0

 *   Bringing down wlan0

 *     Stopping dhcpcd on wlan0 ...                                       [ ok ]

 *     Shutting down wlan0 ...                                            [ ok ]

 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]

 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]

 * Starting wlan0

 *   Starting wpa_supplicant on wlan0 ...                                 [ ok ]

 *   Starting wpa_cli on wlan0 ...                                        [ ok ]

 *     Backgrounding ...

```

 The difference to starting net.eth0 is different in that during the start of net.eth0

dhcpd is started and some sort of IP-address negotiation is going on. It gets offerd a 192.168.1.XXX address as

well as a 192.168.0.XXX address but rejects the latter:

```
localhost jody # /etc/init.d/net.eth0 restart

 * Stopping eth0

 *   Bringing down eth0

 *     Stopping dhcpcd on eth0 ...                                        [ ok ]

 *     Shutting down eth0 ...                                             [ ok ]

 * Starting eth0

 *   Configuration not set for eth0 - assuming DHCP

 *   Bringing up eth0

 *     dhcp

 *       Running dhcpcd ...

eth0: dhcpcd 4.0.13 starting

eth0: broadcasting for a lease

eth0: offered 192.168.1.47 from 192.168.1.1

eth0: ignoring offer of 192.168.0.106 from 192.168.0.1

eth0: acknowledged 192.168.1.47 from 192.168.1.1

eth0: checking 192.168.1.47 is available on attached networks

eth0: ignoring offer of 192.168.77.2 from 192.168.77.1

eth0: leased 192.168.1.47 for 86400 seconds                               [ ok ]

 *       eth0 received address 192.168.1.47/24

```

Is there perhaps a setting i have to do somewhere so that wlan0 also broadcasts for a lease?

BTW: i am using gnome as the desktop

Thank You

  Jody

----------

## jody

Update:

By calling dhcp by hand and blacklisting the "bad" offers i managed to get an IP-Adress which works,

but only if the eth0 has been stopped:

```
localhost jody # /etc/init.d/net.wlan0 restart

 * Stopping wlan0

 *   Bringing down wlan0

 *     Stopping dhcpcd on wlan0 ...                                       [ ok ]

 *     Shutting down wlan0 ...                                            [ ok ]

 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]

 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]

 * Starting wlan0

 *   Starting wpa_supplicant on wlan0 ...                                 [ ok ]

 *   Starting wpa_cli on wlan0 ...                                        [ ok ]

 *     Backgrounding ...

localhost jody # dhcpcd -X 192.168.77.1 -X 192.168.0.1 wlan0

wlan0: dhcpcd 4.0.13 starting

wlan0: waiting for carrier

wlan0: carrier acquired

wlan0: broadcasting for a lease

wlan0: ignoring blacklisted server 192.168.0.1

wlan0: ignoring blacklisted server 192.168.77.1

wlan0: offered 192.168.1.61 from 192.168.1.1

wlan0: acknowledged 192.168.1.61 from 192.168.1.1

wlan0: checking 192.168.1.61 is available on attached networks

wlan0: leased 192.168.1.61 for 86400 seconds

localhost jody # ping forums.gentoo.org

PING gossamer-ipvs-forums.gentoo.org (204.187.15.12) 56(84) bytes of data.

64 bytes from forums.gentoo.org (204.187.15.12): icmp_seq=1 ttl=48 time=210 ms

64 bytes from forums.gentoo.org (204.187.15.12): icmp_seq=2 ttl=48 time=200 ms

^C

```

In other words: manually, i can get the wlan running, but

is there a way to configure things so that dhcpcd is called for wlan0 (with blacklisting

the two "bad" servers) as soon as it gets started?

Is there a way to find out which interface is being used for communication,

if both are started, and both have an IP-address?

Thanks

  Jody

----------

## pappy_mcfae

Perhaps not, but I do have a script that detects the presence of the NIC cable at boot time. After that, it sets up the proper /etc/conf.d/net file from two, one for wired and one for wireless. I offered it to one other, and I don't think he ever got it right. If you'd like that, I can post all the info. Be advised that if you want to use that set up, you can't use baselayout-2/openrc.

Blessed be!

Pappy

----------

## cach0rr0

out of curiosity, what model Aspire is this? 

I have my whole setup doc'd here, including a majorly pruned down kernel derived from one of pappy's seeds

http://whitehathouston.com/hardware/Laptop/Acer%20Aspire%204736z/

Dunno how similar your hardware is to mine, but if it's useful have at it!

----------

