Me Gamer and Linux User = Impossible Mission ? Not exactly. Part 8

 

 

 

Asus TUF Gaming, Asus ROG Gaming, Asus Aurora, AlienWare, Gigabyte Aero, Gigabyte Fusion RGB, Nvidia, Corsair, Seasonic, NZXT, …. sont des noms qui résonnent forts dans le cœur des Gamers. Et vous le savez bien car ils résonnent aussi dans votre cœur, même si vous n’en êtes pas vraiment un.  C’est ce que nous allons voir  mais maintenant que vous avez l’eau à la bouche, nous allons commencer ………….doucement. Vous commencez à avoir l’habitude depuis le temps.

Commençons par Gigabyte et sa gamme de portable Gaming Aero avec 3 projets.

fusion-kdb-controller

Créé par martin31821, fusion-kdb-controler permet la configuration RGB du clavier de ce portable.

Il fonctionne sur un Aero 15(X) cependant, d’après son auteur, il est loin d’être complet.

Il n’est packagé pour aucune distribution. Vous serez donc obligé de le compiler en lisant la section correspondante dans le Readme.

A lancer avec les privilèges root!

 

fusion-kdb-controller-rs

fusion-kdb-controller-rs est, comme vous devez vous en doutez, un fork un plus évolué du projet précédant : fusion-kdb-controller.   daniel5151, son auteur, est allé un  peu plus loin. En effet, vous pouvez actuellement :

  • basculer entre les différents présets pré-installés
  • lecture du fichier personnalisé de configuration
  • maj du fichier personnalisé de configuration

Bien entendu, là aussi, il n’y a aucun paquet quelque soit la distribution utilisée.

 

dotnet-core-fusion-keyboard-api

dotnet-core-fusion-keyboard-api est un jeune projet de deux mois à peine réalisé par un français de son alias rameauv. Je ne pourrais vous en dire guère plus sauf qu’il est basé là aussi, sur le travail initial de martin31821 pour l’Aero 15(X).

Bien entendu, là aussi, il n’y a aucun paquet quelque soit la distribution utilisée.

 

Faustus

Voici un autre projet intéressant. Faustus est un driver pour Linux concernant la série des portables Asus TUF Gaming.

Il permet, entre autre, de contrôler l’intensité du clavier rétroéclairée, les leds de celui-ci ainsi que le mode du ventilateur.

Un coup d’œil sur le site Github du projet vous permettra de savoir si votre matériel est supporté, de poser des questions et de voir l’état et l’usage de ce projet.

En attendant, voici la liste officielle du matériel supporté:

Il est disponible sur Aur pour toutes les distributions basées sur Archlinux dont Manjaro et il s’installe de la manière suivante :

yaourt -S faustaus-aur

 

Après les portables Asus Tuf Gaming, c’est au tour des portables Asus ROG d’enter dans cette liste avec 2 projets sur 4 autres découverts lors de l’écriture de cette partie, ….sur sa fin. Il est toujours conseillé de jeter un œil plus ou moins profond sur les Issues et les PR, y compris celles qui sont fermées. C’est toujours une mine d’informations qui sont souvent omises dans les Readme et les Wiki quand ils existent.

 

OpenAuraNb

Commençons donc par le premier : openauranb le bien nommé. Il s’agit d’un driver open-source pour contrôler les lumières du portable Gaming ASUS ROG GL553VE.

Bien entendu, il n’est pas disponible pour aucune distribution. Toutefois, d’après le Readme, son utilisation est plutôt simple. Télécharger le projet de la manière qui vous va le  mieux.

Voici l’exemple en console avec ce formidable outil qu’est git.

git clone https://github.com/MidhunSureshR/openauranb.git

Ouvrez une console dans le dossier cmake-build-debug.

Toujours dans le terminal, tapez la commande suivante :

$ sudo ./openauranb color_mode

Remplacez bien entendu color_mode par la couleur que vous désirez. Celle-ci est dans le format hexadécimal. Exemple :

#FF0000 donnera ……Rouge

#0C28F0 donnera ….Bleu

#F00CCE donnera ….Rose, etc…

Donc nous aurons la commande suivante pour avoir un clavier rouge :

$ sudo ./openauranb FF0000

C’est facile.

 

RogAuraCore

rogauracore ou plutôt RGB Keyboard Control for Asus ROG Laptop permet lui aussi,  de contrôler les lumières des claviers des portables ASUS ROG.

