Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
|
projets:retropie_gpio_additions [2014/11/15 14:56] bumblebee |
projets:retropie_gpio_additions [2015/04/11 12:45] (Version actuelle) bully |
||
|---|---|---|---|
| Ligne 7: | Ligne 7: | ||
| logiciels: | logiciels: | ||
| sources: | sources: | ||
| - | liens:[[https://stackoverflow.com/questions/2575528/simulating-key-press-event-using-python-for-linux#adzerk9805928|Simulating key press event using python for linux (en)]], [[http://makezine.com/projects/tutorial-raspberry-pi-gpio-pins-and-python/|Tutorial: Raspberry Pi GPIO Pins and Python (en)]], [[http://blog.petrockblock.com/retropie/| Retropie (en)]], [[projets:boitierraspberrybplus|]] | + | liens:[[http://makezine.com/projects/tutorial-raspberry-pi-gpio-pins-and-python/|Tutorial: Raspberry Pi GPIO Pins and Python (en)]], [[http://blog.petrockblock.com/retropie/| Retropie (en)]], [[projets:boitierraspberrybplus|]] |
| - | langages:javascript svg | + | langages:python |
| tags: raspberry_pi gpio python retropie | tags: raspberry_pi gpio python retropie | ||
| usager:bumblebee | usager:bumblebee | ||
| Ligne 18: | Ligne 18: | ||
| ===== Schéma de branchement ===== | ===== Schéma de branchement ===== | ||
| {{ :projets:retropie_gpio_additions:esc_tab_poweroff.svg |}} | {{ :projets:retropie_gpio_additions:esc_tab_poweroff.svg |}} | ||
| - | ===== Script python ===== | + | ===== Script ===== |
| + | ==== Dépendances ==== | ||
| Ce script utilise 3 libraires : | Ce script utilise 3 libraires : | ||
| - | * La libraire ''[[https://pypi.python.org/pypi/RPi.GPIO|RPi.GPIO]]'' qui est normalement intégrée nativement dans les version récente de raspbian et donc je l'espère sur les images de retropie => à tester. | + | * La libraire ''[[https://pypi.python.org/pypi/RPi.GPIO|RPi.GPIO]]'' qui est normalement intégrée nativement dans les version récente de raspbian |
| * <del>La libraire ''[[http://python-evdev.readthedocs.org/en/latest/|evdev]]'' qui permet de gérer ou simuler des input type clavier et souris sous linux</del> | * <del>La libraire ''[[http://python-evdev.readthedocs.org/en/latest/|evdev]]'' qui permet de gérer ou simuler des input type clavier et souris sous linux</del> | ||
| * La libraire [[http://tjjr.fi/sw/python-uinput/|python-uinput]] permettant de simuler un device (ici clavier) virtuel | * La libraire [[http://tjjr.fi/sw/python-uinput/|python-uinput]] permettant de simuler un device (ici clavier) virtuel | ||
| Ligne 27: | Ligne 28: | ||
| Pour installer les lib : | Pour installer les lib : | ||
| <code bash> | <code bash> | ||
| - | sudo apt-get install python-pip python-dev | + | sudo apt-get install python-pip python-dev libudev-dev |
| sudo pip install python-uinput | sudo pip install python-uinput | ||
| sudo pip install sh | sudo pip install sh | ||
| Ligne 33: | Ligne 34: | ||
| + | ==== La script python ==== | ||
| <code bash> | <code bash> | ||
| #!/usr/bin/env python | #!/usr/bin/env python | ||
| Ligne 105: | Ligne 106: | ||
| * Simulation de clavier en python : http://www.raspberrypi.org/forums/viewtopic.php?f=32&t=23548&p=219560&hilit=uinput#p219560 | * Simulation de clavier en python : http://www.raspberrypi.org/forums/viewtopic.php?f=32&t=23548&p=219560&hilit=uinput#p219560 | ||
| * Utilisation des GPIO du raspberry en python : http://makezine.com/projects/tutorial-raspberry-pi-gpio-pins-and-python/ | * Utilisation des GPIO du raspberry en python : http://makezine.com/projects/tutorial-raspberry-pi-gpio-pins-and-python/ | ||
| + | |||
| + | ==== Lancement automatique ==== | ||
| + | En supposant que le script est enregistré dans ''/home/pi/'', il suffit de rajouter la ligne suivante dans le fichier ''/etc/rc.local'' //(''sudo nano /etc/rc.local'')// avant la ligne ''exit 0'' : | ||
| + | <code bash> | ||
| + | /usr/bin/python /home/pi/retropie_additions.py & | ||
| + | </code> | ||
| + | |||
| + | ==== Aide pour la réalisation ==== | ||
| + | |||
| + | |||
| + | Pour les personnes qui ne savent pas trop comment bidouiller dans ce domaine, voila la marche à suivre pas à pas: | ||
| + | |||
| + | |||
| + | * Lancez votre retropie, une fois prête, appuyez sur F4 et installez les librairies en faisant comme indiqué plus haut (sudo apt-get install .......) | ||
| + | * Créez un fichier texte nommé " retropie_additions " sur un ordinateur autre | ||
| + | * Copiez le script plus haut dans ce fichier. Remplacez le *.txt/odt/... par le .py | ||
| + | * Éteignez votre retropie | ||
| + | * Placez le fichier fraichement créé dans le répertoire /home/pi de votre retropie (à partir d'un linux faites un drag'n drop... pour les autres OS, aucune idée) | ||
| + | * Pour l'automatisation, lancez votre retropie (pas trop loin) | ||
| + | * Une fois en marche, appuyez encore une fois sur F4 | ||
| + | * Tapez la commande plus haut dans la rubrique automatisation (sudo nano ...) pour lire le contenu du fichier | ||
| + | * Faite la commande pour éditer le texte (Ctrl + X de mémoire) | ||
| + | * Tapez la ligne indiquée à la fin du texte | ||
| + | * enregistrez vos modification | ||
| + | * Redémarrez et ça marche | ||
| + | |||
| ===== Tests ==== | ===== Tests ==== | ||
| Ligne 111: | Ligne 138: | ||
| * Shutdown: :OK: | * Shutdown: :OK: | ||
| * Simulation du clavier : :OK: //(pas réussi avec la lib evdev mais cela fonctionne avec la lib uinput)// | * Simulation du clavier : :OK: //(pas réussi avec la lib evdev mais cela fonctionne avec la lib uinput)// | ||
| + | * Lancement automatique : :OK: | ||
| ===== Ce qu'il reste à faire ===== | ===== Ce qu'il reste à faire ===== | ||
| - | * Trouver pourquoi la simulation du clavier ne marche pas, ou trouver une autre solution | + | * <del>Trouver pourquoi la simulation du clavier ne marche pas, ou trouver une autre solution</del> |
| * Ajouter d'autres boutons/touches/fonctionnalités ? | * Ajouter d'autres boutons/touches/fonctionnalités ? | ||
| - | * Automatiser le démarrage du script (service ?) | + | * <del>Automatiser le démarrage du script (service ?)</del> |
| - | * Faire un boitier qui intégré les boutons | + | * Faire un boitier qui intégre les boutons et le raspberry ? |
| * ... | * ... | ||