Résolu le 20-03-19 Clé Wifi - LMDE3 : compilation de driver

Assistance Générale spécifique à LMDE
Répondre
Avatar du membre
ledudulela
Messages : 242
Enregistré le : mer. 15 juil. 2015 20:49
Localisation : France - Gironde

Clé Wifi - LMDE3 : compilation de driver

Message par ledudulela »

Suite à ce post: Clé Wi-Fi - LMDE3 : réseau vu mais pas de connexion
j'ai voulu tester la compilation d'un driver pour une clé non reconnue par LMDE3.
Avant toute chose, un peu de documentation.
debian: https://wiki.debian.org/fr/WiFi
ubuntu: https://doc.ubuntu-fr.org/wifi_chipset_ ... _rtl8812au

Mon choix s'est porté sur le chipset realtek rtl8812au que l'on peut trouver, par exemple, dans la clé TP-Link Archer T4UH Adaptateur USB Wi-Fi AC 1300 Mbps.

Après avoir téléchargé le zip sur github https://github.com/abperiasamy/rtl8812AU_8821AU_linux
et décompressé dans /tmp

Dans le terminal, on se place dans le répertoire du fichier décompressé (commande cd):

Code : Tout sélectionner

$ cd /tmp/rtl8812AU_8821AU_linux-master
Simple vérification du noyau linux (commande uname -a)

Code : Tout sélectionner

$ uname -a
Linux pc1 4.9.0-8-amd64 #1 SMP Debian 4.9.144-3.1 (2019-02-19) x86_64 GNU/Linux
Compilation du firmware (commande make)

Code : Tout sélectionner

$ make
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.9.0-8-amd64/build M=/tmp/rtl8812AU_8821AU_linux-master  modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-4.9.0-8-amd64 »
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_cmd.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_security.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_debug.o
  ...
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/HalPwrSeqCmd.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/Hal8812PwrSeq.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/Hal8821APwrSeq.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_xmit.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_sreset.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_hal_init.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_phycfg.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_rf6052.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_dm.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_rxdesc.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_cmd.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/usb/usb_halinit.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/usb/rtl8812au_led.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/usb/rtl8812au_xmit.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/usb/rtl8812au_recv.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/usb/usb_ops_linux.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/rtl8812a/rtl8812a_mp.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/efuse/rtl8812a/HalEfuseMask8812A_USB.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/efuse/rtl8812a/HalEfuseMask8821A_USB.o
  ...
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/OUTSRC/rtl8821a/phydm_RTL8821A.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/hal/OUTSRC/rtl8821a/PhyDM_IQK_8821A.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/platform/platform_ops.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_mp.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_mp_ioctl.o
  CC [M]  /tmp/rtl8812AU_8821AU_linux-master/core/rtw_bt_mp.o
  LD [M]  /tmp/rtl8812AU_8821AU_linux-master/rtl8812au.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/rtl8812AU_8821AU_linux-master/rtl8812au.mod.o
  LD [M]  /tmp/rtl8812AU_8821AU_linux-master/rtl8812au.ko
make[1] : on quitte le répertoire « /usr/src/linux-headers-4.9.0-8-amd64 »
En sudo, installation du firmware (commande make install)

Code : Tout sélectionner

$ sudo make install
install -p -m 644 rtl8812au.ko  /lib/modules/4.9.0-8-amd64/kernel/drivers/net/wireless/
/sbin/depmod -a 4.9.0-8-amd64
Vérifier si le firmware est chargé (commande lsmod)

Code : Tout sélectionner

$ lsmod 
Là, pas encore de trace de chargement du module rtl8812au. C'est normal. 
En sudo, charger le firmware (commande modprobe)

Code : Tout sélectionner

$ sudo modprobe -a rtl8812au 
Vérifier si le firmware (module) est chargé (commande lsmod)

Code : Tout sélectionner

$ lsmod 
Module                  Size  Used by
rtl8812au            1343488  0
cfg80211              589824  1 rtl8812au
rfkill                 24576  3 cfg80211
Quelques infos sur le module (firmware) (commande modinfo)

Code : Tout sélectionner

$ sudo modinfo rtl8812au
filename:       /lib/modules/4.9.0-8-amd64/kernel/drivers/net/wireless/rtl8812au.ko
version:        v4.3.14_13455.20150212_BTCOEX20150128-51
author:         Realtek Semiconductor Corp.
description:    Realtek Wireless Lan Driver
license:        GPL
srcversion:     EF34661EE5DBA48C942EF10
alias:          usb:v3823p6249d*dc*dsc*dp*ic*isc*ip*in*
...
depends:        cfg80211,usbcore
...
parm:           rtw_max_roaming_times:The max roaming times to try (uint)
parm:           rtw_mc2u_disable:int
parm:           rtw_80211d:Enable 802.11d mechanism (int)
...
Débrancher, rebrancher la clé
Attendre 1 minute environ avant que le wifi ne capte les SSID.

Vérification de l'état du Wifi avant connexion à un SSID (commande nmcli device)

Code : Tout sélectionner

$ nmcli device
PÉRIPHÉRIQUE  TYPE      ÉTAT        CONNEXION 
enp2s0        ethernet  déconnecté  --        
wlp0s20u11    wifi      déconnecté  --
Se connecter à un SSID...

Vérification de l'état du Wifi après connexion à un SSID (commande nmcli device)

Code : Tout sélectionner