Cette liste est plus importante que le projet précédant. Voici celle-ci :

  • GL 533 id 0b05:1854
  • GL 753 id 0b05:1854
  • GL 503 id 0b05:1869
  • FX 503 id 0b05:1869
  • GL 703 id 0b05:1869
  • GL 504 id 0b05:1866
  • GL 703 id 0b05:1866
  • GX 501 id 0b05:1866
  • GM 501 id 0b05:1866

Bien entendu, il n’est pas disponible pour aucune distribution. Cependant, l’auteur indique dans le Readme comment le compiler pour Ubuntu et aussi si on l’ a récupérer en clonant le dépôt Github. Assez bizarrement, la procédure diffère un peu.

Son usage est plutôt simple :

rogauracore COMMAND_ARGUMENTS

Bien entendu, COMMAND_ARGUMENTS doit être remplacé par un élément de la liste suivante :

  • single_static
  • single_breathing
  • single_colorcycle
  • multi_static
  • multi_breathing
  • red
  • green
  • blue
  • yellow
  • cyan
  • magneta
  • white
  • black
  • rainbow

 

Attaquons nous maintenant à un autre grand  (et cher !) fournisseur de portable Gaming : AlienWare. J’ai sélectionné 4 projets qui me semblent/sont particulièrement abouti.

AlienFxLite

Premier à ouvrir le bal, AlienFxLite est un projet en Java Bien que ce projet ne semble plus développé depuis environ 3 ans, il est à voir. Initialement développé pour les portables des séries M15x et M17x, les dernières modifications ayant été testées, l’ont été sur les portables M14x R2 et R3.

Bien entendu, là aussi, il n’existe aucun paquet, quelque soit la distribution. il faudra donc récupérer les sources pour les compiler après s’être assuré que toutes les dépendances nécessaires à la compilations soient présentes. Je n’aurai qu’un conseil : lisez bien le Readme avant.

 

AlienFx

Écris en Python, AlienFx est un programme fonctionnant à la fois en CLI (alienfx) et avec une interface graphique (alienfx-gtk) dont l’objectif est de contrôler tous les effets lumineux des portables AlienWare. Il a été testé avec succès sur Debian/Ubuntu, Kali, Linux Mint 19,   Fedora et Archlinux.

AlienFx est disponible que sur AUR. Pour cela, il suffit de taper la ligne suivante dans un terminal:

yay -S alienfx

Comme vous pouvez vous en doutez, il n’est pas packagé pour les autres distributions. Vous serez donc obligé de l’installer manuellement. Mais dans la section Dependencies du Readme, vous disposez de toutes les instructions nécessaires à cette tâche.

A noter que le programme dispose des fameuses règles Udev qui évitent à l’utilisateur quand elles sont présentes de lancer le programme en tant que root.

Voici une liste impressionnante de portables supportés par AlienFx.

Dommage que son auteur n’ai pas mis une capture d’écran de la Gui et aussi des explications sur son utilisation en CLI.

 

Alieneffects_13r3

Alien Effects for Alienware 13 R3 ou alieneffects-13r3 est un logiciel écris en Python afin de customiser les LED s de différentes zones d’un portable AlienWare 13 R3 sous Linux bien entendu.

Vous avez en votre possession deux méthodes pour l’installer car il n’est packagé pour aucune distribution.

  • Le moyen le plus facile est de l’installer avec Pip puisqu’il s’agit d’un programme Python disponible sur PiPY.org.

sudo pip(3) install alienware-13r3-alien-effects

  • L’autre moyen est de l’installer à partir des sources en clonant le repo puis de lancer l’installation en exécutant le setup.  à l’aide de la commande suivante:

sudo python(3) install setup.py

Une fois ceci réalisé, vous êtes aptes à configurer les Leds des 8 zones configurables du portable. Alieneffects 13 R3 est un outil en ligne de commande (CLI) qui dispose toutefois d’offrir la possibilité d’ouvrir une TUI (Textual User Interface) pour appliquer un thème pré-défini. L’auteur ne précise pas si Alieneffects 13 R3 vient avec des thèmes pré-défini, ni combien. Cependant, il explique comment créer son/ses propre(s) thème(s).

Voici le TUI en question.

Voici la liste des commandes :

Différentes zones de codes peuvent être attribuées avec différentes zones de couleurs éclairées.

