Régler la luminosité de n’importe quel écran au clavier sous macOS

Dans les trucs pratiques des écrans Apple, il y a le contrôle de la luminosité et du volume au clavier, sans passer par les menus abscons des écrans. Et il existe un petit logiciel qui permet de faire ça avec (presque) n’importe quel moniteur.

J’avais déjà parlé d’un outil de ce type il y a longtemps, mais il était instable et ne fonctionnait pas sur tous les ordinateurs. Depuis, le hackintosh a du succès et un développeur a donc programmé un logiciel capable de le faire sans planter et de façon assez transparente.

Le programme s’appelle NativeDisplayBrightness et se télécharge sur GitHub. Il utilise les commandes DDC/CI pour essayer de contrôler la luminosité de l’écran, une norme assez ancienne qui utilise un bus I2C. Les commandes passent dans la majorité des sorties vidéo : j’ai testé en VGA, en DVI et en HDMI à travers des adaptateurs Mini DisplayPort sans soucis. Je n’ai pas testé en DisplayPort faute d’écran sous la main (ni avec des adaptateurs USB-C) mais ça devrait fonctionner.

Un petit réglage


L’interface native de macOS

Le logiciel est un peu brut de décoffrage : il faut le lancer, lui permettre d’accéder aux écrans (dans les Préférences Système)… et c’est tout. Il va se lancer seul au démarrage et il n’a pas d’options ni de fenêtre de réglage. En pratique, il utilise les API privées de macOS pour afficher le menu de réglage de luminosité classique. Attention si vous avez un Mac ou un clavier Apple : il utilise les touches F1 et F2 pour régler la luminosité, il faut donc presser Fn + F1 (ou F2) sur un Mac portable ou un clavier Apple (en tout cas par défaut). Petite astuce si vous Gatekeeper activé, faites un clic secondaire puis Ouvrir pour le lancer.

Quelques tests

Sur mes écrans, tous assez anciens, c’est un peu mitigé : j’en ai trois ou ça ne fonctionne pas (dont deux très anciens, une bonne vingtaine d’années), un qui fonctionne seulement en partie (la luminosité maximale du programme n’est pas celle de l’écran) et deux qui acceptent parfaitement le programme. Sur les moniteurs modernes (moins de 5 ans), le taux de réussite est forcément plus élevé. Un sujet de forum permet de voir ce qui marche (ou pas).

• Avec un LG Flatron L1511S, ça fonctionne en VGA. Par contre, la luminosité maximale via l’application place la valeur à 39 dans l’OSD de l’écran (et pas à 100).
• Avec un Apple Studio Display en VGA, ça ne fonctionne pas.
• Avec un Samsung SyncMaster 2333SW en VGA, ça fonctionne.
• Avec un BenQ T905 en VGA, ça ne fonctionne pas.
• Avec un Hanns.G HG281D en VGA, ça fonctionne.

• Avec un Hanns.G HD281D en HDMI, ça fonctionne.

• Avec un Samsung SyncMaster 2333SW en DVI, ça fonctionne.
• Avec un BenQ T905 en DVI, ça ne fonctionne pas.
• Avec un Gateway FPF150 en DVI (vers DFP), ça ne fonctionne pas.

Mes autres écrans sont des écrans Apple avec un contrôle direct de la luminosité dans l’OS, en USB.

La vidéo montre ce que ça donne avec un écran Samsung. J’ai calé la luminosité de la vidéo pour bien montrer que ça marche (sinon l’iPhone compense en temps réel).

En théorie, il doit aussi être possible de gérer le volume des enceintes d’un écran de cette façon, avis aux développeurs en herbe.