Solaar, gestionnaire Linux pour les claviers, souris et autres appareils Logitech
(github.com/pwr-Solaar)- Solaar est un outil permettant de gérer sous Linux de nombreux claviers, souris et autres appareils Logitech connectés via des récepteurs Unifying, Bolt, Lightspeed, Nano, ou par câble USB ou Bluetooth
- Solaar n’est pas un pilote de périphérique et ne réagit qu’aux messages spéciaux des appareils ignorés par le système d’entrée Linux
- Ses principales fonctions sont l’appairage/désappairage des récepteurs et des appareils, la configuration des paramètres des appareils, la personnalisation des boutons et l’exécution de règles en réponse à des messages spéciaux
- Les derniers paquets précompilés sont disponibles dans les dépôts standards de certaines distributions Linux comme Fedora, et si la dernière version n’est pas présente dans le dépôt de votre distribution, vous pouvez utiliser les paquets Arch, le PPA Ubuntu/Kubuntu ou le paquet Flake pour NixOS
- Solaar est aussi disponible dans les dépôts Debian, Ubuntu universe, Gentoo et Mageia, mais peut être en retard de plusieurs versions par rapport à la version actuelle
Appareils Logitech gérés par Solaar
- Solaar est un gestionnaire Linux pour de nombreux claviers, souris et autres appareils Logitech
- Les modes de connexion pris en charge sont les suivants
- connexion sans fil via des récepteurs Unifying, Bolt, Lightspeed et Nano
- connexion par câble USB
- connexion Bluetooth
- Solaar n’est pas un pilote de périphérique et ne réagit qu’aux messages spéciaux des appareils ignorés par le système d’entrée Linux
Fonctionnalités prises en charge
- Solaar prend en charge l’appairage/désappairage entre les récepteurs et les appareils
- Il permet de configurer les paramètres des appareils
- Il prend en charge la personnalisation des boutons
- Il peut exécuter des règles en réponse à des messages spéciaux des appareils
- Liens vers la documentation
Paquets d’installation
- Les derniers paquets précompilés sont fournis dans les dépôts standards de certaines distributions Linux comme Fedora
- Si la dernière version de Solaar n’est pas disponible dans le dépôt standard de votre distribution, vous pouvez essayer les paquets suivants
- Arch solaar package : paquet du dépôt extra
- Solaar stable ppa : paquet pour Ubuntu/Kubuntu
- Svenum/Solaar-Flake : paquet Flake pour NixOS
Dépôts pouvant proposer une ancienne version
- Solaar est aussi disponible dans certains autres dépôts, mais il peut être en retard de plusieurs versions par rapport à la version actuelle
1 commentaires
Commentaires sur Hacker News
J’utilise une MX Master depuis plus de 10 ans, et j’apprécie à la fois ses performances, sa batterie, sa conception et sa prise en main.
En revanche, le logiciel Logitech de 150 Mo qu’il faut installer sous Windows pour l’administrer ne me plaît pas du tout, et j’ai l’impression qu’il envoie un paquet de données de télémétrie inutiles.
Agacé en permanence par les problèmes de connexion Bluetooth, j’ai découvert Solaar il y a quelques mois : son interface est meilleure que celle de l’outil Logitech, elle est simple et légère, ce qui montre bien les avantages des logiciels open source.
Solaar a géré l’appairage en 30 secondes, et j’en suis très satisfait.
En revanche, comme Bolt n’apparaît pas comme un vrai périphérique Bluetooth dans le système d’exploitation, le niveau de batterie n’est consultable que dans Solaar.
Après quelques jours d’exécution, les processus Corsair avaient accumulé près d’une heure de temps CPU, alors que Logitech n’en était au maximum qu’à quelques minutes.
Après avoir vu ça, j’ai remplacé tout mon matériel Corsair par du Logitech ou autre chose.
Tout ce que je voulais, c’était éteindre les LED arc-en-ciel ; la prochaine fois que j’achèterai une nouvelle souris, je compte essayer Solaar.
J’aimerais bien que ce soit porté sur Mac aussi.
Aujourd’hui, j’ai découvert un générateur de prompts IA activé par défaut dans le pilote de la souris, ce qui m’a paru encore plus absurde après avoir refusé obstinément pendant des mois les demandes d’autorisation d’enregistrement des saisies.
J’utilise la version “Offline” entreprise de Logitech, qui supprime la plupart des programmes additionnels ; apparemment, cette version ne communique pas avec ses serveurs et ne demande pas d’autorisations supplémentaires. Cela peut varier selon l’environnement.
https://support.logi.com/hc/en-us/articles/11570501236119-Lo...
On vit vraiment dans un drôle de monde.
https://www.logitech.com/en-us/software/logi-ai-prompt-build...
Il imite des événements de balayage, et il est impossible de les configurer comme les boutons standards Mouse Forward et Mouse Backward (M4/M5).
https://superuser.com/a/1216049
Sous Windows, je les configure justement de cette manière pour obtenir un comportement cohérent d’une application à l’autre.
On peut mapper les boutons et ajouter des combinaisons de touches.
En revanche, il ne semble pas encore y avoir de déclencheurs basés sur le mouvement de la souris, par exemple maintenir le bouton retour tout en déplaçant la souris vers la gauche pour changer de Space ; je suis encore en train de chercher.
https://plentycom.jp/en/steermouse/
https://news.ycombinator.com/item?id=29056847
Le pilote Wacom collecte et transmet les noms des applications et les titres des fenêtres, et continue de le faire même après la grosse controverse que cela a suscitée.
Il coûte quelques dollars, mais il existe une version d’essai et il peut aussi s’installer via Homebrew.
https://better-mouse.com
Je me demande s’il existe une alternative de ce genre sous Windows.
Les souris Logitech sont globalement bonnes, mais l’un de leurs gros défauts est que les fonctions macro ne sont pas embarquées : même pour associer un bouton à une combinaison de plusieurs frappes, il faut un logiciel auxiliaire comme G-Hub.
Sous Linux, il y a Solaar et Piper/libratbagd, et sur macOS, SteerMouse semble plutôt bien adapté aux souris avec beaucoup de boutons.
S’il existait un bon remplaçant à G-Hub sous Windows, je pourrais recommander beaucoup plus facilement les souris Logitech à mes amis et à ma famille qui n’utilisent que Windows.
C’est pour cette raison que Roccat était autrefois ma marque préférée. Toutes les fonctions que la souris pouvait offrir étaient disponibles en embarqué : une fois configurée, on pouvait supprimer le logiciel utilisé sans aucune limitation.
En revanche, le contrôle qualité du matériel était déjà mitigé depuis longtemps, et j’ai l’impression que cela va empirer depuis le rachat par Turtle Beach.
C’est pareil sur leurs souris gaming absurdement chères.
Avant d’acheter du Logitech, je n’avais jamais eu de souris dont les boutons tombaient en panne ; et quand des gens autour de moi en font l’éloge, la conversation change dès qu’on leur demande combien ils en ont racheté.
J’avais perdu le dongle de ma souris et, à ce moment-là, je n’avais qu’Ubuntu sous la main : Solaar m’a vraiment beaucoup aidé.
J’ai pu appairer la souris au même dongle que celui utilisé par le clavier, et depuis je l’utilise sans problème.
J’utilise un clavier MX Mechanical Mini et une souris MX Ergo, mais leurs dongles sont différents et incompatibles, donc impossible de les appairer au même dongle.
En plus, le dongle branché sur le port USB-A droit de mon ordinateur portable a toujours de la latence sans raison.
Je me demande si Solaar résout ce genre de problème.
En entreprise, on fournit des kits clavier/souris sans fil parce que c’est moins cher que de remplacer le clavier intégré d’un ordinateur portable, et que cela risque moins de provoquer des troubles musculosquelettiques chez les utilisateurs.
Quand on l’apprend douloureusement en tant que junior, ce n’est pas drôle du tout.
J’utilise Solaar depuis assez longtemps avec une vieille MX Master 2S.
Je m’en sers surtout pour régler le point à partir duquel la molette cesse de cranter et passe en rotation libre.
Logitech a intégré dans la souris un levier électrique qui contrôle le mécanisme à cliquet, et Solaar propose une option pour l’ajuster ; ça fonctionne très bien.
J’aime aussi pouvoir associer des raccourcis clavier à certains gestes via le bouton sous la paume.
J’achète Logitech parce que Solaar existe.
J’aimerais que les développeurs de Solaar soient rémunérés d’une manière ou d’une autre, et il ne manquerait plus qu’un générateur de prompts IA pour que ce soit complet.
Je ne vois absolument pas comment de l’IA pourrait trouver sa place dans un utilitaire de configuration de souris.
J’aimerais que quelqu’un qui connaît bien Linux m’explique.
D’après ce que je comprends, c’est une sorte d’implémentation de pilote pour Linux, mais je me demande comment cela peut être écrit entièrement en Python.
Le code de pilotes est généralement écrit en C ou en C++, et il me semble que la nouvelle approche du développement noyau se fait en Rust.
Je ne comprends pas comment cela peut fonctionner en pur Python.
Le pilote Linux standard implémente ce qui est nécessaire pour recevoir les messages HID, et Solaar traite par-dessus les messages spécifiques au fabricant.
C’est comparable à un programme qui envoie des messages TCP propriétaires d’un fabricant au-dessus du pilote réseau existant du système d’exploitation : ce programme n’a pas besoin d’être un pilote réseau au niveau du noyau.
Il ne semble pas fonctionner au niveau du noyau.
L’utilisateur devait vérifier lui-même si l’IRQ21 était déjà utilisée par le BIOS ou par un autre périphérique, puis installer un pilote de périphérique qui lisait et écrivait à des adresses mémoire spécifiques pour communiquer avec le contrôleur selon une méthode propriétaire définie par chaque entreprise.
Aujourd’hui, l’industrie du matériel a beaucoup progressé en standardisant le fonctionnement des périphériques.
Grâce aux entrées/sorties mappées en mémoire, le système d’exploitation peut traiter beaucoup de pilotes de périphériques de façon similaire, et il n’a plus qu’à gérer les manipulations mémoire après lecture et écriture.
Avec l’USB, les classes de périphériques ont été standardisées : périphériques de communication, périphériques audio, périphériques de capture vidéo, et ici HID.
Le noyau peut donc faire plus de 80 % du travail de développement d’un pilote, d’autant plus avec la philosophie Linux selon laquelle « tout est fichier ».
Quand on branche un dongle USB, on peut supposer que des fichiers comme
/sys/class/hid//{control, data}apparaissent.Par exemple, si l’on écrit une valeur très précise dans le fichier
controlpour changer le canal RF du dongle, le noyau la reçoit et l’envoie au périphérique ; on pourrait aussi faire uncatdu fichier.../datapour obtenir les données brutes du clavier ou de la souris.En théorie, en Python, on pourrait connecter le fichier
.../dataà un gestionnaire de lecture, traiter les entrées, puis émettre des commandes du système d’exploitation comme des mouvements de souris ou des événements clavier, ce qui reviendrait à créer quelque chose ressemblant à un pilote de périphérique.Le cœur du sujet, c’est le traitement des entrées, et c’est la partie difficile qui nécessite de la rétro-ingénierie.
Comme le système d’exploitation ne s’en occupe pas, il remplace certaines des fonctions normalement assurées par les applications Logitech.
Je pose la question par ignorance, mais je ne comprends pas pourquoi il faut une application pour gérer un clavier et une souris au départ.
Ce n’est pas pris en charge directement par un pilote générique ?
Par exemple, sur la MX Master, on peut configurer les événements déclenchés par les 6 boutons.
La K810 émet des événements spéciaux comme si les touches de fonction étaient cassées, mais un logiciel permet de les ramener à des touches de fonction standard comme F1.
Le HID++ dont il est question ici concerne les dongles Logitech, parfois combinés à la prise en charge Bluetooth du périphérique réel.
Pour les options supplémentaires et le contrôle de l’appairage d’un trackball Logitech, voir cette capture d’écran.
[1] https://usercontent.irccloud-cdn.com/file/2cZcZiNk/image.png
Ces fonctions ne font pas partie du standard USB HID, donc aucun système d’exploitation ne les prend en charge nativement.
En général, c’est pour des réglages utilisateur comme le DPI et la fréquence de rafraîchissement de la souris, les réglages de réponse tactile du clavier (https://wooting.io/) ou l’association de raccourcis.
Quand il faut retrouver des réglages cohérents sur une machine qui n’est pas la sienne, par exemple lors d’une LAN party, cela passe de simplement pratique à quasiment indispensable.
J’utilise Solaar depuis plusieurs années, et il fonctionne exactement comme annoncé, sans problème.
Merci de continuer à maintenir ce projet utile.
J’utilise depuis plusieurs années un clavier Logitech K400 avec pavé tactile intégré, ainsi que Solaar.
Je les utilise sur un Raspberry Pi branché à la TV, et tout fonctionne très bien, sans souci.
Je ne l’ai jamais connecté au logiciel Logitech sur Mac ou Windows.