Un peu plus d’informations sur la manière dont Alieneffects 13 R3 fonctionne ici. Il est quand même dommage de ne pas fournir une GUI plus aboutie et fonctionnelle qu’un TUI pour ce logiciel très complet mais seulement limité au modèle 13 R 3.

 

AKBL

AKBL est le dernier logiciel de ce comparatif pour les portables Gaming de la marque AlienWare. C’est aussi un logiciel écris en Python (CLI) qui dispose cependant d’une belle et complète interface en Gtk3 épaulé par un menu dans le systray. Comme les précédents, il a pour but de contrôler les Leds (du clavier, du logo, des haut-parleurs, etc …) des portables AlienWare.

Avant toute chose, il faut l’installer. Et comme souvent, vous commencez à le savoir, il n’est disponible pour aucune distribution pour le moment. Pour cela, en suivant les conseils de l’auteur, télécharger la branche stable de la manière qui vous sied le mieux. Avec Git cela donnera la CLI suivante:

git clone https://github.com/rsm-gh/akbl.git

Installer ensuite les dépendances en suivant les indications de la section correspondante. Celles-ci sont pour Debian/Ubuntu et pour Archlinux et dérivées. Assez étrangement, il n’existe aucun PKBUILD alors que son auteur semble tourner sur Archlinux. Ensuite exécuter le setup de la manière habituelle. Si vous avez réussi à installer akbd sur une autre distribution, veuillez ouvrir une demande afin de compléter la section correspondante du Readme.

Vous avez ensuite le choix soit d’utiliser la ligne de commande ou bien l’interface graphique. L’usage en CLI est assez simple:

akbl <option>

Voici la liste des options.

A noter deux fonctionnalités assez intéressantes et inhabituelles:

  • Vous pouvez aussi changer les couleurs des Leds en fonction de la température du CPU.
  • Vous pouvez aussi changer les couleurs des Leds en fonction de la météo

Dernier point, akbl est une API Python qui fournit en plus de la GUI et de la CLI un daemon. Un programme vraiment complet. Mieux qu’une explication, un schéma.

Bien que cela ne soit pas mis en avant, et c’est dommage, en fouillant un peu j’ai pu établir la liste des portables supportés, liste assez conséquente que voici:

  • Alienware M 15
  • Alienware 13 R1
  • Alienware 13 R3
  • Alienware 15 R1
  • Alienware 15 R3
  • Alienware 15 R4
  • Alienware 17 R2
  • Alienware 17 R4
  • Alienware 17 R5
  • Area51 R2
  • Area51 R5
  • Area51 m
  • Aurora R4
  • Aurora R7
  • Dell G5 5590
  • M11 X R1
  • M11 X R2
  • M14 X R1
  • M14 X R2
  • M14 X R3
  • M17 X R1
  • M17 X R2

 

Si votre portable n’est pas encore supporté et qu’il n’y a déjà aucune demande de faite ici, lisez les instructions de la section correspondante avant de rapporter une demande de prise en charge de celui-ci.

 

Le projet est très bien documenté et pour couronner le tout, il s’agit d’un français de Toulouse rsm-gh. Cocoricooo. N’hésitez pas  à solliciter rsm-gh qui semble particulièrement réactif aux demandes des ses utilisateurs.

 

nvidia-led

nvidia-led est l’équivalent à GeForce Experience LED Visualizer mais pour Linux pour les cartes graphiques NVidia GeForce GTX disposant de LED.

Grâce à lui, et en ayant installer les drivers propriétaires nvidia version supérieur ou égale au 331.38, vous piloterez les Leds de la carte.

Cet outil en ligne de commande, est disponible sur AUR et donc pour Manjaro et il s’installe de la manière suivante:

yaourt -S nvidia-led

L’usage de cet outil est simple : on définie l’effet voulu avec l’intensité et son intervalle. Par exemple:

$ nvidia-led no-animation 80

$ nvidia-led breathing 40-100 25 50

Pour l’instant, 4 effets sont disponibles:

  • effet Flashing
  • effet Double Flashing
  • effet Breathing
  • effet Fixed brightness (pas d’animation, luminosité fixe)

 

Gigabyte_ambientled_Ctrl

gigabyte_ambientled_ctl est un ensemble de scripts permettant de contrôler l’ambiance des leds qui sont sur certaines cartes mères GIGABYTE.  Ce support concerne les cartes utilisant le chip  GPIO ITE 8620/8628.

Voici la liste des cartes actuellement supportées.

