[RESOLU] iwl3945 + wicd + Debian testing 2.6.24

Bonjour,

Ce post fait suite à celui-ci de gagarine, non-résolu pour ma part :
[ul]http://forum.debian-fr.org/viewtopic.php?t=13442[/ul]
(Je n’ai pas de fichier /etc/modprobe.d/iwl3945)

Je n’arrive pas à me connecter avec :
[ul]

  • ma carte wifi Intel 3945ABG
  • sur mon portable ASUS-F9S
  • sous Debian noyau 2.6.24
  • avec les paquets iwlwifi et wicd
    [/ul]

Rmq: Je n’arrivais pas à me connecter ni obtenir la liste des AP avec ipw3945d, j’ai lu sur plusieurs forums qu’il vaut mieux utiliser iwlwifi que ipw3945d. J’ai donc désinstallé les paquets, et installé iwlwifi et wicd.

1/ CONFIG :

> uname -a
Linux debian 2.6.24-1-686 #1 SMP Thu Mar 27 17:45:04 UTC 2008 i686 GNU/Linux
(lenny testing)
> dpkg -l
firmware-iwlwifi 0.10
libiw29 29-1
wireless-tools 29-1
wicd 1.4.2-1

Le bouton wifi est activé.

2/ AU BOOT :

> lsmod | grep iw
iwl3945                84712  0 
firmware_class          9312  1 iwl3945
mac80211              114380  1 iwl3945

C’est normal le “0” sur la ligne iwl3945 ?

> iwconfig
lo        no wireless extensions.
eth0      no wireless extensions.
wmaster0  no wireless extensions.
wlan0     IEEE 802.11g  ESSID:""  
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2346 B   
          Encryption key: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
> cat /etc/network/interfaces
auto lo
iface lo inet loopback
iface eth0 inet dhcp
iface wlan0 inet dhcp
> cat /etc/udev/rules.d/z25_persistent-net.rules
# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="00:1d:60:9e:ad:c4", NAME="eth0"
# PCI device 0x8086:0x4222 (iwl3945)
SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="00:1c:bf:4f:29:65", ATTR{type}=="1", NAME="wlan0"
> ls /etc/modprobe.d/
aliases
alsa-base
alsa-base-blacklist
arch
arch-aliases -> arch/i386
blacklist
bluez
display_class
ibm_acpi.modprobe
libpisock9
libsane
linux-sound-base_noOSS -> /lib/linux-sound-base/noOSS.modprobe.conf
oss-compat -> /lib/oss-compat/linux
pnp-hotplug
thinkpad_acpi.modprobe
> tail /var/log/messages; tail /var/log/kern.log;
kernel: iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, 1.1.17ks
kernel: iwl3945: Copyright(c) 2003-2007 Intel Corporation
kernel: iwl3945: Detected Intel PRO/Wireless 3945ABG Network Connection
kernel: iwl3945: Tunable channels: 13 802.11bg, 23 802.11a channels
kernel: iwl3945: Radio Frequency Kill Switch is On:
kernel: Kill switch must be turned off for wireless networking to work.
kernel: ADDRCONF(NETDEV_UP): wlan0: link is not ready
kernel: wlan0: failed to restore operational channel after scan
kernel: iwl3945: Error sending REPLY_TX_PWR_TABLE_CMD: time out after 500ms. (répété 3 fois)
kernel: iwl3945: Radio Frequency Kill Switch is On:
kernel: Kill switch must be turned off for wireless networking to work.
kernel: -- MARK 1 --
> iwlist wlan0 scan
wlan0     No scan results

Mais pourquoi iwlist ne fonctionne pas ?

3/ LANCEMENT DE WICD :

Au premier lancement, j’ai une liste correcte des points d’accès (une vingtaine, youpi!).

Mais impossible de me connecter (recherche de l’adresse IP, puis rien).
Essais infructueux, avec plusieurs points différents, dans plusieurs endroits différents, même après reboot, et sur des points d’accès légalement accessibles (chez moi, chez des amis, à la bibliothèque, …).

Ensuite, si je fais un refresh dans WICD, la jolie liste est remplacée par : “Aucun réseau sans fil détecté”.
Si je ferme et relance WICD, idem : “Aucun réseau sans fil détecté”.

Mais pourquoi plus de liste des AP ?

> iwconfig
lo        no wireless extensions.
eth0      no wireless extensions.
wmaster0  no wireless extensions.
wlan0     IEEE 802.11g  ESSID:"XXX"  
          Mode:Managed  Frequency:2.437 GHz  Access Point: XX:XX:XX:XX:XX:XX
          Tx-Power=27 dBm
          Retry min limit:7   RTS thr:off   Fragment thr=2346 B   
          Encryption key: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
> tail /var/log/messages; tail /var/log/kern.log;
kernel: -- MARK 1 --
kernel: iwl3945: Error sending REPLY_RXON: time out after 500ms. (répété 5 fois)
kernel: iwl3945: Error setting new configuration (-110). (répété 5 fois)
kernel: ADDRCONF(NETDEV_UP): wlan0: link is not ready
kernel: iwl3945: Error sending REPLY_ADD_STA: time out after 500ms.
kernel: wlan0: Initial auth_alg=0
kernel: wlan0: authenticate with AP XX:XX:XX:XX:XX:XX
kernel: wlan0: authentication with AP XX:XX:XX:XX:XX:XX timed out
kernel: -- MARK 2 --

