Gamoover

[move]Vous aimez la série Ricky la belle vie, Julio Iglésias ou l'émission Kohlanta ? Alors soyez les bienvenus sur Gamoover ! [/move]

[Recalbox] vos questions sur la distro RecalBox

Démarré par ian57, Mercredi 09 Mars 2016, 21:27:55 PM

ian57

Hello à tous.

Comme vous le savez surement maintenant, j'arrête le développement de RAsPiCade. La distro n'est plus à jour et le travail pour la remettre à niveau est énorme pour un seul développeur.

Plutôt que de s'entêter à développer un truc moyen dans son coin, je préfère contribuer à une distribution très bien faite et bien pensée dès le début : RecalBox.

Cette dernière n'utilise pas Debian ou autre dérivé comme base, mais un "linux from scratch" qui utilise buildroot https://buildroot.org/.

Le frontal graphique est EmulationStation, dans une version largement améliorée par rapport à la version originale, elle est traduite dans plusieurs langues, permet une configuration aisée des contrôles, et de nombreuses autres fonctionnalités de configuration

Pour avoir cette configuration unifiée, RecalBox utilise majoritairement retroarch et libretro pour les émulateurs. https://github.com/libretro

on y trouve aussi Kodi, pour la lecture multimédia.

Elle supporte de nombreux matériels : manettes, joystick, module arcade etc...

Que les férus d'intégration en bartop se rassure, il est possible de masquer les menus inutiles pour une borne arcade...

La communeauté est grandissante et l'équipe de développeur fort sympathique...

une grosse documentation : https://github.com/recalbox/recalbox-os/wiki, présent sur les réseaux sociaux et sur irc https://kiwiirc.com/client/irc.freenode.net/#recalbox

Le support du Pi3  est en cours...  

Voila pour un début. Je posterai des infos au fur et à mesure de mes travaux, tests, contributions....

C'est pour moi la meilleure distribution actuellement et en plus en français... on ne va pas bouder son plaisir.

J'espère que vous serez conquis comme moi ;)
"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









gau

Pas de questions pour le moment mais je vais aller installer ça sur mon pi, ça viendra peut-être après  ;)

CdtPixel

Alors petite question : comment on accède à une valeur du GPIO sur recalBox ?
Pas de RPi.GPIO pour python, ni de wiringPi pour bash  :-[

Apparemment y'a un ticket ouvert pour RPi.GPIO mais je comprends pas trop si c'est dans les projets ou pas, ce serait vraiment un plus car y'a pas de truc qu'on peux faire avec un GPIO sur une borne  =:))

il est géré comment le GPIO dans retrogame ?

Sinon recalbox est vraiment très bien et intégrera ma future borne cocktail en projet (si j'arrive à "pythoner" le GPIO bien sûr  (:x )
Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

Benoit33

#3
https://github.com/recalbox/recalbox-os/wiki/GPIO-controllers-%28FR%29

rien à voir avec ça ?

pour ma part rien a redire, sauf pour mettre à jour les info il faut effecer la gamelist en reseau avant de lancer la fonction

CdtPixel

Citation de: Benoit33 le Mercredi 09 Mars 2016, 21:45:03 PM
https://github.com/recalbox/recalbox-os/wiki/GPIO-controllers-%28FR%29

rien à voir avec ça ?

pour ma part rien a redire, sauf pour mettre à jour les info il faut effecer la gamelist en reseau avant de lancer la fonction

donc apparemment ça utilise un driver spécifique développer pour la gestion des joysticks+boutons donc pas moyen d'accéder via une librairie spécifique au contrôle GPIO... pour l'instant j'espère  ^-
Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

ian57

Normalement, le paquet python GPIO devrait être intégrer dans la version 4.1 normalement. je demanderai confirmation.

sinon, il faut utiliser le pg retrogame qui est déjà present dans la distro (c'est le mien :)) je le modifierai pour la prise en charge du dernier GPIO dispo en tant que UserAction1. ensuite chacun fera ce qu'il veut avec cette entrée. je vais faire les modifs et proposer un pull request.

"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









ian57

Citation de: Benoit33 le Mercredi 09 Mars 2016, 21:45:03 PM
https://github.com/recalbox/recalbox-os/wiki/GPIO-controllers-%28FR%29

rien à voir avec ça ?

pour ma part rien a redire, sauf pour mettre à jour les info il faut effacer la gamelist en reseau avant de lancer la fonction

Oui et non, il s'agit du module noyau qui gère les GPIO, le mapping est fixer par les devel de recal. L'alternative, le programme retrogame c'est un peu plus simple à modifier et recompiler que le module noyau.
"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









ian57

Citation de: CdtPixel le Mercredi 09 Mars 2016, 21:50:22 PM
donc apparemment ça utilise un driver spécifique développer pour la gestion des joysticks+boutons donc pas moyen d'accéder via une librairie spécifique au contrôle GPIO... pour l'instant j'espère  ^-

oui pour l'instant.. je vois ce que je peux faire demain ;)

mais il me reste pas mal de doc à lire ;)
"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









CdtPixel

Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

ian57

"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









CdtPixel

Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

ian57

#11
la lib wiringPi est intégrée dans la version 4.1 https://github.com/recalbox/recalbox-buildroot/pull/226 et rpi.gpio aussi https://github.com/recalbox/recalbox-buildroot/pull/222 il faut attendre la sortie ;)

je verifie sur le distro que j'ai recompilée hier...

t'aurais un bout de code pour que je fasse les tests... du style lecture des états des GPIO ;)
"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57









CdtPixel

#12
Je t'envoie mon code final ce soir dès mon retour @home :)


Mais tu peux déjà essayer ça avec 1 switch ON/OFF (pas un bouton qui revient tout seul) entre GPIO17 et Ground :


#!/usr/local/bin/python
# Import
import RPi.GPIO as GPIO

# GPIO init with BCM pin values
GPIO.setmode(GPIO.BCM)
rotatePin=17

# GPIO init alternative mode with board pin values
#GPIO.setmode(GPIO.BOARD)
#rotatePin=11


# GPIO setup : wire switch between GPIO and Ground
GPIO.setup(rotatePin, GPIO.IN, pull_up_down=GPIO.PUD_UP)

# Get the GPIO state
# Get inverse value of switchs (because of PULL UP internal resistor) : ON=0 / OFF=1
print "Switch=", (GPIO.input(rotatePin)+1)%2

# Cleaning GPIO changes
GPIO.cleanup()


Je viens de le bidouiller depuis mon premier code source mais cela devrait fonctionner (j'ai rien pour tester ici  :( )
- tu verras que j'ai fais l'effort de mettre les comments in english  =:))
Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

CdtPixel

Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

CdtPixel

Quand on renonce à ses rêves, on meurt !
Mon tuto plieuse métal DIY

ian57

"Après faut pas te flageller pour notre debilisme :D" Sushy18 à ian57