gigabyte_ambientled_ctrl autorise les fonctionnalités suivantes :

  • configuration des Leds du panneau arrière
  • contrôle des Leds du mode Audio
  • fonctionne (pour l’audio) seulement quand la carte son est utilisée

Bien entendu, ce logiciel doit être lancé en tant que root ; votre kernel doit être capable de fonctionner avec le chip gpio-it87. Le support pour le contrôleur ITE 8620/8628 est disponible depuis le kernel 4.7. Si vous disposez d’un kernel plus vieux, il existe un patch qui peut-être trouvé ici.

Si votre carte n’est pas supportée, n’hésitez-pas à ouvrir un ticket sur le site du projet et de tirer en même temps son auteur de sa léthargie. Il n’y a rien de pire d’être seul pour être inactif.

AsrLed

Découvert par hasard il y a seulement deux jours, AsrLed est un pilote Python gérant les Leds pour les cartes mères ASROCK. Pour info, ASROCK est le 4ème fabricant de carte mères avec ASUS, MSI, GYGABYTE. C’est un projet en devenir de seulement un mois d’existence. Malheureusement, pour l’instant, il ne concerne qu’une seule carte mère ASROCK : la carte Fatal1ty AB350 Gaming-ITX/ac. Comme vous pouvez vous en doutez, vous serez obligé de l’installer manuellement. En regardant le code, j’ai pu constaté que ce pilote permet les effets Leds suivant pour ce modèle de carte mère :

  • static
  • breathing
  • strobe
  • cycling
  • random
  • music
  • wave

A essayer si vous avez ce genre de matériel et que vous êtes téméraires. Et que vous en trouvez l’utilité et pourquoi pas aider ce projet en devenir. A noter un rapprochement avec l’auteur d’un autre grand projet OpenAuraSDK que nous verrons un peu plus loin.

Linux ASUS WMI Sensor Driver

Linux Asus WMI Sensor Driver est un pilote/driver HWMON en utilisant lm_sensors pour de multiples Cartes Mères Asus pour les processeurs Ryzen et Threadripper. Pour info, lm_sensors fournit des outils et des drivers pour gérer les températures, le voltage, l’humidité, les ventilateurs et aussi les intrusions des châssis de tours des cartes mères qui en sont équipés.

Pour l’installer sous Manjaro (et donc Archlinux), rien de plus simple puisqu’il est disponible sur AUR.

yay -S asus-wmi-sensors

Voici la liste des cartes mères supportées par le logiciel:

Ces fonctionnalités sont  les suivantes:

  • aucune configuration des capteurs n’est requise
  • information identiques (noms et valeurs) à celles fournit par UEFI de la carte mère

Et pour finir, voici un exemple de sortie des capteurs.

Même si ce ne sont pas les derniers projets de cet article, ce sont certainement les plus intéressants que se soit par les fonctionnalités qu’ils apportent, que par le domaine auxquels ils s’attaquent. Tous les projets que nous avons vu jusqu’à présent tout au long de ces articles utilisent deux librairies : libusb et hidraw. Ce sont des protocoles pour avoir accès a ce type de périphériques qui l’utilisent aussi en sens inverse. Par exemple, l’idVendor et l’idProduct sont intégrés par le constructeur à son périphérique. Et ils sont lu en retour par libusb et /ou hidraw. Et ces informations sont communes à tous les systèmes puisqu’elles appartiennent au périphérique lui-même. Faites un petit test avec la commande lsusb dans un terminal.

Vous ne vous êtes pas demandé tout au long de ces articles pourquoi certains produits, même s’ils figurent en tant que demande, ne sont pas inclus dans aucun des projets que nous avons vu et ne le seront jamais, pas du moins sans passer par SMBus.

Et le plus bel exemple est ……………….les barrettes mémoires. Mais nous en reparlerons un peu plus loin.

LiquidCtl

Crée en Python par Jonas Malaco, un brésilien de Sao Paulo, liquidctl est un programme en ligne de commande CLI, brillamment crée en utilisant non seulement pyusb (la variante python de libusb), hidapi (la variante python aussi) mais aussi et surtout PMBus. Il est disponible non seulement pour Linux mais aussi pour MacOS et même Windows.

Liquidctl prends en charge en premier lieu les All-In-One. Dans la partie n 5 de cette série,  je m’interrogeai sur le fait que certains fabricants étaient très bien pris en charge par les logiciels présentés mais pas d’autres.

La réponse est sur l’utilisation des protocoles