nmcli device
PÉRIPHÉRIQUE  TYPE      ÉTAT        CONNEXION        
wlp0s20u11    wifi      connecté    Auto maFreebox 
enp2s0        ethernet  déconnecté  --               
lo            loopback  non-géré    --  
Vérification de la qualité du signal Wifi (commande nmcli dev wifi)

Code : Tout sélectionner

$ nmcli dev wifi
*  SSID          MODE   CHAN  DÉBIT    SIGNAL  BARS  SÉCURITÉ 
   --            Infra  11    54 Mo/s  89      ▂▄▆█  WPA2     
*  maFreebox   Infra  11    54 Mo/s  89      ▂▄▆█  WPA1     
   Livebox-D123  Infra  100   54 Mo/s  44      ▂▄__  WPA2
-> 54 Mo /sec = 433 Mbits /sec - Correspond au 5GHz (433Mbps) // 2.4GHz (150Mbps)

Optionnel: dans le fichier /etc/NetworkManager/NetworkManager.conf
[device]
wifi.scan-rand-mac-address=no

Redémarrage du gestionnaire de réseau (optionnel)

Code : Tout sélectionner

$ sudo systemctl restart network-manager
Voilou pour le retour d'expérience.
Le plus long fût de trouver une clé wifi embarquant un firmware compatible Debian9.

Remarque: il parait qu'il faut recompiler le firmware si le noyau Linux est mis à jour :l
Modifié en dernier par ledudulela le mer. 3 avr. 2019 23:02, modifié 2 fois.
leDuduLéLà - Linux Mint Debian Edition 1 Mate , 2 Mate , 3 Cinnamon , 4 Cinnamon , 5 Cinnamon / 64 bits 6 Cinnamon / 64 bits

capdeframint
Messages : 2209
Enregistré le : jeu. 2 juin 2016 08:57
Localisation : Hautes-Alpes: GAP

Re: Clé Wifi - LMDE3 : compilation de driver

Message par capdeframint »

Je dors avoir de la chance car j'ai deux clés WIFI qui sont compatibles avec toutes les distributions Linux, Debian y compris.
PC1:PCportable HP Pavilion 15-eh3027nf, proc Ryzen 7 7730U , Ram 16 Go, SSD 512 Go, LM 21.2 XFCE
PC2: PC portable Lenovo Ideapad 3 15ALC6 (82KU002GFR),proc Ryzen 7 5700, Ram 8Go, SSD 512 Go, LM 21.1 XFCE
Dual boot: Windows 11 Family/ Linuxmint 21.1

Avatar du membre
ledudulela
Messages : 242
Enregistré le : mer. 15 juil. 2015 20:49
Localisation : France - Gironde

Re: Clé Wifi - LMDE3 : compilation de driver

Message par ledudulela »

Bonjour,
pourrait-on avoir les références (et si possible le firmware qui va avec) ?
leDuduLéLà - Linux Mint Debian Edition 1 Mate , 2 Mate , 3 Cinnamon , 4 Cinnamon , 5 Cinnamon / 64 bits 6 Cinnamon / 64 bits

capdeframint
Messages : 2209
Enregistré le : jeu. 2 juin 2016 08:57
Localisation : Hautes-Alpes: GAP

Re: Clé Wifi - LMDE3 : compilation de driver

Message par capdeframint »

J'ai parlé un peu trop vite: je viens de tester mes deux clés Wifi avec LMDE3, avec MX18 ainsi que LinuxMint19 et Lubuntu (la version la plus récente) et elles fonctionnent parfaitement bien avec les distris à base UBUNTU, comme avec LMDE2 et MX17 précédemment , mais pas avec la dernière version de Debian (et dérivées). Avec Debian, les réseaux Wifi sont visibles mais la connexion tourne en rond sans pouvoir aboutir.
PC1:PCportable HP Pavilion 15-eh3027nf, proc Ryzen 7 7730U , Ram 16 Go, SSD 512 Go, LM 21.2 XFCE
PC2: PC portable Lenovo Ideapad 3 15ALC6 (82KU002GFR),proc Ryzen 7 5700, Ram 8Go, SSD 512 Go, LM 21.1 XFCE
Dual boot: Windows 11 Family/ Linuxmint 21.1

Avatar du membre
ledudulela
Messages : 242
Enregistré le : mer. 15 juil. 2015 20:49
Localisation : France - Gironde

Re: Clé Wifi - LMDE3 : compilation de driver

Message par ledudulela »

Ne serait ce pas ce problème: viewtopic.php?f=22&t=12639
leDuduLéLà - Linux Mint Debian Edition 1 Mate , 2 Mate , 3 Cinnamon , 4 Cinnamon , 5 Cinnamon / 64 bits 6 Cinnamon / 64 bits

capdeframint
Messages : 2209
Enregistré le : jeu. 2 juin 2016 08:57
Localisation : Hautes-Alpes: GAP

Re: Clé Wifi - LMDE3 : compilation de driver

Message par capdeframint »

Si c'est sans aucun doute le même problème.
PC1:PCportable HP Pavilion 15-eh3027nf, proc Ryzen 7 7730U , Ram 16 Go, SSD 512 Go, LM 21.2 XFCE
PC2: PC portable Lenovo Ideapad 3 15ALC6 (82KU002GFR),proc Ryzen 7 5700, Ram 8Go, SSD 512 Go, LM 21.1 XFCE
Dual boot: Windows 11 Family/ Linuxmint 21.1

Répondre