RecalBox et manette Ipega-9025
-
Partons du début : tu as fait l'appariement sous esmulationstation ? (le truc qui permet de choisir l'émulateur, le jeu, etc ...) Si l'appariement est fait, tu as essayé de configurer tes manettes ?
-
Bonsoir, j'ai la même manette et j'ai eu du mal pour qu'elle fonctionne. Par défaut, elle était détectée sous emulationstation, elle se connectait, mais impossible de la configurer. <del>Pour la faire fonctionner (de mémoire) :</del> <del>- mettre la manette en mode appairage, et suivre le tuto pour connecter la manette manuellement, et pour faire les scripts de connexion automatique : http://blog.recalbox.com/forums/topic/tuto-connecter-vos-manettes-bluetooth-au-demarrage-du-rpi/</del> <del>- une fois la manette connectée en Bluetooth, lancer la configuration de la manette sous emulationstation</del> <del>J'ai dû aussi modifier le fichier recalbox.conf :</del> <del>controllers.bluetooth.enabled=0</del> <del>global.inputdriver=sdl2</del> <del>A chaque redémarrage de recalbox, mettre la manette en mode appairage, et le script lancé au démarrage va automatiquement s'y connecter au bout d'une vingtaine de secondes. Ce n'est peut être pas la meilleure méthode, mais ça fonctionne.</del> Je viens de refaire des tests à partir d'une nouvelle installation de recalbox 3.3.0 beta 16, et j'ai une méthode plus simple et plus propre (utilisant le script "bluetoothcontrollers.sh" plutôt que le script du lien ci-dessus) : 1 - Editer /recalbox/scripts/bluetoothcontrollers.sh Commenter les deux lignes du début concernant "bluetoothd"
#killall bluetoothd #bluetoothd -u
(si bluetoothd est lancé, la manette ne fonctionne pas, même en faisant un jstest /dev/input/js0) 2 - Dans /recalbox/share/system/recalbox.conf, modifier "global.inputdriver=auto" en :
global.inputdriver=sdl2
(sinon la manette marchera dans emulationstation, mais pas dans les jeux) 3 - Créer un fichier /etc/udev/rules.d/99-ipega9025.rules dont le contenu est :
SUBSYSTEM=="input", ATTRS{name}=="ipega Bluetooth Gamepad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
(permet que la manette soit reconnue comme joystick) Dans un terminal, taper :
chmod 755 /etc/udev/rules.d/99-ipega9025.rules
4 - Rebooter Mettre la manette en mode appairage (manette éteinte, appuyer sur X + Home). Menu principal\Options manettes\Appairer une manette bluetooth -> La manette doit se connecter Menu principal\Options manettes\Configurer une manette -> La manette est configurée ! 5 - Par la suite, toujours allumer la manette en mode appairage (manette éteinte, appuyer sur X + Home). Recalbox va alors s'y connecter en quelques secondes.
-
Encore une petite optimisation : les étapes 1 à 3 en ligne de commande :
sed -i s/^bluetoothd/#bluetoothd/ /recalbox/scripts/bluetoothcontrollers.sh sed -i s/^global.inputdriver=auto/global.inputdriver=sdl2/ /recalbox/share/system/recalbox.conf echo 'SUBSYSTEM=="input", ATTRS{name}=="ipega Bluetooth Gamepad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"' > /etc/udev/rules.d/99-ipega9025.rules
Et plus qu'à rebooter, appairer et configurer la manette.
-
@rammstein pourquoi pas la beta17 ? Pourrais tu fournir la configuration de ton /root/.emulationstation/es_input.cfg ?
-
Parce que j'avais une beta 16 sous la main :=) (mais j'utilise cette manette avec le script du lien de mon premier post depuis la beta 6 ou 9). Je viens de réinstaller une beta 17 et d'appliquer les 3 lignes de commandes : la manette fonctionne bien. /root/.emulationstation/es_input.cfg :
<inputConfig type="joystick" deviceName="ipega Bluetooth Gamepad " deviceGUID="0500000049190000020400001b010000"> <input name="a" type="button" id="174" value="1" code="305" /> <input name="b" type="button" id="173" value="1" code="304" /> <input name="down" type="hat" id="0" value="4" code="16" /> <input name="hotkey" type="button" id="183" value="1" code="314" /> <input name="joystick1left" type="axis" id="0" value="-1" code="0" /> <input name="joystick1up" type="axis" id="1" value="-1" code="1" /> <input name="joystick2left" type="axis" id="2" value="-1" code="2" /> <input name="joystick2up" type="axis" id="3" value="-1" code="5" /> <input name="l2" type="button" id="181" value="1" code="312" /> <input name="left" type="hat" id="0" value="8" code="16" /> <input name="pagedown" type="button" id="180" value="1" code="311" /> <input name="pageup" type="button" id="179" value="1" code="310" /> <input name="r2" type="button" id="182" value="1" code="313" /> <input name="right" type="hat" id="0" value="2" code="16" /> <input name="select" type="button" id="183" value="1" code="314" /> <input name="start" type="button" id="184" value="1" code="315" /> <input name="up" type="hat" id="0" value="1" code="16" /> <input name="x" type="button" id="177" value="1" code="308" /> <input name="y" type="button" id="176" value="1" code="307" /> </inputConfig>
J'ai essayé d'ajouter un ' RUN+="/usr/bin/killall bluetoothd" ' dans 99-ipega9025.rules pour éviter de modifier le script bluetoothcontrollers.sh, mais en tuant bluetoothd, la manette se déconnecte. Il faut donc l'éteindre et la rallumer en mode appairage (pas très pratique). Donc je n'ai pas trouvé de solution plus "propre" que ces 3 modifications de fichiers.
-
J ai des manette idroid snakebyte pour android et je dois tjs les démarrer en mode appareillage power+X dans mon cas, elles clignotent un moment et se connectent ensuite. Donc pour moi ça me parait normalement pour le mode appareillage. comment se comporte elle si tu la connecte à une tablet ou smartphone android ?
-
Avec un terminal Android, après l'appairage initial, il suffit d'allumer la manette avec son bouton Home pour que la connexion se fasse en une seconde.
-
Ok on va l ajouter dans es pour la prochaine version : https://github.com/recalbox/recalbox-os/issues/501
-
Super ! Merci.
-
Pour info si quelqu'un utilise cette manette sur la 4.0.0 beta 1, il faut que bluetoothd soit lancé une fois (peut être pour initialiser quelque chose), puis refermé pour que la manette fonctionne. Après l'installation de la 4.0.0 beta1, j'ai modifié le début de bluetoothcontrollers.sh avec :
bluetoothd -u sleep 2 killall bluetoothd
Rien d'autre à modifier : la règle udev est maintenant intégrée et cela fonctionne avec le recalbox.conf par défaut (avec global.inputdriver=auto). Mais si une seconde manette bluetooth est configurée mais non connectée, le script tente de s'y connecter toutes les 10 secondes et cela créé un lag lors de l’utilisation de la manette ipega. Donc vu que cela fonctionne beaucoup mieux avec une 8bitdo zero, je vais finir par ranger l'ipega.