Voici la liste des AIO pris en charge par Liquidctl:

Mais Liquidctl prends aussi en charge d’autres périphériques tel que les alimentations intelligentes Corsair des séries RMi et HiX, les alimentation Seasonic/NZXT de la série E, les Hub intelligents pour ventilateurs et bandes leds de la marque NZXT, de type, Grid+V3, Hue2, Hue 2 Ambient, Smart Device inclus dans les boîtiers H510 Elite, H510i, H710i, M210i. Comme vous pouvez le voir, la liste des périphériques et de leur utilisation est assez variée.

Mais avant toute chose, commençons par l’installer. Je ne parlerai que pour Linux, les instructions pour MacOs sont ici et pour Windows ici.

Sous Manjaro (et donc sous Archlinux), liquidctl est packagé sur AUR en deux versions : la stable et celle de développement. En ligne de commande voici ce qu’il faut faire:

  • la version stable

$ sudo yay -S python-liquidctl

  • la version de développement

$ sudo yay -S python-liquidctl-git

Maintenant que tout est en place, apprenons à nous servir basiquement du logiciel.

En premier lieu, le périphérique doit être initialisé. Une fois cette opération réalisée, à ce moment là, le logiciel pourra alors gérer, contrôler beaucoup de choses. Notez que vous pouvez gérer à la fois sans soucis plusieurs périphériques par Liquidctl. Comme ce logiciel touche au bas niveau, il doit être lancé en root. Pour l’arrêter, c’est l’opération inverse : on réinitialise le périphérique avec la même commande. Ce qui revient à faire :

#liquidctl initialize

On peut obtenir la liste des périphériques reconnus par liquidclt:

#liquidctl list --verbose

On peut obtenir de nombreuses informations sur le périphérique tel que :

  • la température
  • la vitesse des ventilateurs
  • la vitesse de la pompe
  • le firmware (si disponible)
  • les led disponibles connectées
  • etc….

Si on veut savoir la version utilisée de Liquidctl, on fait:

#liquidctl --version

Un bon  réflexe est de vérifier s’il y a une aide, ce qui peut-être utile avec les outils en CLI:

#liquidctl --help

Le logiciel possède un manuel que nous pouvons avoir dans un fichier texte que nous appellerons ici manliquidctl.

man liquidctl > manliquidctl.txt 2>&1

Plutôt qu’un long discours, passons à la pratique en images :

Premier cas : un AIO

L’ordre des opérations serait :

  1. initialisation du périphérique
  2. lecture des données du périphérique
  3. contrôle de la vitesse de la pompe et des ventilateurs associés à celle-ci
  4. contrôle des lumières
Statuts du device
Vitesse de la pompe à valeur fixe

RGB Ventilateur Pompe

 

Deuxième cas : Alimentation intelligente
  1. initialisation du périphérique
  2. lecture des données du périphérique
  3. Contrôle de la vitesse du ventilateur
Statut du périphérique
Vitesse du ventilateur à 90 %
Troisième cas : un kit d’ambiance
  1. initialisation du périphérique
  2. lecture des données du périphérique
  3. contrôle de la vitesse des ventilateurs
  4. contrôle des lumières
Initialisation du Smart Device v2
Monitoring – Gestion
Gestion RGB
Contrôle du ventilateur

 

Si on veut passer du mode multi-rail par défaut au mode mono-rail on rajoute l’option –single-12v–ocp à la suite de la commande initialize.

 

Liquidclt dispose d’une très bonne documentation. D’abord dans le Readme qui explique les bases du maniement du logiciel puis, comme vous pouvez le voir sur les deux captures d’écran plus hautes pour chaque périphérique. Ce sont celles qu’ils vous faut pour optimiser celui-ci et partir ainsi du bon pied. Liquidctl est un logiciel excellent et il serait dommage de partir du mauvais pied. De plus, Jonas est un développeur assez actif et surtout très réactif. Il y a vraiment peu de chance pour que votre requête reste sans réponse, contrairement à d’autres projets…

La CLI peut rebuter certains d’entre-nous et c’est compréhensible, surtout à notre époque. Des utilisateurs de ce merveilleux logiciel ont développé de belles interfaces graphiques. Toutefois, ils ne sont que 2 avec des styles et des langages complètement différents. C’est au choix.

