Recalbox Forum

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

    NESPI :Fan Control 2 problèmes résolus en même temps

    Recalbox Général
    nespi fan control résolus même
    9
    44
    20339
    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.
    • kantoulf
      kantoulf last edited by

      ça marche très bien chez moi avec un autre ventilateur (en 5V).

      Par contre, ce petit ventilateur est très bruyant. J'ai donc modifié un peu le code pour faire du PWM manuel et le ralentir un peu, pour éviter qu'il ne se lance à pleine vitesse une fois les 60°C dépassés.

      Question : est ce que cette méthode peut impacter les performances ? Car envoyer 40 impulsions par secondes au ventilateur, ça doit manger quelque peu la puissance du CPU non ?

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

        Voici le code que j'utilise pour ne pas lancer le ventilateur à pleine vitesse :

        Par ailleurs, si je n'arrive pas à faire un code qui permette que :

        • le ventilateur s'allume à faible vitesse à 60°C jusqu'à ce que la température redescende à 55°C.
        • le ventilateur s'allume à pleine vitesse à 70°C jusqu'à ce que la température redescende à 55°C.

        j'ai essayé en faisant :

        mais ça ne marche pas... des idées ?

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

          Un premier problème existait déja au niveau du programme initial, puisque le sleep (5) que j'ai modifié en sleep (8) ne fonctionnait pas, or le ventilateur marchait correctement. Seulement il demandait la température tout le temps, ce qui bouffait d'énormes ressources au niveau des cores. Bref, le PI s'échauffait à cause du programme. 🙂
          Ton "PWM" ne peut pas marcher, je pense à C. Tu start et tu interrompt le courant tous les 5/100 de secondes. Mais tu oublis qu'il est endormi pendant cet temps là pendant 5 secondes. Un Soft PWM au niveau d'un uP ne pose pas de problème, alors qu'il n'a que cela a faire. J'utilise un prog. PWM comme Fader pour mes boutons, mais sur un Attiny13. Le Pi ne va pas digérer si tu enleve le sleep (5 ou 8).
          La ligne
          python /recalbox/share/myscripts/run-fan.py &
          je l'ai mise maitenant au niveau du script custom.sh

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

            Ben en fait le PWM fonctionne dans la première version du programme que j'ai postée au dessus. Mais si je rajoute des "if" pour qu'il se comporte différement en fonction de la T° (deuxième version du programme), le ventilo ne se lance plus du tout quelle que soit la T°.

            Je pense que je vais me refaire une version de ce programme à partir de 0, en faisant simplement une grande boucle "while true" avec des "if" à l'intérieur pour chaque intervalle de T° et un sleep=5 tout en bas pour éviter la surcharge CPU.

            Si j'arrive à un truc qui fonctionne je le posterai ici.

            @Dragu comment tu fais pour poster le code comme tu l'as fait en haut de ce topic ? Désolé je débute autant en Raspberry qu'en forums ^^

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

              @kantoulf
              Pour le code sur fond noir il faut faire 3x "`" au début et la même chose à la fin. C'est plus pervers que du Bbcode. 🙂
              Pour le reste, tu vas voir toi même que cela bouffe trop de ressources. Alors une solution plus simple, si le bruit te dérange, utiliser les petits circuits chinois stepdown 5V --> 3,3V (ne pas alimenter en 3,3V à travers les pins du PI)
              Dans ma case NESPI noir, je n'entend pas beaucoup du bruit. Il faut encore dire qu'il y a une variété de ventilateur sur le marché, beaucoup dépend du design des pales.

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

                Ok merci ! Je vais essayer la méthode du stepdown ! ça sera surement moins galère que le PWM, et ça tirera effectivement moins sur le CPU. Je vais même peut-être essayer de faire un circuit qui alimentera en 3,3V entre 60 et 70°C et 5V si la température dépasse 70°C. ça serait l'idéal...

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

                  @kantoulf
                  Si tu veux avoir la version Ventiluxe, tu pourras utiliser 2 pins. Un pour switcher 3,3Volt et un pour switcher 5V. Il faudra juste prévoir une diode >500mA dans la sortie des 3,3V pour ne pas le courtcircuiter. Sens vers le Ventilo dans la sortie +3,3V.
                  Tu m'as maintenant incité à essayer une nouvelle perversité avec le Nespi, pas Ventilo. 😉

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

                    En fait je viens de découvrir qu'il y'avait un pin d'alimentation en 3,3V sur le raspberry (je vous avais dit que je débutais ^^). J'ai branché le système dessus, et ça marche très bien.

                    La T° fluctue entre 55°C et 60°C et le système est très silencieux. Donc je pense que je vais abandonner le système avec un circuit en 5V et l'autre 3,3V.

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

                      @kantoulf
                      C'est ton risque. Comme j'ai écris autrepart le fabricant limite les pins 3V3 à 50mA. Tout les PI avant le PI3B ne vont pas digèrer plus. Les B+ ont une alimentation différente 250mA pour tout ! les pins. Alors avec 200mA pour le fan, il reste plus grande chose.

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

                        Ha ok, je pensais que tu disais de ne pas utiliser les GPIO pour l'alimentation ! Bon je verrais...

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

                          Bonjour,
                          Javoue etre coincé, le script fonctionne bien mais j'arrive pas le faire s'executer au démarrage. j'ai modifier /etc/init.d/s99custom voici se qu'il contient :

                          #!/bin/bash

                          python /recalbox/share/scripts/ventil.py &

                          Quand je lance la commande :

                          python /recalbox/share/scripts/ventil.py

                          Cela s’exécute bien mais si je reboot, Evidemment, plus rien !

                          Merci

                          PS : J'ai egalement vérifier que s99custom etait bien executable avec chmod +x s99custom

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

                            @EVOTk

                            @dragu said in NESPI :Fan Control 2 problèmes résolus en même temps:

                            La ligne
                            python /recalbox/share/myscripts/run-fan.py &
                            je l'ai mise maitenant au niveau du script custom.sh

                            Le mieux, c'est de ne pas modifier s99custom, mais de créer un script custom.sh avec la ligne d'appel. Aussi important le "&" à la fin, pour le faire tourner en background. L'appel du script custom.sh existe déjà dans s99custom.

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

                              Salut,
                              Merci pour ta réponse, j'ai donc editer S99custom pour le remetre d'origine.

                              J'ai créer custom.sh dans share/system avec pour seul ligne :

                              python /recalbox/share/scripts/ventil.py &

                              Mais cela ne marche toujours pas, snif

                              PS : Si une foit logger en SSH je marque :

                              python /recalbox/share/scripts/ventil.py

                              Cela fonctionne, c'est donc juste le lancement au démarrage qui est problématique, je ne comprend pas 😞

                              Edit :
                              Jessaye egalement avec ceci dans custom.sh :

                              #! / bin / sh
                              cd /recalbox/share/scripts
                              python ventil.py &

                              Sa ne marche toujours pas 😞

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

                                @EVOTk
                                J'ai créer custom.sh dans share/system avec pour seul ligne :
                                python /recalbox/share/scripts/ventil.py &

                                Tu as peut-être oublié "#!/bin/bash", il le faut et cela fera deux lignes.

                                #!/bin/bash
                                python /recalbox/share/myscripts/run-fan.py &
                                
                                EVOTk 1 Reply Last reply Reply Quote 0
                                • EVOTk
                                  EVOTk @Dragu last edited by

                                  @dragu said in NESPI :Fan Control 2 problèmes résolus en même temps:

                                  @EVOTk
                                  J'ai créer custom.sh dans share/system avec pour seul ligne :
                                  python /recalbox/share/scripts/ventil.py &

                                  Tu as peut-être oublié "#!/bin/bash", il le faut et cela fera deux lignes.

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

                                  Merci de ta reponse

                                  Effectivement, je ne lavais pas mis.

                                  J'ai donc maintenant dans mon fichier :

                                  #!/bin/bash
                                  python /recalbox/share/scripts/ventil.py &
                                  

                                  Malheuresement, sa ne change rien 😞

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

                                    @EVOTk

                                    Tu est sur que au niveau du S99custom tu as

                                    #!/bin/bash
                                    
                                    test -e "/recalbox/share/system/custom.sh" && /recalbox/share/system/custom.sh $1
                                    

                                    et que ton script "ventil.py" existe bien dans le bon folder.

                                    EVOTk 2 Replies Last reply Reply Quote 0
                                    • EVOTk
                                      EVOTk @Dragu last edited by

                                      @dragu
                                      Oui, si je fait

                                      bash -x /recalbox/share/system/custom.sh
                                      

                                      le script se lance

                                      OyyoDams 1 Reply Last reply Reply Quote 0
                                      • OyyoDams
                                        OyyoDams Staff @EVOTk last edited by

                                        @evotk chmod +x /recalbox/share/system/custom.sh tu as fait ?

                                        EVOTk 1 Reply Last reply Reply Quote 0
                                        • EVOTk
                                          EVOTk @OyyoDams last edited by

                                          @oyyodams

                                          Oui, il faut que je le fasse aussi sur mon script ventil.py ?

                                          OyyoDams 1 Reply Last reply Reply Quote 0
                                          • OyyoDams
                                            OyyoDams Staff @EVOTk last edited by

                                            @evotk pas si tu mets "python" avant comme tu l'as fait.

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

                                            Want to support us ?

                                            90
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com