Oui c'est pas mal comme ça !
Par contre, je tente de faire une MR depuis hier soir, j'avoue je suis un peu paumé, j'ai fork, remplacé le fichier sur mon dépot.
J'ai un commit qui reste bloqué sur build , je comprends pas tout
Posts made by FF-Sounds
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@neeeeb
Le PIN356PUSRESET n'a pas changé
Tu peux le faire dès maintenant, moi il ne fonctionnait pas à cause du retroarchcustom.cfg :@supernature2k said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
Check le retroarchcustom.cfg et vérifie que tu as bien une ligne :
network_cmd_enable = "true"
D'ailleurs,
network_cmd_enable = "true"
manque à l'appel lors d'une fresh install. -
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
J'ai suivi les recommandations de @supernature2k, modifier uniquement le mod ONOFF.
Testé et opérationnel chez moiVoilà ce que ça donne :
durée/bouton PIN356PUSHRESET PIN356ONOFFRESET RESET court - ES rien reset propre du système RESET court - en jeu reset du jeu (RetroArch only) reset du jeu (RetroArch only) RESET long - ES reset propre du système rien RESET long - en jeu reset propre du système quit du system et retour à ES POWER court - ES rien shutdown propre du système POWER court - en jeu quit du system et retour à ES shutdown propre du système POWER long - ES shutdown propre du système shutdown propre du système POWER long - en jeu shutdown propre du système shutdown propre du système Je ferai la MR très bientôt !
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
dans mon poste précédent, il faut lire :
- le mod push avec les appuis que j'ai fait + reset propre en jeu sur appui
longcourt du push POWER
- le mod push avec les appuis que j'ai fait + reset propre en jeu sur appui
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@supernature2k @Substring @NeeeeB
Qu'on se mette bien d'accord avant que je revois la copie
2 solutions :
- le mod onoff avec les appuis que j'ai fait, pas de reset propre en jeu, car gestion appui impossible sur un switch (on reboot en faisant OFF puis ON)
- le mod push avec les appuis actuels
OU
- le mod onoff avec les appuis que j'ai fait, pas de reset propre en jeu, car gestion appui impossible sur un switch (on reboot en faisant OFF puis ON)
- le mod push avec les appuis que j'ai fait + reset propre en jeu sur appui long du push POWER
Dites-moi !
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@substring said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
@ff-sounds faut quitter un jeu pour un reset propre ? Mouais ...
Ça sert à quoi de faire un reset propre en jeu ? pour changer de jeu ou d'émulateur ??
Faut m'expliquer car je ne vois pas l’intérêt... -
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@substring said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
@ff-sounds non il n'y a pas de reset de l'os, juste le shutdown
Tu parles du POWER uniquement ou du RESET aussi, car il est bien présent sur le RESET....
durée/bouton sous ES En jeu RESET court ==> reset propre du système reset du jeu (RetroArch only) RESET long rien quit du system et retour à ES POWER court/Switch POWER shutdown propre du système shutdown propre du système POWER long/Switch POWER shutdown propre du système shutdown propre du système @neeeeb said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
@ff-sounds said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
grep
vérifie aussi ce qu'il a envoyé comme argument, c'est un peu con mais c'est comme ça ^^Regarde :
login as: root root@192.168.199.17's password: # ps -ef | grep peaudefesse 1380 root grep peaudefesse # ps -ef | grep [p]eaudefesse #
Donc il faut passer par
[]
pour qu'il ne se trouve pas lui même...
il cherche tout ce qui fini pareaudefesse
avecp
devant, ça change tout car il ne trouvera pas[p]eaudefesse
oui ça j'avais bien compris, mais ça n'empêche que je ne vois toujours pas de chaine de caractère "p1guid" dans ce que tu postes comme résultat à ta commande...
(m'enfin quoi qu'il en soit c'est trés bien comme ça, au moins tu testes si chaine vide ou pas, plutôt que chercher si ça contient une chaine de caractères bien précise)j'ai relu ton post où tu parles initialement de
p1guid
, je pense que je n'avais pas capté sur le moment, pensant que tu me disais de faire ungrep p1guid
, qui aurait donné aussi un résultat non vide commegrep emulatorlauncher
sorry ^^
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Hé bien oui, il est sur le reset court sous ES... Est ce qu'il y a encore un intérêt à avoir un reset propre sur POWER ?
Pour moi non, les joueurs ayant 2 boutons, n'ont pas besoin d'un double reset propre.A la limite, pour ceux qui ont un seul bouton PUSH pour ON/OFF, il faudrait modifier aussi le rpi-pin56-power.py pour qu'il gère les appuis courts/longs
Je pourrais m'en occupé si nécéssaire
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Oui c'est voulu, le power c'est pour allumer/éteindre, il n'a pas de gestion d'appui, il a une fonction classique, comme la majorité des appareils qu'on connait.
D'ailleurs, il n'a plus besoin de faire plus, car les autres fonctions sont assurées par le reset.On se retrouve dans une config "normale".
Après je comprends que ça ne puisse pas plaire à tout le monde ^^
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Substring, normal que tu sois paumé ^^ je t'ai jeté dans le bateau en chemin, mais ne te sens pas obligé de participer
Un rapide résumé :
- Actuellement pour PIN356PUSHRESET on a ceci (PIN356ONOFFRESET, a moitié opérant, car pas de gestion switch):
durée/bouton sous ES En jeu RESET court rien reset du jeu (RetroArch only) RESET long reset propre du système reset propre du système POWER court rien quit du system et retour à ES POWER long shutdown propre du système reset propre du système - Le script modifié avec un peu d'aide ^^ fait ceci (valable pour PIN356ONOFFRESET et par défaut PIN356PUSHRESET) :
durée/bouton sous ES En jeu RESET court reset propre du système reset du jeu (RetroArch only) RESET long rien quit du system et retour à ES POWER court/Switch POWER shutdown propre du système shutdown propre du système POWER long/Switch POWER shutdown propre du système shutdown propre du système Donc, dans la MR, je demande purement un remplacement de rpi-pin356-power.py ou une option en plus pour recalbox.conf ?
Car finalement PIN356PUSHRESET n'a plus lieu d'être avec ce script modifié... -
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@substring said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
@ff-sounds perso je re grep avec
| grep -v grep
moi je ne grep que depuis moins d'une semaine ^^ mais ça me semble logique au final
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
grep
vérifie aussi ce qu'il a envoyé comme argument, c'est un peu con mais c'est comme ça ^^Regarde :
login as: root root@192.168.199.17's password: # ps -ef | grep peaudefesse 1380 root grep peaudefesse # ps -ef | grep [p]eaudefesse #
Donc il faut passer par
[]
pour qu'il ne se trouve pas lui même...
il cherche tout ce qui fini pareaudefesse
avecp
devant, ça change tout car il ne trouvera pas[p]eaudefesse
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
@substring said in Power Script PIN356ONOFFRESET avec switches SNES d'origine:
Comprends rien à ce qu'on me demande, j'ai rien fait c'est pas moi !
LOL !! t'inquiètes ça va bien se passer
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
YOUHOUU ! ça fonctionne !
il y avait 2 problèmes en fait:
-
celui corrigé par la commande
ps -ef | grep [e]mulatorlauncher
-
Et le
Popen
qui n'envoyait pas la dite commande...
donc on corrige avecproce=subprocess.Popen(['/bin/sh', '-c', 'ps -ef | grep [e]mulatorlauncher'], stdout=subprocess.PIPE)
@supernature2k copie @Substring
Quand tu me demandais de faire une MR pour l'intégrer, tu parlais d'un script qui gère le onoff et push comme l'actuel ?
ou bien seulement le onoff pour uniquement une config matériel ON/OFF + RESETJ'entends par là, est ce que tu veux que les appuis courts/longs actuels soient remplacés par ce que j'ai fait ?
pour rappel :- switch ON/OFF classique (PUSH serait éventuellement : shutdown propre quelque soit le temps d'appui, en fait je crois qu'il n'y aurait rien à changer dans ce cas, à tester sinon ONOFFRESET et PUSHRESET plus nécéssaire)
- Reset court en jeu => reset du jeu
- Reset long en jeu => retour ES
- Reset court sous ES => reboot propre
- Reset long sous ES => rien
Dites-moi
EDIT: pour info, la gestion LED fonctionne correctement aussi
-
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
ps -ef | grep [e]mulatorlauncher
corrige le problème, ,merci le lienPetit truc louche qui vient de m'arriver, j'ai descendu le store électrique du salon à l'instant car ça cogne dur, hé ben recalbox a reboot en appuyant sur l'interrupteur (mural je précise) !!!
@supernature2k @Substring, une idée du pourquoi ? la gestion du GPIO et de la masse ?Holala, j'ai pas fini avec tout ça... lol
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Je vais regarder à ça, merci pour le tuyau
grep
retourne p1guid sous ES aussi , il renvoi la commande en fait, donc l'idée de tester si présence d'une suite de caractère semble mauvaise.
C'est peut être pour ça qu'à la base c'est par les PID que la fonctionoffreset()
est faite.Je vais voir pour reprendre cette piste si pas concluant avec grep !
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
ça donne ça :
# ps -ef | grep emulatorlauncher 1437 root sh -c python /usr/lib/python2.7/site-packages/configgen/emulatorlauncher.pyc -p1index 0 -p1guid 05000000504c415953544154494f4e00 -p1name "PLAYSTATION(R)3 Controller" -p1nbaxes 4 -p1devicepath /dev/input/event2 -p2index 1 -p2guid 15000000010000000100000000010000 -p2name "SNES pad" -p2nbaxes 2 -p2devicepath /dev/input/event0 -p3index 2 -p3guid 15000000010000000100000000010000 -p3name "SNES pad" -p3nbaxes 2 -p3devicepath /dev/input/event1 -system gba -rom /recalbox/share/roms/gba/Anguna\ \(Nathan\ Tolbert\ and\ Chris\ Hildenbrand\).gba -emulator default -core default -ratio auto 2> /recalbox/share/system/logs/es_launch_stderr.log | head -300 > /recalbox/share/system/logs/es_launch_stdout.log 1438 root python /usr/lib/python2.7/site-packages/configgen/emulatorlauncher.pyc -p1index 0 -p1guid 05000000504c415953544154494f4e00 -p1name PLAYSTATION(R)3 Controller -p1nbaxes 4 -p1devicepath /dev/input/event2 -p2index 1 -p2guid 15000000010000000100000000010000 -p2name SNES pad -p2nbaxes 2 -p2devicepath /dev/input/event0 -p3index 2 -p3guid 15000000010000000100000000010000 -p3name SNES pad -p3nbaxes 2 -p3devicepath /dev/input/event1 -system gba -rom /recalbox/share/roms/gba/Anguna (Nathan Tolbert and Chris Hildenbrand).gba -emulator default -core default -ratio auto 1548 root grep emulatorlauncher
Dans ce cas, il faut vérifier aussi si
grep
est présent dans le résultat
=> si oui, >=2 sinon >=1 -
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Alors
ps -ef | grep emulatorlauncher | grep retroarch
ne renvoi rien sous ES, mais rien en jeu aussi...
Alors queps -ef | grep emulatorlauncher
renvoi bien un processus avec emulatorlauncher en jeu !j'ai regardé les options de
grep
, donc cette variante serait peut-etre pas mal :
ps -ef | grep -c emulatorlauncher
ça me renvoi le nombre d'itération trouvée
sous ES j'ai 1 donc si je teste >= 2 , ça serait ok ! -
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Idem, je suis parti du principe que ça ne renvoyait rien...
Voilà ce que j'ai avec Putty:login as: root root@192.168.199.17's password: # ps -ef | grep emulatorlauncher 1444 root grep emulatorlauncher
ça veut dire que ça renvoi bien un truc non ?
-
RE: Power Script PIN356ONOFFRESET avec switches SNES d'origine
Heu faire des logs... tu m'en demandes beaucoup là ^^
Les 2 types d'appui fonctionnent, j'ai repris le code original du rpi-pin356-power + petite modif de @supernature2k pour le ONOFF
Celui-ci fonctionne très bien d'ailleurs.Sur celui que j'ai modifié, il suffit que je mette en commentaire les lignes ci-dessous pour que le reset court fasse un reboot proprement :
elif (timer >1): # if search_launcher(channel) == True: # nwcommand="RESET" # retroarch(nwcommand) # print "retroarch" # killthats**t(channel) # elif search_launcher(channel) == False: speed=0.05 shutdownstring="shutdown -r now" offreset(speed, shutdownstring) print "reboot" timer = 0 flag = False time.sleep(0.1)
Donc il y a bien un truc qui cloche ici :
if search_launcher(channel) == True: nwcommand="RESET" retroarch(nwcommand) print "retroarch" killthats**t(channel) elif search_launcher(channel) == False:
ou là: (pour info j'ai bien ajouté
import subprocess
)def search_launcher(channel): if channel == RESETPLUS: proce=subprocess.Popen('ps -ef | grep emulatorlauncher', stdout=subprocess.PIPE) tmp=proce.stdout.read() if tmp: return True else: return False