GKraken est un logiciel que vous connaissez déjà si vous suivez l’actualité de ce blog.  Il est inutile d’en dire plus et je vous laisse regarder l’article en question. Sachez qu’il est maintenant packagé pour Manjaro et voici la ligne de commande adéquate:

$ yay -S python-gkraken

NZXQT a été sommairement présenté dans l’article précédant. Son interface se rapproche plus du logiciel officiel NZXT CAM. Il a pour avantage d’être complet pour les pompes et ventilateurs des AIO (refroidissement, Éclairage, Overclocking) et pour désavantage de ne pas être (encore !) packagé pour AUR. Il faudra donc passer par la récupération de la dernière version puis de lancer son setup. Peut-être faudra-t-il créer un lien pour le lanceur.

Malgré leurs qualités respectives, ces deux logiciels ont un défaut communs. Ils ne supportent pas toutes les fonctionnalités de liquidclt. Effectivement, seule la partie Refroidissement, Éclairage et Overclocking des pompes et ventilateurs des AIO sont pris en charge, ce qui se résume au premier tableau. Et pour le deuxième Rien. Et c’est dommage. Ne serait-ce que pour les alimentations et je ne parle pas des kits d’Ambiance. C’est le seul logiciel sous Linux a prendre en charge totalement les fonctionnalités des alimentations intelligentes Corsair des séries RMi et HIx et de prendre en charge une partie seulement des alimentations Seasonic des séries E. D’ailleurs, à ce titre, si vous disposez de ce genre de matos et d’un peu de temps, aidez Jonas à finaliser les fonctionnalités manquantes. Jonas est très réactifs et si vous l’êtes aussi, en 15 jours maxi ce sera fait. Un petit pas pour vous et un grand de plus pour liquidctl et le libre. Quand on a implanté le code pour les Corsair je ne pensais pas que cela aurai si vite. L’avantage est que toutes les fonctionnalités de ce genre de matos présent dans iCue l’est aussi et uniquement pour le moment dans liquidclt. Il ne manque plus qu’une belle GUI.

 

Les protocoles PMBus et SMBus sont des mots qui vont venir de plus en plus souvent au fil de ces lignes. Si le premier a été vu juste avant, maintenant , nous allons voir le second avec ce premier logiciel. Une Bombe tant il est ambitieux.

 

OpenAuraSDK: Pilotez vos RAM G.Skills Trident Z RGB, Corsair Vengence RGB, Corsair Vengence Pro RGB

Voici certainement le plus grand et ambitieux projet de toute cette série d’articles sur les périphériques Gaming. OpenAuraSDK est un projet grandiose dont l’objectif est de fournir les fonctionnalités d’ Asus Aura pour Linux en passant par le fameux protocole SMBus, une évolution du protocole i2C. Ce nom ne vous dis peut-être rien du tout et pourtant. De plus en plus de périphériques utilisent ce protocole.  Et pose de plus en plus de problèmes aux Développeurs Libre. Et comme le terrain est encore vierge sous Linux, vous commencez à en mesurer l’enjeu. Si ce n’est pas encore le cas, lisez la suite.

Parmi tous les projets que je vous ai présenté au fil de cette série d’articles, n’y a-t-il pas quelque chose qui vous interloquer ? Non ? En êtes-vous sur ? Ai-je déjà parler d’un logiciel contrôlant les RGB des barrettes mémoires  (RAM) ? Non et pour cause. Tout passe par les fameux contrôleurs SMBus. Et pas qu’elles. De plus en plus de périphériques utilisent ce standard et son évolution PMBus. Et en plus, pour corser le tout, il y a aussi des périphériques USB Aura.

 

Mais venons en au fait. Actuellement, OpenAuraSDK supporte un nombre limité de Cartes Mères et de modules RAM qui sont les suivants:

Cartes Mères support confirmé:

  • ASUS PRIME X370 Pro
  • ASUS PRIME X470 Pro
  • ASUS PRIME X370 Pro
  • ASUS PRIME Z370-A
  • ASUS PRIME Z270-A
  • ASUS ROG Strix Z370-E

Cartes Mères (support expérimental/en cours/demande/besoin Renseignements complémentaires,…):

  • ASUS ROG Strix B450-F Gaming (en cours)
  • ASUS TUF B450 – PRO Gaming (fonctionne)
  • ASUS X399-A (demande de renseignements complémentaires)
  • ASROCK X470 TAICHI Ultimate (demande & en cours)
  • GIGABYTE X399 DESIGNARE EX (Theadripper)
  • GIGABYTE AORUS X570 ELITE/PRO (demande & en cours)