4/ RECHARGEMENT DU MODULE

> modprobe -r iwl3945
> lsmod | grep iw
> modprobe iwl3945
> lsmod | grep iw
iwl3945                84712  0 
firmware_class          9312  1 iwl3945
mac80211              114380  1 iwl3945
> tail /var/log/messages; tail /var/log/kern.log;
kernel: -- MARK 2 --
kernel: iwl3945: WARNING: Requesting MAC access during RFKILL wakes up NIC (répété 3 fois)
kernel: iwl3945: MAC is in deep sleep! (répété 3 fois)
kernel: ACPI: PCI interrupt for device 0000:05:00.0 disabled
kernel: iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, 1.1.17ks
kernel: iwl3945: Copyright(c) 2003-2007 Intel Corporation
kernel: ACPI: PCI Interrupt 0000:05:00.0[A] -> GSI 18 (level, low) -> IRQ 18
kernel: PCI: Setting latency timer of device 0000:05:00.0 to 64
kernel: iwl3945: Detected Intel PRO/Wireless 3945ABG Network Connection
kernel: iwl3945: Radio Frequency Kill Switch is On:
kernel: Kill switch must be turned off for wireless networking to work.
kernel: iwl3945: WARNING: Requesting MAC access during RFKILL wakes up NIC (répété 3 fois)
kernel: iwl3945: Tunable channels: 13 802.11bg, 23 802.11a channels

Comment refaire apparaître la liste de points d’accès que j’obtiens avec WICD juste après un reboot ?
Comment faire pour se connecter ? pour éviter les erreurs de connection timeout repérées dans kern.log ?
Est-ce normal que lsmod donne un “0” après “iwl3945” ? Sinon comment corriger ?

Je souhaite continuer à utiliser 2.6.24, sans recompilation de noyau, avec les paquets standards iwlwifi et wicd (ou wifi-radar).
Merci pour vos suggestions !

Sylvain

kernel: iwl3945: Radio Frequency Kill Switch is On:
kernel: Kill switch must be turned off for wireless networking to work.

C’est bizzare que ceci apparaisse alors que ton wifi est censé etre lancé …

Effectivement. En plus “Radio Frequency Kill Switch” ne me paraît pas une notion très claire. Par contre “Radio Frequency Hardware Switch”, ça me parle.

En effet, j’ai bien un bouton-switch sur le côté du portable, pour dire si on veut ou pas activer les fréquences radio (wifi + bluetooth). C’est logiquement sur ON pour l’activer, et OFF pour le désactiver. Admettons que ce soit la notion contraire du-dit “Radio Frequency Kill Switch”. Il faut donc mettre le bouton sur ON (= RF Kill Switch OFF).
Bon, c’est évidemment ce que je fais d’habitude.

En plus, une diode Wifi et une diode Bluebooth sont présentes à côté de ce bouton-switch. Sur M$-Windows, quand le bouton est sur ON, la diode Wifi s’allume.
Sur Debian, je n’ai jamais vu cette diode Wifi s’allumer.

Sauf il y a qqs minutes, aujourd’hui :slightly_smiling:
Un pas en avant grâce à Morphine, Google et la page
rfswitch.sourceforge.net/?page=laptop_matrix

Positionnement du bouton-switch sur ON et :

[ul]
A adapter en fonction de votre machine, voir page web rfswitch, ou cherchez le fichier dans /proc/

[/ul]

Hop ça s’allume !
Rafraichissement dans WICD, hop la liste de points d’accès réapparaît !
Bon, j’ai pas de borne accessible pour tester si je peux me connecter, mais j’ai très bon espoir, suite au prochain épisode, promis :slightly_smiling:

En attendant, savez-vous dans quel fichier je peux placer la ligne “echo 1 > /proc/acpi/asus/wled” pour activer de façon propre le wifi au boot et que ça n’affiche plus l’erreur “Radio Frequency Kill Switch is On” ?
Dans /etc/init.d/qqchose ? /etc/modprobe.d/qqchose ? /etc/network/interfaces ? /etc/udev/qqchose ? … ?
Y a bien une fonction toggleAllWirelessStates dans /usr/share/acpi-support/state-funcs, mais j’hésite à me lancer dans un debug violent …

Si certains sont passés par là et s’en sont sortis, merci pour votre aide !

++
Sylvain

Met le dans /etc/rc.local éventuellement mais si c’est nécessaire au lancement du réseau, tu peux glisser la ligne dans le script /etc/init.d/networking, juste au début…

Bon, tout marche au poil maintenant, avec /proc/acpi/asus/wled à “1” :slightly_smiling:
C’était un petit ajustement lié au hardware.

On peut supposer que l’astuce permet de rendre fonctionnel wifi-radar aussi bien que wicd.

J’ai récupéré, je sais plus où, un petit script bash de connection wifi, j’ai ajouté la fameuse ligne dedans. Voir l’autre post, puisqu’on en parle …
http://forum.debian-fr.org/viewtopic.php?t=13442