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
    79477
    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.
    • Choum
      Choum last edited by

      Merci pour les infos !
      J'ai suivi les infos laissés par Godhunter74 et j'ai aussi réussi à faire fonctionner un écran LCD HD77480 avec I2c sous recalbox 4.1.

      Cependant j'ai adapté le script fourni plus haut car de base celui ne fonctionne pas.

      • Il plantait systématiquement lorsque qu'aucun émulateur était en fonctionnement ,le script ne semblait pas prendre en compte cette possibilité, j'ai donc rajouter une condition si le processus retroarch n'est pas trouvé.

      • J'ai aussi passé en Français les infos qu'affiche le script (date etc...) et mis en place une routine qui remplace les caractères accentués pour les écran lcd ne supportant pas les caractères Européens (en gros il existe une version HD77480A00 qui support les caractères japonais en plus de l'ASCII, et une version HD77480A02 qui support les caractère Européens en plus de l'ASCII).

      • J'ai aussi ajouté l'ensemble des systèmes manquant dans le script.

      Une fois complètement testé, je le mettrai sur un pastebin.

      Cependant je bloque sur un truc bête, Je suppose que je dois créer un processus dans init.d pour ce genre de script ?

      Si oui ne connaissant pas trop le Bash linux, le script suivant est-il correct ?

      https://pastebin.com/EQcnLZR8
      Je l'ai récupéré d'un autre topic.

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

        J'ai terminé de déb****r le script.
        Il ne plante plus quelque soit l'émulateur, il y avait un problème lorsque le scrap comprenait des sous dossiers comme sur Dreamcast ou cavestory.
        J'ai aussi terminé le service init.d pour démarrer / stopper proprement le script.

        Cela vaut-il le coup que je mette toute ma procédure sur le wiki (comment installer, faire reconnaître l'écran 2ic, installer le script sous recalbox ?)

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

          Bonjour @Choum
          Merci pour ta contribution.
          Oui un tuto serait bienvenue et mettre à dispsition tes scripts sur github aussi.

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

            Ok je suis en train de me battre avec github pour mettre cela en ligne.

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

              Tout est upload la avec la documentation
              https://github.com/Choum28/Recalbox-Clcd

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

                Bravo 😄

                sudo i2cdetect -y 1
                

                la commande sudo n'est pas disponible sur recalbox.

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

                  C'est corrigé, je suis repartie en partie du readme de l'auteur original d'où cette erreur.

                  1 Reply Last reply Reply Quote 0
                  • tong-man
                    tong-man last edited by tong-man

                    Bonjour,

                    Je viens de recevoir ce type d'écran un afficheur de ce type avec i2c présoudé puis j'ai suivi à la lettre le tuto :
                    https://github.com/Choum28/Recalbox-Clcd

                    Tout d'abord merci aux auteurs et dev de ce script, ca parait très prometteur...

                    J'ai pu d'abord y relever 2 petites erreurs dans le tuto mais rien de grave :
                    1:
                    Chmod +x /recalbox/scripts/recalbox_clcd_off.py > recalbox_clcd.py ?
                    Chmod +x /recalbox/scripts/recalbox_clcd_off.py
                    Chmod +x /recalbox/scripts/I2C_LCD_driver.py
                    Chmod +x /recalbox/scripts/lcdScroll.py
                    Chmod +x /etc/init.d/S97LCDInfoText
                    @Choum @acris
                    hors mis le fait que la commande chmod ne s'écrit pas avec un c majuscule, sinon elle n'est pas comprise...

                    2:
                    ..que fait t'on du fichier recalbox_clcd.lang ?

                    Dans le doute je l'ai mis aussi dans /recalbox/scripts/ et lui ai aussi mis l'attribut d'être exécuté.

                    Pour le moment, cela ne fonctionne pas pour moi, le rétroéclairage s'allume et s'éteint avec le rpi, mais je n'ai pour le moment obtenu aucun affichage.

                    i2cdetect -y 1
                    /recalbox/scripts$ i2cdetect -y 1
                    0 1 2 3 4 5 6 7 8 9 a b c d e f
                    00: -- -- -- -- -- -- -- -- -- -- -- -- --
                    10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                    20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --
                    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                    50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                    60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
                    70: -- -- -- -- -- -- -- --

                    j'ai bien mis ADDRESS = 0x27 dans I2C_LCD_driver.py

                    Une idée de ce qui peut coincer ? 😛
                    PI j'ai un afficheur 1602A.

                    Tips RecalBox > https://lc.cx/xAcs

                    tong-man 1 Reply Last reply Reply Quote 0
                    • tong-man
                      tong-man @tong-man last edited by tong-man

                      ... alors je viens de voir que dans le script recalbox_clcl.py, il fallait commenter quelques lignes si l'on possédait un HD44780A02.

                      Ce que j'ai fait, et pareil, rien ne s'affiche au reboot suivant.

                      j'ai lancé le script à la main, il ne retourne pas d'erreur ni ne s'arrête lorsque je lance un jeu ou l'arrête.
                      edit :

                      Toutes ces séquences fonctionnent en manuel :

                      ./S97LCDInfoText

                      Usage: ./S97LCDInfoText {start | stop | restart | status}

                      ./S97LCDInfoText start

                      Starting script /recalbox/scripts/recalbox_clcd.py ...
                      ./S97LCDInfoText [STARTED]

                      ./S97LCDInfoText restart

                      Restarting script /recalbox/scripts/recalbox_clcd.py ...
                      Stopping script /recalbox/scripts/recalbox_clcd.py ...
                      Starting script /recalbox/scripts/recalbox_clcd.py ...
                      ./S97LCDInfoText [RESTARTED]

                      ./S97LCDInfoText stop

                      Stopping script /recalbox/scripts/recalbox_clcd.py ...
                      ./S97LCDInfoText [STOPPED]

                      cette dernière éteint bien l'afficheur.

                      Tips RecalBox > https://lc.cx/xAcs

                      1 Reply Last reply Reply Quote 0
                      • tong-man
                        tong-man last edited by tong-man

                        ...Bon ca marche xD

                        Svp rajouter dans le tuto :

                        • Derrière l'i2C il y a un potentiomètre qui permet de régler le contraste. il était au minimum xD

                        EDIT :
                        Dernier petit soucis à régler néanmoins, le fichier S97LCDInfoText que j'ai posé dans /etc/init.d n'a pas l'air de se lancer au démarrage de recalbox...

                        Tips RecalBox > https://lc.cx/xAcs

                        Substring 1 Reply Last reply Reply Quote 0
                        • Substring
                          Substring @tong-man last edited by

                          @tong-man il est exécutable au moins ? Le mieux ca reste de mettre ca dans ~/custom.sh pour moultes raisons

                          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é

                          tong-man 1 Reply Last reply Reply Quote 0
                          • tong-man
                            tong-man @Substring last edited by

                            @substring Salut ! oui il l'est (attributs en rwxr-xr-x) commes les autres scripts dans /etc/init-d/

                            Il est par contre vrai que ce script attend un paramètre :

                            ./S97LCDInfoText

                            Usage: ./S97LCDInfoText {start | stop | restart | status}

                            je m'en vais en quete de ce custom.sh. merci

                            Tips RecalBox > https://lc.cx/xAcs

                            Substring 1 Reply Last reply Reply Quote 0
                            • Substring
                              Substring @tong-man last edited by

                              @tong-man le script recoit automatiquement start au lancement et stop au shutdown, donc pas d'inquiétude à avoir pour ca. S'il ne se lance pas, peut etre que certains chemins sont en relatif et non en absolu. Tu veux que je le regarde ? il est où ?

                              Pour l'histoire du custom.sh : en prévision de ce qu'on a dans les cartons pour Recalbox, c'est mieux de ne pas toucher au /

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

                                comme dit dans le tuto :
                                Copy S97LCDInfoText to /etc/init.d/

                                je veux bien que tu regardes. merci @Substring

                                https://github.com/Choum28/Recalbox-Clcd

                                Après chaque reboot, il ne se lance pas tout seul 😞
                                /etc/init.d$ cd /etc/init.d
                                /etc/init.d$ ./S97LCDInfoText status
                                ./S97LCDInfoText [NOT RUNNING]
                                /etc/init.d$ ./S97LCDInfoText start
                                Starting script /recalbox/scripts/recalbox_clcd.py ...
                                ./S97LCDInfoText [STARTED]

                                Tips RecalBox > https://lc.cx/xAcs

                                1 Reply Last reply Reply Quote 0
                                • tong-man
                                  tong-man last edited by tong-man

                                  @Substring Oups voici le script en question :

                                  https://github.com/Choum28/Recalbox-Clcd/blob/master/S97LCDInfoText

                                  est ce que le fait qu'il y ait des majuscules dans som nom poserait un soucis ? toutes les autres scripts présent dans le dossier étant en minuscule...

                                  Tips RecalBox > https://lc.cx/xAcs

                                  1 Reply Last reply Reply Quote 0
                                  • tong-man
                                    tong-man last edited by tong-man

                                    Au bout de 2h d'essai,je sèche !

                                    @Substring qu'entends tu par :
                                    "S'il ne se lance pas, peut etre que certains chemins sont en relatif et non en absolu" ?
                                    Il me semble que dans le script, les chemins sont bien en absolus :
                                    RUN="/recalbox/scripts/recalbox_clcd.py"
                                    RUNSTOP="/recalbox/scripts/recalbox_clcd_off.py"

                                    Je n'ai pas non plus compris ceci : "Le mieux ca reste de mettre ca dans ~/custom.sh pour moultes raisons" comment fait on ?

                                    Merci 😛

                                    Tips RecalBox > https://lc.cx/xAcs

                                    Substring 1 Reply Last reply Reply Quote 0
                                    • Substring
                                      Substring @tong-man last edited by

                                      @tong-man tu as essayé de le lancer manuellement pour voir ? /etc/init.d/S97LCDInfoText start

                                      Si ca plante, essaie avec bash -x /etc/init.d/S97LCDInfoText start et tu me mets le résultat ici en l'encadrant de triples back quotes stp

                                      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é

                                      tong-man 1 Reply Last reply Reply Quote 0
                                      • tong-man
                                        tong-man @Substring last edited by tong-man

                                        @substring Oui ca fonctionne quand je le lance comme çà :

                                        Starting script /recalbox/scripts/recalbox_clcd.py ...
                                        /etc/init.d/S97LCDInfoText [STARTED]
                                        

                                        idem comme ceci :

                                        + RUN=/recalbox/scripts/recalbox_clcd.py
                                        + RUNSTOP=/recalbox/scripts/recalbox_clcd_off.py
                                        ++ ps -eo pid,args
                                        ++ grep -v grep
                                        ++ awk '{print $1}'
                                        ++ grep '/usr/bin/python ../../recalbox/scripts/recalbox_clcd.py'
                                        + BTD_PID=
                                        + case "$1" in
                                        + echo -e 'Starting script /recalbox/scripts/recalbox_clcd.py ...'
                                        Starting script /recalbox/scripts/recalbox_clcd.py ...
                                        + '[' -z '' ']'
                                        + '[' 0 -eq 0 ']'
                                        + echo -e '/etc/init.d/S97LCDInfoText [STARTED]'
                                        /etc/init.d/S97LCDInfoText [STARTED]
                                        + exit 0
                                        + nice -n 19 /recalbox/scripts/recalbox_clcd.py
                                        #
                                        

                                        Par quand je reboote ou stop/start le rpi, le script ne se lance pas auto 🙂

                                        Tips RecalBox > https://lc.cx/xAcs

                                        tong-man 1 Reply Last reply Reply Quote 0
                                        • tong-man
                                          tong-man @tong-man last edited by

                                          précision, une fois le script lancée en "manuel", lorsque je redémarre ou éteins recalbox, le script s'arrête correctement car l'afficheur s'éteint...

                                          Tips RecalBox > https://lc.cx/xAcs

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

                                            Salut,

                                            Ce problème ne me dit rien, je n'ai pas eu de soucis particulier lorsque j'ai réinstallé mon pi3 sur la 4.1 stable.

                                            Par contre je n'ai jamais testé le script sur une version A02 (pas trouvé d'afficheur avec cet rom).
                                            Le fichier lang doit bien aller dans le dossier scripts.

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

                                            Want to support us ?

                                            91
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com