Mémoires Support confirmé (sauf X299):

  • G.Skill Trident Z RGB

  • Geil Super Luce

  • TeamGroup Delta RGB

Support Expérimental dans la branche generic_rgb_interface_test:

Pour l’instant, le but du projet est :

  1. faire fonctionner le plus de carte mère possible
  2. de détecter le plus de périphériques compatibles avec le contrôleur Asus Aura
  3. de ne pas s’occuper des périphériques compatibles avec  les contrôleurs USB Aura.

 

Pour en revenir à la mémoire Corsair Vengence Pro RGB, le tableau ci-dessous vous montrera ce qui a été fait et ce qui reste à faire, à savoir l’identification/la découverte des possibilités de chaque périphérique. Et c’ est un énorme travail car, vous vous en doutez bien, chaque produit ayant ces propres spécifications. Quand je vous disais que le travail est immense.

Pour l’instant, à partir de l’interface graphique, l’utilisateur peut modifier pas mal de paramètres tel que les couleurs, les modes et les effets de la RAM. Toutefois, il y a un gros hic. En effet, la sauvegarde de ces paramètres n’est pas persistance cad qu’au prochain redémarrage, il faudra tout recommencer. L’auteur Calcprogrammer1 ou plutôt devrais-je dire Adam Honse n’a pas encore investi profondément dans ce domaine. Et comme je le soulignais plus haut, le travail consiste pour l’instant à la découverte du maximum de périphériques Aura. De plus, Adam Honse pense qu’il y a un second endroit dans la mémoire du périphérique qui stocke les paramètres énoncés plus haut. Et que ceux-ci doivent être écris séparément. Ces explications sont pour les plus curieux qui se demandent pourquoi cela n’a pas été encore fait.

Et voici ce que propose le logiciel ASUS AURA.

Ne vous emballez pas trop (comme moi) car il s’agit d’Asus Aura et non de l’interface OpenAuraSDK. A noter que pour l’instant tout le travail se concentre sur le support des cartes mères plutôt que sur l’interface. D’ailleurs,  Adam Honse travaille avec plusieurs autres projets qui sont en autre Openaura-CLILights, et openPyaura.

Voici à quoi ressemble actuellement l’interface principale et les écrans qui lui sont associés. Et vous verrez que ce n’est pas la même chose que précédemment :

Le travail est loin d’être fini puisqu’il en est qu’ à son commencement. Toutefois, on peut dire deux choses:

  • l’ambition du projet
  • l’intérêt suscité par son travail qui a débouché sur une multitude de projets. Et on en est qu’au début.

Les modules pour les CPU AMD sont packagés au moins sur AUR pour Archlinux et donc Manjaro grâce à Térence Clastres. Voici la commande qui va bien:

    • Pour la version Intel: un patch est disponible ici
    • Pour la version AMD: sudo yay -S i2c-piix4-aura-dkms

Assez étrangement, OpenAuraSDK n’est pas distribué sur AUR. Allez, faites un effort, une version stable et une version Git. On pourrait aider plus facilement Adam.

Si la version stable n’a pas beaucoup évoluée récemment, et qu’il y a 8 branches, l’endroit où il faut être en ce moment se situe dans la branche generic_rgb_interface_test.

Si je devais décerner un prix parmi tous ces projets et d’autres…, c’est Le projet de l’année. A surveiller de très près son évolution.

Et voici maintenant le premier projet de cette liste directement dérivé du travail en cours sur OpenAuraSDK.

Openaura-cli

openaura-cli est la version en C++ et en CLI de OpenAuraSDK débarrassé de son interface graphique et du code de Windows (les dll). Pour l’instant, c’est le but du projet. D’ailleurs, c’est assez basique rien que pour l’installer. Vous vous en doutez bien, il n’y a aucun paquet pour aucune distribution. Il n’y a même pas de makefile. Rassurez-vous, son auteur a quand même mis deux scripts bash pour le construire et le lancer. C’est d’ailleurs sur sa Todo liste. A voir.

openpyaura

openpyaura est un autre projet en Python pour les cartes mères

ASUS. Petite précision. Le projet initié par Vinay Dargar n’est pas un dérivé de OpenAuraSDK (contrairement aux autres) mais un projet à part entière. D’ailleurs, son auteur aide Adam Honse. Bien entendu, il n’y a aucun paquet pour aucune distribution.

 

