Désactiver la mise en veille connectée (S0) sous Windows 10
Je parle rarement de Windows sur mon blog, mais je souhaite quand même partager ce retour d’expérience qui en aidera probablement plus d’un, vu la difficulté que j’ai eu à trouver une solution.
Je viens de réinstaller mon Dell XPS 13 9360 en dual-boot, et après avoir utilisé Windows 10 un petit peu, je me rends compte que l’ordinateur ne se met pas en veille (enfin presque).
Les symptômes
Que je ferme mon PC, ou que je passe par le menu d’alimentation, rien à faire, pas de mise en veille.
En effet le bouton d’alimentation reste illuminé, le retro-éclairage du clavier s’éteint après son timeout classique, mais pas tout de suite. Les périphériques USB sont suspendus et l’écran s’éteint quand même. Par contre quand je le réveille je me retrouve sur l’écran de verrouillage mais pas verrouillé.
C’est un peu comme une semi-veille, ou comme si quelque chose l’empêchait de se mettre en veille. La mise en veille prolongée ou mise en hibernation fonctionne néanmoins.
A la recherche de solutions
Si vous tombez sur cet article via un moteur de recherche, vous êtes probablement déjà passé par celles-ci.
Aucune n’a fonctionné pour moi.
- Désactiver l’hibernation
- Mettre à jour les drivers
- Désactiver le fait que le PC reste connecté lorsqu’il est en veille (techniquement c’est le problème mais il faut la régler manuellement et pas dans les réglages)
- Faire un
powercfg /requests
viacmd
en administrateur pour voir ce qui bloque la mise en veille :
- Faire un
powercfg energy
viacmd
en administrateur pour avoir un rapport HTML sur la gestion de l’alimentation, et ne rien en tirer de concluant
- Modifier le profil de gestion de l’alimentation, certains paramètres empêchent de passer en veille mais je n’en n’avais pas
Je crois avoir fait le tour.
Tout s’explique !
En fait l’ordinateur passe bien en veille, le problème n’est pas là. C’est son état de veille qui ne convient pas ! En effet en regardant de plus près le rapport HTML généré plus haut, il y a un paragraphe qui concerne les états de veille.
On retrouve ces informations avec la commande powercfg /a
via cmd
en administrateur.
Voici ce que j’avais alors :
En se renseignant un peu sur les états de veille, on apprend qu’il en existe 5, de S0 à S5.
S0 est le mode qui consomme le plus d’énergie :
At S0 the computer is in a Working power state and the system is fully operational. Even so, certain devices that are not currently being used can enter into a low power state to save power.
S3 c’est le mode de veille « classique » et S4 l’hibernation (S5 c’est quasiment une extinction). En fait, le mode S0 c’est un mode basse consommation ou le PC peut rester connecter au réseau, etc. Si je ne dis pas de bêtises il me semble qu’il n’est supporté que sur des processeurs récents, le mien étant un i7-7500U de la génération 7 donc, soit Kaby-Lake.
Le mode S0 étant disponible, Windows va considérer que veille = S0, et il n’est pas possible de le mettre dans un autre état de veille. Le mode S0 n’est pas une mauvaise idée en soi, mais je n’en n’ai absolument pas l’utilité : si je veux mettre mon PC en mode veille c’est que je ne m’en sers pas ou alors que je le mets dans mon sac quelque temps pour le transporter, et donc je n’ai pas envie qu’il perde de la batterie entre temps ou de le ressortir bouillant de mon sac. D’autant plus qu’il ne verrouille pas le PC et n’éteint pas le ventilateur, bref, non merci.
La solution
Si vous m’avez suivi jusque là vous aurez donc compris que la solution est de désactiver le mode S0. Malheureusement la gestion des états de veille n’est absolument pas intégrée dans l’UI et quelqu’un qui ne s’y connaît pas un minimum n’a aucune chance de trouver que ce souci est lié aux états de veille, et encore moins comment les modifier.
Pour désactiver S0, il faut ouvrir l’éditeur de registre avec la touche super
+ r
et ensuite taper regedit
.
Ensuite il faut modifier la clé HKLM\System\CurrentControlSet\Control\Power\CsEnabled
de 1 à 0.
Solution trouvée sur le forum Lenovo.
Et voilà !
On peut vérifier que S0 est désactivé avec powercfg /a
via cmd
en adminstrateur. Pour moi c’est le mode S3 qui est utilisé désormais.
Maintenant j’ai accès à une mise en veille complète, ce qui devrait être présent ou activable de base quoi… Mais bon, Windows.
D’ailleurs après avoir désactivé S0, j’ai accès à tous les profils dans la gestion de l’alimentation ainsi que toutes les options, alors que je n’avait qu’un profil et 5 options avant…
Bref, cet état de veille est donc vraiment une plaie, mais je suis content d’avoir trouvé la solution, et j’espère que ça pourra servir à d’autres !
Dernière modification le 17 décembre 2017.
depuis la mise a jour windows10 de mai 2020
le CsEnabled a été supprimé de la base de registre
la nouvelle solution est:
lancer cmd.exe en mode admin
et taper:
reg add HKLM\System\CurrentControlSet\Control\Power /v PlatformAoAcOverride /t REG_DWORD /d 0
après un redémarrage verifier dans cmd.exe avec la commande » powercfg /a » que la veille est passé en S3 a la place de S0
solution trouvé dans : https://www.reddit.com/r/Dell/comments/h0r56s/getting_back_s3_sleep_and_disabling_modern/
Malheureusement, ça ne fonctionne pas correctement sur mon PC portable : à la sortie de veille, l’écran intégré reste éteint.
J’ai vraiment l’impression que Microsoft veut nous forcer à utiliser son mode de veille hybride, et qu’ils ont rendu le mode veille normale inutile dans ce seul but. Si c’est vrai, ce serait une pratique hypocrite et déloyale, assez typique de leur nouvelle manière de faire ces dernières années.
Forcément, les fabriquants de matériel s’adaptent aux changements que leur impose le système d’exploitation. Donc ils ne maintiennent plus les modes de veille inutilisés (S1 à S3), ou du moins ne les testent plus extensivement. Ça pourrait expliquer pourquoi on rencontre des problèmes lorsqu’on réactive le mode S3 (voir la discussion sur le forum donné par lechar.
Très bonnes infos! C’est totalement impossible d’utiliser Windows 10 sans la recherche constant des moyens dont il fait la surveillance de ses utilisateurs.
Aussi merci pour le suivi sur GitHub 🙂
Bonsoir,
Hier encore, mon ordinateur sous Window 10 rencontrer des problèmes de veille :
– 1.1 Quand j’essaie de mettre manuellement mon ordinateur en veille (par l’option « mettre en veille »), je suis rediriger vers mon écran de verrouillage ; écran et souris encore allumer !
– 1.2 Aujourd’hui, le problème est régler. Il me suffisais apparemment de désactiver mon périphérie « clavier » et « souris » pour que mon ordinateur passe en veille, sauf que, du coup, pour le sortir en veille, s’est compliqué !
– Puis, parfois, quand j’éteins mon ordinateur, il se rallume juste après.
Voilà les soucis que je rencontre. Je suis a la lettre votre poste, remarque que nous avons la meme configuration et donc, j’effectue votre solution. Je modifie la clé HKLM\System\CurrentControlSet\Control\Power\CsEnabled de 1 à 0, mais rien n’a changer dans mon configuration ! Je suis toujours en S0 !
Pouvez-vous m’aider ? Merci.
Et, maintenant, en gardant toujours cette meme configuration, je ne suis ni en mode S0 ou en S3, mais juste en démarrage rapide. Le veille a complètement disparue (même dans les options alimentation, il faut que j’aille dans les avancées pour qu’elle apparaisse encore).