De nombreux topik parlent de problèmes relatifs à cette carte, assez mal supporté par les distri basé Débian, mais que l'on parviens à faire fonctionner correctement ou parfaitement (selon les pc et les configs) sous ubuntu 16.04 et toutes les distri basés Débian .
Dans les divers topik traitant de ce sujet, plusieurs solutions sont proposé, à savoir :
- Un simple update/upgrade suivit d'un réglage des options d'antenne et d'interdiction de mise en veille de la carte.
- Un script proposé par metalux qui modifie le comportement de la carte suivit d'un réglage des options .
- L'installation du hanipouspilotPPA suivit d'un réglage des options.
- La compilation du module présent dans un dépot github suivit d'un réglage des options.
Après avoir testé les 3 solutions sur plusieurs distri basé Débian, il semble que la solution qui fonctionne le mieux avec mon pc et ma config soit de compiler le module, mais ce n'est pas toujours le cas.
Donc je proposerai les différentes solutions qui peut-être conviendront mieux à votre config.
Il faudra que vous essayez les différentes solutions pour trouver ce qui fonctionne le mieux chez vous. Je vous conseille de tenter en premier lieu la solution du update/upgrade puis celle du script de metalux car ce sont des solutions qui conservent le module par défaut. Si ça ne fonctionne pas, essayez de compiler le module git et en dernier recours utiliser le PPA après avoir préalablement supprimé le module git compilé afin qu'ils ne rentrent pas en conflit .
Le tuto se compose en 3 paragraphes :
- Les différentes solutions proposés.
- Les options de paramétrage de la carte.
- Un ajout concernant une erreur récurrente du grub.
[center]
Les différentes solutions proposées
[/center]
1ere solution proposé : update/upgrade
Il semble que sous certaines config une simple mise à jour du système résolve le problème, pour tester, juste après l'installation d'ubuntu, lancez simplement les commandes :
sudo apt-get update
sudo apt-get dist-upgrade
Modifier ensuite les options:
Les options qui fonctionnent le plus souvent sont le réglage d'antenne et l'interdiction de mise en veille de la carte, je vous propose de modifier l'option d'antenne et d'interdire la mise en veille.
Sur mon système c'est l'antenne 2 qui fonctionne le mieux, voici donc la démarche à suivre :
1- On modifie l'option d'antenne et on interdit la mise en veille en rendant les options persistantes (*) :
echo "options rtl8723be fwlps=0 ant_sel=2" | sudo tee /etc/modprobe.d/rtl8723be.conf
2- On Redémarre le module (*) :
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
3- Si jamais ça ne fonctionne toujours pas (ou mal), on refais un essais en basculant sur l'antenne 1 (*) :
echo "options rtl8723be fwlps=0 ant_sel=1" | sudo tee /etc/modprobe.d/rtl8723be.conf
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
2eme solution proposé : le script maison de metalux :
Metalux utilise ce script systemd sur son Pc car de temps en temps la connexion ne se fait pas toujours en sortie de veille.
sudo nano /etc/systemd/system/wifi-resume.service
coller ensuite dans le terminal ceci:
[Unit]
Description=Restart networkmanager at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target
[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service
[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target
Faire ctrl+X puis O et enfin la touche "entrée" pour sauvegarder
Pour démarrer le service et qu'il se lance au démarrage:
sudo systemctl start wifi-resume.service
sudo systemctl enable wifi-resume.service
Si le script ne fonctionne pas, vous pouvez essayez la version du script suivante :
[Unit]
Description=Restart networkmanager at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target
[Service]
Type=oneshot
ExecStart=/sbin/rmmod rtl8723be
/sbin/modprobe rtl8723be
[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target
Faire ctrl+X puis O et enfin la touche "entrée" pour sauvegarder
Pour démarrer le service et qu'il se lance au démarrage:
sudo systemctl start wifi-resume.service
sudo systemctl enable wifi-resume.service
Et puis en ce qui concerne les options je vous donne rendez vous en fin de tuto pour donner la marche à suivre, car elle est identique qu'elle que soit la solution pour laquelle vous avez opté.
3eme solution proposé : Compiler le module git :
Ce tuto devrait également fonctionner pour les cartes wifi suivantes: rtl8188ee rtl8192c rtl8192ce rtl8192cu rtl8192de rtl8192ee rtl8192se rtl8723ae rtl8723com rtl8821ae et rtl8723be bien entendu.
Bien sûr lors des commandes renvoyant à la carte rtl8723be, vous devrez remplacer par la référence de votre carte.
Vérifions tout d'abord que votre carte soit bien une de celles cités dans la liste :
lspci | grep "Network"
Si c'est bien le cas, passons à la solution.
1- On installe :
sudo apt-get install git
sudo apt-get install linux-headers-generic build-essential dkms git
2- On télécharge les modules puis on se place dans le répertoire :
git clone https://github.com/lwfinger/rtlwifi_new.git
cd rtlwifi_new
3- On compile puis on installe les modules compilés :
make all
sudo make install
4- On recharge le module (*) :
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
A ce stade nous avons installé le module, reste à le paramétrer avec les bonnes options.
Je vous donne rendez vous en fin de tuto pour donner la marche à suivre, car elle est identique qu'elle que soit la solution pour laquelle vous avez opté.
4eme solution proposé : le PPA
Cette solution est à utiliser en dernier recours, car selon Pilot6, le dev du ppa, information relayé par xubu1957 :
xubu1957 a écritJe maintiens le hanipouspilotPPA. C'est pourquoi je peux donner la meilleure réponse ;-)
Je n'ai pas téléchargé un rtlwifi-new-dkmspaquet pour Yakkety 16.10.
Vous pouvez essayer de télécharger le deb pour Xenial, mais il est peu probable qu'il soit construit pour le noyau 4.8. Je ne l'ai pas testé.
La raison est simple. Je n'utilise pas cette version et je ne peux pas tester le module.
Vous pouvez essayer d'utiliser un pilote à partir de
https://github.com/lwfinger/rtlwifi_new
Cependant, si rien n'a fonctionné sous votre config, ça ne coute rien d'essayer ... Avec les commandes suivantes :
sudo add-apt-repository ppa:hanipouspilot/rtlwifi
sudo apt-get update
sudo apt-get install rtlwifi-new-dkms
Et puis en ce qui concerne les options je vous donne rendez vous en fin de tuto pour donner la marche à suivre, car elle est identique qu'elle que soit la solution pour laquelle vous avez opté.
[center]
Les options ![/center]
Il existe plusieurs options pour cette carte, pour les connaitre, entrez la commande :
modinfo -p rtl8723be
Le prompt devrait vous retourner :
swenc:Set to 1 for software crypto (default 0)
(bool)
ips:Set to 0 to not use link power save (default 1)
(bool)
swlps:Set to 1 to use SW control power save (default 0)
(bool)
fwlps:Set to 1 to use FW control power save (default 1)
(bool)
msi:Set to 1 to use MSI interrupts mode (default 0)
(bool)
debug:Set debug level (0-5) (default 0) (int)
disable_watchdog:Set to 1 to disable the watchdog (default 0)
(bool)
ant_sel:Set to 1 or 2 to force antenna number (default 0)
(int)
Les options qui fonctionnent le plus souvent sont le réglage d'antenne et l'interdiction de mise en veille de la carte, je vous propose de modifier l'option d'antenne et d'interdire la mise en veille.
Sur mon système c'est l'antenne 2 qui fonctionne le mieux, voici donc la démarche à suivre :
1- On modifie l'option d'antenne et on interdit la mise en veille en rendant les options persistantes (*) :
echo "options rtl8723be fwlps=0 ant_sel=2" | sudo tee /etc/modprobe.d/rtl8723be.conf
2- On Redémarre le module (*) :
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
3- Si jamais ça ne fonctionne toujours pas (ou mal), on refais un essais en basculant sur l'antenne 1 (*) :
echo "options rtl8723be fwlps=0 ant_sel=1" | sudo tee /etc/modprobe.d/rtl8723be.conf
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
Si vous avez opté pour la solution qui convient à votre config, vous devriez remarquer avec ses options un changement radical de votre connexion wifi (tout d'un coup ça fonctionne !!), cependant, si il reste quelques problèmes, metalux donne quelques pistes quand aux options que vous pouvez essayer chez vous :
metalux a écritDéconnexions régulières au bout d'un certains temps aléatoire : fwlps=0
Signal faible: changer l'antenne: ant_sel=1 ou ant_sel=2
Fichiers de log qui grossissent à vu d'oeil après avoir obtenu le wifi : msi=1
Il y a aussi les options ips=0 et swlps=0 qui sont parfois utilisées mais je ne me rappelle plus leur utilité. si vous avez des précisions à apporter...
Pour connaître ses réglages:
for f in /sys/module/rtl8723be/parameters/*; do echo -n "$f: " ; cat "$f" ; done
J'ai volontairement évité de surcharger avec les test d'antenne possibles avant de rendre l'option persistante puisque de toute façon la commande proposé écrase toutes les options préalablement paramétrés.
Si jamais vous voulez supprimer toutes les options et les remettre par défaut, voici la commande à envoyer :
rm /etc/modprobe.d/rtl8723be.conf
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be
Notes :
(*) C'est là que si votre carte est dans la liste que j'ai donné mais n'est pas la rtl8723be il faudra modifier la commande avec la référence de votre propre carte.
[center]
AJOUT[/center]
Un dernier problème réccurent avec cette carte (c'est mon cas) :
Je vous conseille de vérifier votre journal de log au boot :
dmesg
Si le journal renvoyé par le prompt est saturé par des erreurs du style :
[ 210.610457] pcieport 0000:00:1c.5: AER: Multiple Corrected error received: id=00e5
[ 210.610812] pcieport 0000:00:1c.5: PCIe Bus Error: severity=Corrected, type=Physical Layer, id=00e5(Receiver ID)
[ 210.610820] pcieport 0000:00:1c.5: device [8086:9d15] error status/mask=00000001/00002000
[ 210.610826] pcieport 0000:00:1c.5: [ 0] Receiver Error (First)
[ 210.610830] pcieport 0000:00:1c.5: AER: Corrected error received: id=00e5
[ 210.611176] pcieport 0000:00:1c.5: can't find device of ID00e5
[ 210.611178] pcieport 0000:00:1c.5: AER: Corrected error received: id=00e5
[ 210.611183] pcieport 0000:00:1c.5: can't find device of ID00e5
[ 210.611196] pcieport 0000:00:1c.5: AER: Corrected error received: id=00e5
Pour régler ce problème, il suffit
selon le launchpad de rentrer les commandes suivantes :
1) éditer :
nano /etc/default/grub
2) remplacer la ligne commençant par GRUB_CMDLINE_LINUX_DEFAULT par la ligne suivante :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=noaer"
3) update du grub :
sudo update-grub
4) reboot
Merci aux diverses personnes impliqués qui donnent des infos relatives à cette carte depuis plusieurs mois sur les forum Ubuntu, deepin-fr et sur le blog d'Angristan. Si il y a des inexactitudes dans le tuto n'hésitez pas de me le faire remarquer en commentaire, je ne manquerais pas d'éditer.
En espérant avoir pu vous être utile.
Cordialement, lobo.