Archive

Archives pour 01/2016

Jouer de la musique avec un Steam Controller

31/01/2016 2 commentaires

Étant l'heureux propriétaire d'une manette Steam Controller, produite par VALVE, j'ai entrepris de décoder le protocole de communication utilisé par celui-ci, en particulier la partie concernant le contrôle des actuateurs linéaires assurant le retour haptique. Celui-ci s'est avéré assez simple à mettre en œuvre, ce qui m'a poussé à développer à outil permettant de contrôler les vibrations des touchpads, directement à partir d'un fichier MIDI, et de faire jouer la mélodie par le Steam Controller :

Basé sur la librairie LibUSB, mon logiciel se contente de lire le fichier MIDI, et de jouer les notes du canal 0 sur le touchpad droit, et celles du canal 1 sur le touchpad gauche.

Pour cela, il envoie les séquences d'octets commandant le retour haptic des touchpads. Ces séquences sont décrites dans le code source.

Il supporte une connexion directe au Steam Controller, ou en sans-fil à travers le dongle.

Plus d'infos sur le thread du projet sur le forum Steam.

Une archive contenant l'exécutable pour Windows est hébergée chez SourceForge

Le code complet, abondamment commenté, est disponible sur la page Gitlab du projet

Enjoy !