Recalbox Forum

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

    Relier à un écran et afficher du texte ?

    Manettes/GPIO/Encodeurs
    relier afficher texte
    14
    162
    79476
    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.
    • Substring
      Substring @godhunter74 last edited by

      @godhunter74 fais un ps quand un emulateur tourne, ca saute aux yeux !!!

      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
      • godhunter74
        godhunter74 last edited by

        @Substring
        Bonjour, j'ai fait des PS en pagaille et à chaque fois je crois que la fin de la ligne est tronquée car je ne trouve pas le jeu que j'ai lancé, La ligne s'arrête pile poil sur /roms
        Et je ne sais vraiment pas concrètement par quelle commandes je peux exporter le résultat du PS et le filtrer.

        Relier un écran I2C et afficher des informations sur les roms

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

          @godhunter74 tu ne connais pas beaucoup linux toi hein ? 😉 C'est normal que ca tronque puisque ton terminal limité en largeur. Le mieux dans ton cas est de stocker le résultat dans une variable puis de chercher les options que tu veux avec des cut ou des sed.

          Au pire la ligne complète apparait dans le es_log.txt dans ~/.emulationstation donc tu peux partir avec ca comme base avant de te coltiner les ps.

          Et dans le pire des cas (si je n'trvaille pas faudra que je reprenne la boîte de papaaaaaaa ... oups je m'égare haha), dans /proc/<pid>/cmdline tu as la ligne de commande complète sans espaces. Moins rigolo à utiliser, mais bon ...

          Allez je t'aide :

          COMMANDLINE=`ps | grep emulatorlauncher.py | grep -v grep | tr -s ' ' | cut -d '  ' -f 4-`
          

          Je traduis :

          1. les des processus
          2. ne garde que ceux ayant emulatorlauncher.py dedans
          3. exclue ceux qui ont grep dedans (bah oui, quand tu grep, grep est un processus !)
          4. si tu trouves plusieurs espacs consécutifs, réduis-les à 1 seul
          5. découpe les champs sur le séparateur espace, prend du 4e jusqu'à la fin

          A l'issue, si tu fais echo $COMMANDLINE ca devrait t'afficher la ligne complète. Bon je n'ai pas pu tester là, mais ca devrait etre bon

          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
          • godhunter74
            godhunter74 last edited by

            Merci c'est super je m'y met ce soir et je fais un retour dès que possible !!!

            Relier un écran I2C et afficher des informations sur les roms

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

              @Substring
              Ça marche !!!
              C'est pas propre
              C'est pas top
              Mais ça marche je vais mettre une petite vidéo pour commencer

              Relier un écran I2C et afficher des informations sur les roms

              godhunter74 1 Reply Last reply Reply Quote 0
              • godhunter74
                godhunter74 @godhunter74 last edited by godhunter74

                @Substring
                Quand tu va voir mes grep tu vas hurler 😂
                http://www.youtube.com/watch?v=pdSkxmWYvmc

                Relier un écran I2C et afficher des informations sur les roms

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

                  Cest dommage pour la vidéo on va pas l affichage sur l autre écran.

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

                    @Substring
                    Pour commencer, voici mon horreur :

                    rom = run_cmd("ps | grep emulatorlauncher.py | grep -v 'c python' | grep -v grep | tr -s ' ' | cut -d '/' -f15 | cut -d '.' -f1")
                    system = run_cmd("ps | grep emulatorlauncher.py | grep -v 'c python' | grep -v grep | tr -s ' ' | cut -d ' ' -f19")

                    Et il me reste un problème, mon script est python... et j'ai tenté ça dans un S99I2Cscreen :

                          #!/bin/bash
                          python /recalbox/share/scrolling/retropie_clcd.py
                    

                    placé dans le init.d et ca ne marche pas... as tu une idée ?
                    EDIT : si je me place da,s le rep et lance manuellement tel que ci-dessous le S99retropie_clcd est bien lancé et le script python démarre !!!
                    cd /etc/init.d
                    ./S99retropie_clcd

                    @acris
                    je suis désolé mais le téléphone sature sur le LCD je me suis inspiré à 95% de zzeromin et 5% de Substring, voici une des vidéos de zzeromin plus lisible https://www.youtube.com/watch?v=W6jqBTqPqjw&feature=youtu.be

                    Relier un écran I2C et afficher des informations sur les roms

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

                      C'est en I2S un écran pareil, pas en I2C 😮 Si ?

                      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
                      • kjbstar
                        kjbstar last edited by

                        Allez maintenant il reste plus qu'à aller chercher le nom du jeu au propre dans le gamelist à partir de la rom et du système 😉

                        Recalbox 4.0.2 sur Raspberry Pi 2
                        Recalboy sur Raspberry Pi Zero

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

                          @kjbstar avec xmlint ^^

                          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
                          • acris
                            acris last edited by

                            @godhunter74
                            merci pour la vidéo, ça m intéresserait pour l'ajouter sur mon bartop.
                            Quel écran as tu utilisé et où l as tu acheté ?
                            n'hésite pas à faire un tuto complet quand tu auras fini 😄

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

                              @acris bjour j'ai acheté le lcd ici :
                              https://www.amazon.fr/gp/aw/d/B00GBSWOWW/ref=yo_ii_img?ie=UTF8&psc=1
                              2€52 avec un gros delai.
                              Mais d'après mes différents essai on peut utiliser n'importe quel écran I2C si le nombre de caractères affichables change, il y aura des modifications à faire.

                              Relier un écran I2C et afficher des informations sur les roms

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

                                Voici les 1ères étapes pour activer l'I2C, brancher l'écran et le detecter...

                                Pour activer l'I2C

                                je suis allé dans : /lib/modules/4.4.13-v7/kernel/drivers/i2c/ récuperer le fichier i2c-dev.ko pour le placer dans /lib/modules/i2c-dev.ko
                                je suis allé dans : /lib/modules/4.4.13-v7/kernel/drivers/i2c/busses/ récuperer le fichier i2c-bcm2708.ko pour le placer dans /lib/modules/i2c-bcm2708.ko

                                Ensuite je suis allé dans /etc/ éditer le fichier modules.conf j'ai ajouté à la fin :
                                i2c-bcm2708
                                i2c-dev

                                Pour brancher l'écran
                                Utilisez les ports SCA et SDL du PI

                                Detecter l'écran
                                Il faudra vérifier votre adresse I2C du 16x2 CLCD...
                                i2cdetect -y 1
                                0 1 2 3 4 5 6 7 8 9 a b c d e f
                                00: -- -- -- -- -- -- -- -- -- -- -- -- --
                                10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                                20: -- -- -- -- -- -- -- 3F -- -- -- -- -- -- -- --
                                30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                                40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                                50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                                60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

                                Relier un écran I2C et afficher des informations sur les roms

                                thibault-fl 1 Reply Last reply Reply Quote 0
                                • acris
                                  acris last edited by acris

                                  @godhunter74 Tu as ete cherché ses fichiers dans recalbox car ils ne sont pas placé au bon endroit ou sinin ils sortent d'où ?

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

                                    @acris Oui je suis bien aller les chercher dans la distribution de recalbox 4.1 j'ai l'impression que du fait qu'ils soient dans des sous dossier il ne soit pas interprétés

                                    Relier un écran I2C et afficher des informations sur les roms

                                    1 Reply Last reply Reply Quote 0
                                    • ian57
                                      ian57 Staff last edited by

                                      c'est bizarre ça , tas tu tester leur chargement à l'aide de la commande modprobe?

                                      "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

                                      godhunter74 1 Reply Last reply Reply Quote 0
                                      • godhunter74
                                        godhunter74 @ian57 last edited by

                                        @ian57 j'avais essayé des dizaines de choses ce que je sais c'est que ça marche lol...
                                        @Substring j'ai d'énormes lacunes en bash, python, et sous linux... Autant dire que je suis parti de loin pour en arriver là... J'ai encore quelques soucis : XMLLINT a l'air extraordinaire mais tout mes essais ont foirés comme d'habitude.

                                        Sur le script d'origine de zzeromin figure une commande sympathique :
                                        grep -A1 "${rom_bn}" ${GAMELIST} | awk "{getline;print}" | awk "BEGIN {FS="<name>"} {print $2}" | awk "BEGIN {FS="</name>"} {print $1}"

                                        en console si je tape : grep -A1 "./90 Minutes - European Prime Goal (E)" /recalbox/share/roms/snes/gamelist.xml | awk '{getline;print}' | awk 'BEGIN {FS="<name>"} {print $2}' | awk 'BEGIN {FS="</name>"} {print $1}'
                                        OH BONHEUR cela me retourne 90 Minutes European Prime Goal

                                        si je joue avec un bash que je lance manuellement:
                                        ./runcommand-onstart.sh "snes" "snes" "90 Minutes - European Prime Goal (E) [!]"
                                        90 Minutes - European Prime Goal (E) [!]
                                        /recalbox/share/roms/snes/gamelist.xml
                                        grep -A1 "${rom_bn}" ${GAMELIST} | awk "{getline;print}" | awk "BEGIN {FS="<name>"} {print $2}" | awk "BEGIN {FS="</name>"} {print $1}"
                                        snes

                                        90 Minutes - European Prime Goal (E) [!]

                                        Voici le code :
                                        title=grep -A1 "${rom_bn}" ${GAMELIST} | awk "{getline;print}" | awk "BEGIN {FS=\"<name>\"} {print $2}" | awk "BEGIN {FS=\"</name>\"} {print $1}"
                                        echo title ne retourne rien. rom_bn et GAMELIST ont bien des valeurs vérifiées avec un echo. je suis dessus depuis 16H et là je deviens un peu chèvre...
                                        Peux tu m'orienter stp ?

                                        Relier un écran I2C et afficher des informations sur les roms

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

                                          @Substring
                                          j'ai aussi essayé en python

                                               fichier=open(GAMELIST,"r")
                                               for ligne in fichier:
                                                  print ligne
                                                  if rom in ligne:
                                                     laligne= ligne
                                          		   
                                               fichier.close()
                                          

                                          laligne reste vide...

                                          Relier un écran I2C et afficher des informations sur les roms

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

                                            @godhunter74 xmllint ... commence par regarder ce qu'est le XPATH 🙂 ensuite il te faut une clause sur la valeur du bom de la rom, rien de très compliqué pourtant, mais faut avoir un peu l'habitude

                                            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é

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

                                            Want to support us ?

                                            81
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com