Recalbox Forum

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

    Aide script ajout ventilateur pour boitier Kintaro

    Recalbox Général
    script ajout ventilateur boitier kintaro
    4
    49
    10331
    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.
    • Mikefly
      Mikefly last edited by

      Salut à tous,

      J'ai reçu mon boitier Kintaro Super Ursus ( la version PAL de la Snes ) j'ai télécharger le script qu'ils ont crée pour Racalbox.

      Le problème c'est que ce script ne gère que le bouton ON/OFF , RESET et la LED. aucune ligne de code pour gérer un ventilateur.

      J'ai réussi à mettre des lignes de code pour qu'il s'allume tout le temps mais bonjour le bruit ! (c'est un ventilo 25x25x10mm, pas le choix) voila le script modifié.

      J'ai regardé leur script version retropie et la il y a des lignes de code qui gere le ventilo. Il démarre à 60°C et s'eteint à 55°C

      je ne connais rien en code python. J'ai besoin de votre aide pour créer les lignes de code qui gère le lancement du ventilo a une certaine température.

      voila ce que j'ai dans mon script modifié

      voila.

      Merçi d'avance pour votre aide 😄

      1 Reply Last reply Reply Quote 0
      • Dragu
        Dragu Banned last edited by

        C'est pas le même boitier, mais
        https://forum.recalbox.com/topic/11228/nespi-fan-control-2-problèmes-résolus-en-même-temps/2

        1 Reply Last reply Reply Quote 0
        • Mikefly
          Mikefly last edited by Mikefly

          oui je l'ai vu ton post. pour le pin je ne sais pas son numéro. dans le script il y a de marqué Fan=8 est ce le pin 8 ?

          @Substring j'ai besoin de ton aide 🙂

          1 Reply Last reply Reply Quote 0
          • Dragu
            Dragu Banned last edited by Dragu

            Fan=8 ? Tu vois ça ou ?
            La dernierère version du script que j'utilise permet de changer tous les paramêtres au début du script, simpliste

            #!/usr/bin/env python3
            # Author: Edoardo Paolo Scalafiotti
            import os
            from time import sleep
            import signal
            import sys
            import RPi.GPIO as GPIO
            pin = 18 # The pin ID, edit here to change it
            maxTMP = 60 # Over put on fan
            minTMP = 55 # Under put off fan 
            def setup():
                GPIO.setmode(GPIO.BCM)
                GPIO.setup(pin, GPIO.OUT)
                GPIO.setwarnings(False)
                return()
            def getCPUtemperature():
                res = os.popen('vcgencmd measure_temp').readline()
                temp =(res.replace("temp=","").replace("'C\n",""))
                #print("temp is {0}".format(temp)) #Uncomment here for testing
                return temp
            def fanON():
                setPin(True)
                return()
            def fanOFF():
                setPin(False)
                return()
            def getTEMP():
                CPU_temp = float(getCPUtemperature())
                if CPU_temp>maxTMP:
                    fanON()
                if CPU_temp<minTMP:
                    fanOFF()
                return()
            def setPin(mode): # A little redundant function but useful if you want to add logging
                GPIO.output(pin, mode)
                return()
            try:
                setup()
                while True:
                    sleep(8) # Read the temperature every x sec, increase or decrease this limit if you want
            	getTEMP()
            except:
                GPIO.cleanup() # resets all GPIO ports used by this program
            

            Il suffit alors de créer un fichier custom.sh
            /recalbox/share/system/custom.sh
            avec le contenu

            #!/bin/bash
            
            python /recalbox/share/myscripts/run-fan.py &
            

            L'emplacement du script run-fan.py ou de son nom, tu peux évidement changer.
            Maintenant, si tu as d'autres scripts en plus à lancer lors du start, tu peux définir custom.sh autrement

            #!/bin/bash
            
            start() {
            python /recalbox/share/myscripts/kintaro.py &
            python /recalbox/share/myscripts/run-fan.py &
            }
            
            stop() {
            echo -n ""
            }
            
            case "$1" in
              start)
                    start
                    ;;
              stop)
                    stop
                    ;;
            esac
            1 Reply Last reply Reply Quote 0
            • Mikefly
              Mikefly last edited by Mikefly

              Salut,

              Je ne sais pas si tu as regardé mon script que j'ai posté plus haut. Recalbox ne prend pas en charge nativement mon boitier. Donc j'ai installé le script fourni par kintaro.

              Il y a dedans un fichier s100kintaro.sh

              En gros faudrai rajouter ton code dans mon fichier script kintaro.py

              D'ailleurs comme fait on pour afficher du code ici ?

              Voilà le lien de mon fichier scripts :

              https://drive.google.com/file/d/1eEpg99W4Ps37qC30v8eSU00HOz0m6FEA/view?usp=drivesdk

              Pour l'instant je suis en week-end à la mer je rentre que demain soir.

              Substring 1 Reply Last reply Reply Quote 0
              • Dragu
                Dragu Banned last edited by Dragu

                Evite les méduses avec plus de 4 tentacules. Pour le code c'est 3x "```" pour ouvrir et même chose pour finir.
                La commande du ventilateur à partir du GPIO pin 8, il faut voir le connecteur du boîtier ou il s'enfiche sur le PI3. Dans ton script, je ne vois aucune fonction de température.
                Alors vaut mieux séparer en 2 scripts. Pour commander un fan à partir du GPIO il faut un transistor intermédiaire et les 5Volt. Maintenant si sur la platine de ton boîtier une commande du ventilo dans cet sens est comprise, pas besoin de le faire. Les sorties GPIO sont à 3,3V et n'ont pas assez de puissance.
                Alors, ou bien si tel schéma existe dans le boitier, enlever tous les lignes se rapportant à fan dans le script kintaro et mettre le script fan avec pin = 8 derrière. L'appel de plusieurs script est parfois un avantage.

                Mikefly 1 Reply Last reply Reply Quote 0
                • Substring
                  Substring @Mikefly last edited by

                  @mikefly tu peux tout à fait utiliser le script de Dragu tel qu'il l'a posté, rien n'oblige à tout centraliser dans un seul fichier 😉

                  Le truc, c'est que le script de Dragu ne gère pas d'hystérésis, juste une température seuil

                  Former dev - Please reply with @substring so that i am notified when you answer me
                  Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                  1 Reply Last reply Reply Quote 0
                  • Mikefly
                    Mikefly last edited by

                    Je vais regarder ça.

                    Comme je n'y connais pas grand chose. Le faire un seul fichier aurait plus simple car je colle le code et hop je le met dans recalbox.

                    Je vais regarder dimanche soir comment faire.

                    1 Reply Last reply Reply Quote 0
                    • Mikefly
                      Mikefly @Dragu last edited by

                      @dragu said in Aide script ajout ventilateur pour boitier Kintaro:

                      Evite les méduses avec plus de 4 tentacules. Pour le code c'est 3x "```" pour ouvrir et même chose pour finir.
                      La commande du ventilateur à partir du GPIO pin 8, il faut voir le connecteur du boîtier ou il s'enfiche sur le PI3. Dans ton script, je ne vois aucune fonction de température.
                      Alors vaut mieux séparer en 2 scripts. Pour commander un fan à partir du GPIO il faut un transistor intermédiaire et les 5Volt. Maintenant si sur la platine de ton boîtier une commande du ventilo dans cet sens est comprise, pas besoin de le faire. Les sorties GPIO sont à 3,3V et n'ont pas assez de puissance.
                      Alors, ou bien si tel schéma existe dans le boitier, enlever tous les lignes se rapportant à fan dans le script kintaro et mettre le script fan avec pin = 8 derrière. L'appel de plusieurs script est parfois un avantage.

                      Alors là je ne sais pas du tout je sais que la carte électronique se connecte directement sur les premiers pin voir photo:
                      0_1533377383294_IMG_20180803_120304.jpg

                      C'est quoi l'hysterisis ?

                      @Dragu Est ce que je doit supprimer les lignes que j'ai rajouté dans le script kintaro pour activer le ventilo tout le temp ?

                      Celle là :

                      def fan(status):
                      if status == 0:
                      GPIO.output(FAN, GPIO.LOW)
                      if status == 1:
                      GPIO.output(FAN, GPIO.HIGH)

                      Substring 1 Reply Last reply Reply Quote 0
                      • Dragu
                        Dragu Banned last edited by Dragu

                        @Mikefly
                        Prend le script original kintaro.py et lance le juste avant celui du ventilateur.
                        Ton script modifié fera erreur de toute façon. Pour la platine, il faudrait voir de l'autre coté s'il y a une commande électrique du ventilateur ou pas. (Q1 ?) C'est pas sur, parce que dans kintaro.py il met juste la variable FAN =8, et rien derrière, même pas si c'est un pin IN ou Out.
                        Si ça marche tout le temps après l'installation du script, il faut faire aussi la mod. avec transistor S8050.

                        1 Reply Last reply Reply Quote 0
                        • Substring
                          Substring @Mikefly last edited by

                          @mikefly un hystérésis, c'est le fait de ne pas être sur une température de seuil (60 dansle script de Dragu), mais 2 : un pour l'activation, l'autre pour la désactivation

                          Former dev - Please reply with @substring so that i am notified when you answer me
                          Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                          1 Reply Last reply Reply Quote 0
                          • Dragu
                            Dragu Banned last edited by

                            @Substring
                            Mais en dessous de 55, dans l'exemple, il se désactive à nouveau . Il ya 2 seuils.

                            Substring 1 Reply Last reply Reply Quote 0
                            • Mikefly
                              Mikefly last edited by Mikefly

                              @dragu said in Aide script ajout ventilateur pour boitier Kintaro:

                              @Mikefly
                              Prend le script original kintaro.py et lance le juste avant celui du ventilateur.
                              Ton script modifié fera erreur de toute façon. Pour la platine, il faudrait voir de l'autre coté s'il y a une commande électrique du ventilateur ou pas. (Q1 ?) C'est pas sur, parce que dans kintaro.py il met juste la variable FAN =8, et rien derrière, même pas si c'est un pin IN ou Out.
                              Si ça marche tout le temps après l'installation du script, il faut faire aussi la mod. avec transistor S8050.

                              Oui le script pour recalbox originale est incomplet.

                              Par contre celui pour retropie est vraiment complet avec la température et tout donc ça devrait fonctionner sans modification.
                              Car dans la notice côté retropie il y a de marqué que le ventilo s'enclenche à 60 et j'arrête à 55.

                              Tiens tu peux regarder ce que ça donne :
                              https://github.com/MichaelKirsch/KintaroSnes

                              Substring 1 Reply Last reply Reply Quote 0
                              • Substring
                                Substring @Dragu last edited by

                                @dragu ben c'est ce que je dis 😄 En gros :

                                text alternatif

                                Faut remplacer 100 par 55 et 100.8 par 60 pour se comprendre la chose.

                                @Mikefly peu importe d'avior un script complet Recalbox ou non, tu peux utiliser le script et Dragu direct du moment que c'est la bonne broche qui est configurée

                                Former dev - Please reply with @substring so that i am notified when you answer me
                                Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                1 Reply Last reply Reply Quote 0
                                • Substring
                                  Substring @Mikefly last edited by

                                  @mikefly tu as essayé le pcb.py directement sans modifs ?

                                  Former dev - Please reply with @substring so that i am notified when you answer me
                                  Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                  1 Reply Last reply Reply Quote 0
                                  • Mikefly
                                    Mikefly last edited by Mikefly

                                    @Substring oui dès que je rentre demain soir je crée un fichier avec le code de @Dragu .

                                    Il suffit sur je fasse un copié collé ? Et que je rajoute la ligne dans le fichier .sh ?

                                    Ah non pas essayé le fichier pcb.py de retropie. Tu crois qu'il est compatible ?

                                    Substring 1 Reply Last reply Reply Quote 0
                                    • Substring
                                      Substring @Mikefly last edited by

                                      @mikefly pas vu grand chose qui soit propre à retropie dedans. Vérifie bien que /opt/kintaro existe.

                                      Après, peut-être 2-3 tweaks par-ci par-là pour que ca marche au pire, mais pas grand chose.

                                      Le plus simple pour toi faire :

                                      cd
                                      wget https://raw.githubusercontent.com/MichaelKirsch/KintaroSnes/master/pcb.py
                                      python pcb.py
                                      

                                      A faire en SSH bien sûr. Tu me dis ce que ca sort dès que tu lances la commande python.

                                      Former dev - Please reply with @substring so that i am notified when you answer me
                                      Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                      Mikefly 1 Reply Last reply Reply Quote 0
                                      • Mikefly
                                        Mikefly last edited by

                                        @Substring le problème dans le fichier c'est qu'il veut lancer une vidéo d'introduction kintaro.

                                        Substring 1 Reply Last reply Reply Quote 0
                                        • Substring
                                          Substring @Mikefly last edited by

                                          @mikefly osef de la vidéo, elle se désactive dans /opt/kintaro/kintaro.config

                                          Former dev - Please reply with @substring so that i am notified when you answer me
                                          Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                          1 Reply Last reply Reply Quote 0
                                          • Mikefly
                                            Mikefly last edited by Mikefly

                                            @Substring Le fichier kintaro.config va se créer tout seul ou je dois copier tout les fichiers scripts de la page ?

                                            Substring 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Want to support us ?

                                            51
                                            Online

                                            98.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.0k
                                            Posts

                                            Copyright © 2021 recalbox.com