Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Shutdown -h now ou poweroff

    Recalbox Général
    poweroff
    1
    1
    222
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Slan
      Slan last edited by

      Bonjour à tous,

      je suis actuellement en train de me faire une Game Gear Recalbox. Pour cela j'utilise un Raspberry Zero W couplé à un écran MPI3508 HDMI, intégré dans une Game Gear le tout alimenté avec une pile lithium 18650.

      La contrainte principale de ce projet est de garder l'esthétique de la console entièrement d'origine sans rajouter aucun bouton supplémentaire. Je dois donc mettre le nez dans les scripts afin de palier au manque de boutons. Le but étant de faire tourner uniquement les émulateurs GameBoy, GG, NES et Master Sytsem.

      À ce titre, j'ai installé le script rpi-exit-emu-1b.py afin de quitter l'émulateur en cours rapidement. J'ai modifié le script en question afin de pouvoir faire un "safe shutdown" de la console.

      Ma question est donc : dans le cadre d'un safe shutdown , vaut-il mieux utiliser la commande 'poweroff' ou bien la commande 'shutdown -h now', je ne saisie pas bien la différence entre les deux. Les deux solutions ont l'air de fonctionner quoique la méthode 'poweroff' semble plus brutale!

      Voici mon script modifié (je n'ai que quelques notions de Python, désolé pour les puristes...) :

      import RPi.GPIO as GPIO
      import os
      import time
      #Set Environment
      GPIO.setmode(GPIO.BCM)
      GPIO.setwarnings(False)
      GPIO.setup(10, GPIO.IN, pull_up_down=GPIO.PUD_UP) # START button
      GPIO.setup(25, GPIO.IN, pull_up_down=GPIO.PUD_UP) # A button
      GPIO.setup(17, GPIO.IN, pull_up_down=GPIO.PUD_UP) # DOWN button
      #Code
      try:
      	while True:
      		GPIO.wait_for_edge(10, GPIO.FALLING)
      	  	if GPIO.input(25) == GPIO.LOW and GPIO.input(17) == GPIO.LOW:
      	  		pressedat = time.clock()
      	  		while GPIO.input(10) == GPIO.LOW and GPIO.input(25) == GPIO.LOW and GPIO.input(17) == GPIO.LOW:
      	  			releasedat = time.clock()
      	  			if (releasedat - pressedat) >= 1:
      					os.system("shutdown -h now")
                                              break
      					
       		else : 
      			pressedat = time.clock()
      			while GPIO.input(10) == GPIO.LOW:
      	  			releasedat = time.clock()
      	  			if (releasedat - pressedat) >= 1:
      					os.system("killall -9 retroarch mupen64plus fba2x scummvm &> /dev/null")
       	#Reset Control Vars
      	releasedat = pressedat = 0
      #Cleaning Gpio ports on Error or Exit
      finally:
         GPIO.cleanup()
      
      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Want to support us ?

      73
      Online

      99.7k
      Users

      28.1k
      Topics

      187.1k
      Posts

      Copyright © 2021 recalbox.com