Aura-Kernel-Mod

Crée par Thomas Berger, et basé sur OpenAuraSDK, aura-led-mod est un module kernel pour les chipsets Asus Aura.

Bien entendu, il n’y a aucun paquet pour aucune distribution.

 

Borealis

Crée par Phipax en Rust, Borealis est un pilote Linux dont le but est le contrôle de vos périphériques RGB Aura sans avoir à utiliser l’application Asus Aura. Borealis couvre de multiples protocoles selon son auteur mais toutefois seul les cartes mères utilisant le protocole I2C/SMBus sont actuellement supportés. Et donc seules les Leds des Cartes Mères et des barrettes mémoires sont supportées. Toujours d’après son auteur, ce logiciel n’aurait pas vu le jour sans le travail de OpenAuraSDK. Dans le futur, Borealis supportera d’autres périphériques tel que les GPU.

Actuellement, Borealis permet de changer les Leds dans une seule couleur. C’est un outil en ligne de commande (CLI) dont les arguments sont une triplette ex: cargo run127 0 127 affiche toutes les lumières de la Carte Mère en Violet.

Bien entendu, il n’y a aucun paquet pour aucune distribution.

Vous l’aurez compris, Borealis est un Gros travail en cours.

 

Lights

Lights est un projet en plein développement et est déconseillé d’utiliser en l’état, pas tant du moins qu’il n’y aura pas de version stable. Cependant, pour les téméraires et les testeurs, toute aide apporté à son auteur est le bienvenue mais mesurer bien avant les risques que vous pourrez peut-être rencontrer. Cela étant dis, poursuivons. Le but est de fournir un ensemble de pilotes et modules  Linux et aussi d’explorer des domaines pas encore étudié par OpenAuraSDK. Ces drivers permettront d’interagir simplement avec tous les périphériques Asus Aura.

Actuellement, Light se compose deux modules principaux. Chaque module crée dans le noyau un ou plusieurs répertoires qui couvre une zone RGB disponible au niveau hardware. Chaque zone peut contenir les fichiers suivants:

  • color : correspond au code couleur en hexadécimal
  • mode : correspond à la zone d’effet RGB
  • leds : active les paramètres individuels aux périphériques ARGB
  • speed :correspond à une valeur numérique comprise en 1 et 5

La création d’une classe interface dans le noyau lui-même rendra plus facile la programmation des modes/zones/leds. A partir de là, n’importe quel périphérique de n’importe quel fournisseur pourra être ajouté facilement avec un minimum de tracas pour le développeur.

Et plus tard, un module système et une interface graphique compléterons l’ensemble. D’après son auteur le plus gros du travail est fait. Seul, les GPU Navi posent problème à son créateur car le protocole I2C est différent. La bonne nouvelle est que les cartes NVIDIA et les GPU VEGA et précédents fonctionnent bien. Bien entendu, bien qu’il soit encore trop top pour le voir, cela semble très prometteur. La bonne nouvelle est que tout ce travail réalisé en amont sera ensuite retro-porté dans OpenAuraSDK.

Bien entendu, il n’y a aucun paquet pour aucune distribution. Du moins, pas encore pour celui-ci, le plus intéressant de tous les projets tournant autour d’OpenAuraSDK.

 

OpenAuraGtk

OpenAuraGtk est le dernier projet , à la fois de ce comparatif et dérivé d’OpenAuraSDK.  Bien qu’il soit encore trop tôt pour en dire davantage vu qu’il en est à ses balbutiements, OpenAuraGtk est une GUI en GTK (qui respecte les Gnome Human Interface Guidelines) qui privilégie deux idées:

  • la meilleur intégration dans les environnements respectant les règles précédentes
  • avoir une interface la plus intuitive pour contrôler les périphériques gérés initialement par Asus Aura.

A voir puisqu’il s’agit d’un projet en devenir.

Et maintenant ?

Ce sera tout dans l’immédiat. Dans la 9 ème partie, j’envisage de faire un récapitulatif des projets qui me semblent le plus intéressants sur différents critères.  Je n’ai pas encore défini ceux-ci ni comment je procéderai car il y a plein de critères à prendre en compte et qu’ils ne sont pas encore arrêté. De plus c’est un travail difficile. Toutefois, cela peut changer entre-temps. Rien n’est encore fixé. On verra. En attendant, bonne lecture, bonne découvertes et bon tests.

Vus : 69
Publié par Cenwen : 110