RB7, Pi4 & Hyperpixel4



  • Bonjour tout le monde,
    Après une année d'absence et quelques propagandes de confinement pour le système Recalbox auprès de mes proches, je reviens m'exprimer non sans avoir au préalable enquêté. Aide-toi et le ciel t'aidera! ... après ça le forum le fera 😄

    J'ai profité d'une récente promotion sur un PI4 4Go.
    Passant pour cette occasion à RB7 (très agréable au demeurant 😉 )
    J'ai gardé ma manette BT Ipega (Appairage au poil! merci l'équipe RB 😉 )

    J'ai toujours en projet celui de la portabilité.
    Donc installation d'un écran Pimoroni Hyperpixel 4.0 (non tactile)
    Là est le... "problème"!

    Je me suis arrété sur un "vieux" poste du forum par là! et dans lequel j'étais intervenu en des temps reculés et sous une autre release de RB.
    Et suivi le tutoriel Ecran 4.0" HyperPixel qui y faisait référence.
    J'ai cherché et trouvé un support anglophone ICI et me suis servi de son "hyperpixel4.dtbo" pour info.

    J'ai procédé comme suit:

    • copié le fichier hyperpixel4.dtbo dans /RECALBOX/overlays/
    • ajouté la configuration au fichier config.txt
    # Paramètres de l'écran LCD HyperPixel
    dtoverlay=hyperpixel4
    overscan_left=0
    overscan_right=0
    overscan_top=0
    overscan_bottom=0
    framebuffer_width=800
    framebuffer_height=480
    enable_dpi_lcd=1
    display_default_lcd=1
    dpi_group=2
    dpi_mode=87
    dpi_output_format=0x7f216
    display_rotate=3
    hdmi_timings=480 0 10 16 59 800 0 15 113 15 0 0 0 60 0 32000000 6
    

    Ainsi que

    dtparam=i2c_arm=off
    dtparam=spi=off
    

    Et c'est à partir de là que ça coince:

    • copier hyperpixel4-init situé dans le répertoire /dist vers /usr/bin/ sur Recalbox
      Où est ce répertoire "/dist" (ce fichier "hyperpixel4-init") et le "/usr/bin/" sur Recalbox?
    • enfin, assurez-vous d'exécuter ce programme au démarrage dans Recalbox, en ajoutant hyperpixel4-init en ligne de commande dans l'un des scripts d'init du fichier /etc/init.d
      Où se trouve le "/etc/init.d"? serait-ce dans "/userscripts"?

    Merci!


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon Bon effectivement le tuto est fait pour ceux qui maitrise un peu :).

    en fait pour avoir accès au pg d'init il faut cloner une des branches (pi4 pour toi) ou alors "switcher" de branche sur le github vers la branche pi4 : https://github.com/pimoroni/hyperpixel4/tree/pi4

    là tu verras apparaître les rep src et dist qui contiennent tout.

    Si tu as déjà le dtbo dans /boot/overlays, il suffit copier hyperpixel4-init (script python) vers /usr/bin après avoir passer en écriture la partition /

    mount -o rw,remount /
    cp hyperpixel4-init /usr/bin
    chmod 755 /usr/bin/hyperpixel4-init
    

    ensuite il faut lancer hyperpixel4-init au démarrage
    Pour ça tu peux créer le fichier S15hyperpixel suivant dans /etc/init.d :

    #!/bin/sh
    if [ -f  /usr/bin/hyperpixel4-init ]; then
        (  /usr/bin/hyperpixel4-init ) &
    fi
    

    il faut le rendre exécutable , j'allais oublier

    chmod 755 /etc/init.d/S15hyperpixel
    

    Normalement au reboot ça devrait marcher



  • @ian57 Ohoh! Un grand merci Ian 😄 Je m'y collerai prochainement 🙂



  • Bonjour @ian57

    J'ai procédé comme suit en fonction de mes moments de disponibilité 😩 :

    • Refait une installation complète de RB7.1.1 via PC Windows (Raspberry Pi imager);
    • Copié le fichier hyperpixel4.dtbo dans /RECALBOX/overlays/ (Sur PC);
    • Sans clef usb (juste la carte micro SD), Configuré réseau et manette (sur écran TV);
    • ajouté la configuration au fichier config.txt (Sur PC):
    # Paramètres de l'écran LCD HyperPixel
    dtoverlay=hyperpixel4
    overscan_left=0
    overscan_right=0
    overscan_top=0
    overscan_bottom=0
    framebuffer_width=800
    framebuffer_height=480
    enable_dpi_lcd=1
    display_default_lcd=1
    dpi_group=2
    dpi_mode=87
    dpi_output_format=0x7f216
    display_rotate=3
    hdmi_timings=480 0 10 16 59 800 0 15 113 15 0 0 0 60 0 32000000 6
    
    dtparam=i2c_arm=off
    dtparam=spi=off
    

    Suivant ce lien: https://github.com/pimoroni/hyperpixel4/tree/pi4
    J'ai commencé via Putty en SSH (sur PC), le chapitre "Installing / Uninstalling" avec la commande:

    git clone https://github.com/pimoroni/hyperpixel4 -b pi4
    

    Message:

    -bash: git: command not found
    

    Certaines fonctions ne seraient-elles pas limitées sous RecaBox?
    Merci pour le support 😉


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon hello,

    tu ne peux pas installer comme sur une debian. RB est un firmware et possède juste les fonctionnalités utiles.

    il faut récupérer l'archive zip du projet pimoroni, la décompresser depuis un autre ordi et copier les fichiers via ssh ou autre sur ta recalbox



  • @ian57
    😨 Ah... c'est si tragiquement que se solderait mon si beau projet? Je m'en croyais si proche... et dans l'esprit ça semble si simple à réaliser. Je bute sur mes lacunes... mince j'étais si proche!
    Vu l'intérêt de la communauté à l'égard de mon sujet j'imagine que rares sont ceux qui se lancent sur cet équipement. Alors une archive du projet... 😕 c'est pas gagné. A moins que @glook ne m'assiste.
    Me faudrait-il prier le petit Zézu?


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon hyperpixel4-pi4.zip voici l'archive du code hyperpixel.

    Il faut décompresser et copier les fichiers utiles au bon endroits sur ta RB.



  • @ian57 Ah ok cette archive! Sur le Github Pimoroni sur lequel je couche depuis quelques jours x)
    Je croyais que tu faisais référence à une archive de microSD d'un même projet d'un autre bidouilleur équipé de cet écran.
    Bref... Je ne t'avais pas compris désolé!
    Je bosse le sujet mais j'appréhende la limite des commandes offertes par RB (ce n'est pas un reproche) et surtout des miennes 😛

    Merci 😉


  • Staff
    Global moderator
    Team

    bonjour
    quand on se lance dans un projet il faut toujours se renseigner sur les possibilités que le système choisi ait à offrir.....



  • Merci @acris 🙂
    J'avais déjà réalisé une version portable avec un écran Waveshare de moindre qualité (voir archives RB vos réalisations je crois).
    Concernant le sujet Pimoroni hyperpixel, il était théoriquement faisable et j'étais confiant.
    Par la suite j'ai vu celui développé par Glook... qui m'a conforté dans mon "espoir" de ne pas monopoliser l'écran TV famillial.

    A ne rien tenter on avance pas.
    A te lire, la suite te procurera certainement un profond plaisir...
    il me faut probablement un poste Linux (sous Raspbian non?) et quelques compétences d'environnement qui vont avec... qui me font tout deux défaut.

    Je reconnais que sans aide mon sujet Pimoroni est voué à un certain échec.
    Ca force l'humilité soit mais c'est constructif également.
    Au pire je retourne sur mon ancien écran (perdu au fond d'un carton) et me retrouve l'heureux propriétaire d'une liscence "Parangon Linux File Systems for Windows" et d'un hyperpixel 4... à revendre.


  • Staff
    Global moderator
    Team

    Pour compiler certains pilotes ou autre, avoir une microsd avec rapbian dessus pour être une bonne idée.
    tu peux compiler pour la board que tu veux, et ensuite récupérer et transférer les executables ou autre fichiers sur recalbox.
    mais attention recalbox est un système embarqué buildroot minimaliste comme ian57 te l'a dit tu peux utiliser n'importe quoi.


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon bah ce serait dommage de revendre tout ça :)... du moins l'écran.
    Nous n'avons pas eu cet écran sous la main et je ne peux pas acheter tous les écran du monde 😄 pour en faire le support. Quand on nous fournit le matériel on essaie d'en faire un support "out of the box" ou au pire un Howto. (par exemple GpiCase, OGA, dmg piBoy, ecran waveshare etc...)

    Il faut bien se rendre compte que l'usage de recalbox ( ou tout autre système de retrogaming basé firmware) en dehors des manettes USB/BT, ecran tv plate (pas cathodique) et des matos supportés nativement est loin d'être simple car il faut des compétences en systèmes unix et aussi en matériel.

    Après on peut t'aider en te donnant les pistes, les commandes, mais il faut un minimum de compétences en système que tu peux acquérir avec un peu d'effort.



  • @ian57 @acris
    J'ai toutefois encore mon pi 3. Version "nintendo switch" waveshare à changement d'écran par switch hdmi & reboot (l'interrupteur sous l'écranétait pratique pour cettefonctionnalité). Oui je l'ai fait! Le système monopolisait la télé donc j'ai démonté. Je destinais probablement le Pi3, après montage pi4 hyperpixel, à recyclage, don ou association malinux tv.

    Vous l'avez entrevu j'ai un peu caché la vérité et ai potentiellement le matériel Raspbian pour "développer" mon évolution Pi4 Hyperpixel. Outre ce matériel là je m'engage sur l'inconnu côté connaissances software et lignes de commande.
    Mes seuls pas Unix/Linux était Dassault Catia V4 sur station Sunn. Oui je suis vieux 😛 depuis... je n'ai plus touché à cet environnement depuis... 20 ans Oo.

    Et bien loin de moi l'envie de vous faire des reproches sur la "limitation" de vos développements en fonction du hardware que vous récupérez. Je ne demande pas du clef en main 😉 je voulais réaliser une évolution portable. J'ai bien vu la votre en quelques mois et l'effort porté sur le BT 3 (je crois) sur manette ipega bénéficier au plus grand nombre. A présent appairage sans effort. Sans parler des grosses évolutions que j'ai remarqué de RB4, à RB6 et RB7 🙂
    Voilà voilà prochaine étape : Raspbian... sur l'autre microSD et bien sur pi4 et non pi3. Ce serait idiot de mal démarrer 😄



  • @ian57 Bonjour bonjour 🙂
    Je suis en bonne voie...

    Etat d'avancement:

    • "Raspberry pi os" le bien nommé, installé;
    • Ecran Hyperpixel 4 installé (et réorienté).
      Rien de complexe en soi... pour le moment et ca donne envie d'y voir touner RB 😉

    Par mesure de sécurité j'ai copié de la carte micro sd "Raspi Os" tous les répertoires des partitions /rootfs et /boot
    Ca fait du monde certes, ça passera comme hérésie aux yeux des afficionados... tant pis!
    Je supprimerai par la suite, après satisfaction du projet 🙂

    J'ai l'impression qu'il a eu du changement d'arborescence sous RB7.
    J'avais comparé avant formatage de ma microSD RB6 du Pi3 et certains repertoires ne sont plus sur RB7.

    Je me retrouve comme suit (sous windows avec "Linux File Systems for Windows by Paragon Software" en support)
    G:\OVERLAY (EXT4 1MB)

    • .config
    • \bootvideos
    • \dropbear
    • \lost+found
    • \lower
    • \upper
    • \work
    • .safeboot

    K:\RECALBOX (fat32 3GB)

    • \boot
    • \overlays
    • \update
    • un tas de fichiers dont "config.txt" etc...

    Un disk SHARE ExFat 25GB) invisible sous Windows mais visible avec DiskGenius qui doit etre ce que sera la clef USB une fois déterminee comme stockage non? (repertoires "bios" "bootvideos" "cheats" etc...)

    J'ai telechargé le zip contenant src et dist
    Le "hyperpixel4.dtbo" est dans "K:\RECALBOX\overlays"
    Mes questions sont sur la suite.

    • Où copier hyperpixel4-init alors que /usr/bin n'est ni sur G: ni sur K:
      Faut'il que je cré ces répertoires?
    mount -o rw,remount /
    cp hyperpixel4-init /usr/bin
    chmod 755 /usr/bin/hyperpixel4-init
    
    • De même pour lancer hyperpixel4-init au démarrage et créer le fichier S15hyperpixel dans /etc/init.d
      Le seul /etc existant est sous G:\upper

    Mon problème est que je ne me repère pas dans l'arborescence.
    Un coup de main siouplé ?
    Merci.


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon hello, les commandes que je t'ai donnée sont faites pour être directement sur une RB en train de tourner via une connexion ssh. tu auras les reps accessibles car tous les montages seront faits. Depuis la 7.0 on est passé à squashfs firmware et cela occasionne beaucoup de changement au niveau du système de fichier (https://www.brunsware.de/blog/portage-tree-squashfs-overlayfs)

    mount -o rw,remount /
    cp hyperpixel4-init /usr/bin
    chmod 755 /usr/bin/hyperpixel4-init
    


  • Merci pour ta réactivité et tes réponses.
    Je doute toutefois de l'effet de la démarche.
    Il suffirait de passer par une installation de Raspbian et de la gestion de l'écran par celui-ci, puis réinstallation de RB, de la modification du fichier "config", de la copie "manuelle" du dtbo, et des lignes ci-dessous en ssh pour que le sujet devienne... souvenirs.

    @ian57 said in RB7, Pi4 & Hyperpixel4:

    Si tu as déjà le dtbo dans /boot/overlays, il suffit copier hyperpixel4-init (script python) vers /usr/bin après avoir passer en écriture la partition /

    mount -o rw,remount /
    cp hyperpixel4-init /usr/bin
    chmod 755 /usr/bin/hyperpixel4-init
    

    ensuite il faut lancer hyperpixel4-init au démarrage
    Pour ça tu peux créer le fichier S15hyperpixel suivant dans /etc/init.d :

    #!/bin/sh
    if [ -f  /usr/bin/hyperpixel4-init ]; then
        (  /usr/bin/hyperpixel4-init ) &
    fi
    

    il faut le rendre exécutable , j'allais oublier

    chmod 755 /etc/init.d/S15hyperpixel
    

    Normalement au reboot ça devrait marcher

    Si proche de la concrétisation, je m'y attèlerai... avec espoir 😄 et me penche actuellement sur l'impression 3D du boîtier.
    À la prochaine 😉



  • Bonjour bonjour 🙂

    @ian57 said in RB7, Pi4 & Hyperpixel4:

    @Jearon Bon effectivement le tuto est fait pour ceux qui maitrise un peu :).

    en fait pour avoir accès au pg d'init il faut cloner une des branches (pi4 pour toi) ou alors "switcher" de branche sur le github vers la branche pi4 : https://github.com/pimoroni/hyperpixel4/tree/pi4

    là tu verras apparaître les rep src et dist qui contiennent tout.

    Si tu as déjà le dtbo dans /boot/overlays, il suffit copier hyperpixel4-init (script python) vers /usr/bin après avoir passer en écriture la partition /

    mount -o rw,remount /
    cp hyperpixel4-init /usr/bin
    chmod 755 /usr/bin/hyperpixel4-init
    

    ensuite il faut lancer hyperpixel4-init au démarrage
    Pour ça tu peux créer le fichier S15hyperpixel suivant dans /etc/init.d :

    #!/bin/sh
    if [ -f  /usr/bin/hyperpixel4-init ]; then
        (  /usr/bin/hyperpixel4-init ) &
    fi
    

    il faut le rendre exécutable , j'allais oublier

    chmod 755 /etc/init.d/S15hyperpixel
    

    Normalement au reboot ça devrait marcher

    Compliqué cette histoire... a moins que ce ne soit le bonhomme qui souffre d'un certain handicape.
    Je pense que ce récent passage à RB7 par "squashfs firmware" (Auquel je ne comprends pas grand chose 😅) m'aura occasionné quelques bouleversements logiques... enfin dans la logique de l'arborescence comme je pouvais la comprendre avant squashfs.

    Je m'y attendais, du fait de l'inexistence des répertoires interrogés, la réponse à ces commandes se soldent de la facon suivante:

    # mount -o rw,remount /
    # cp hyperpixel4-init /usr/bin
    cp: can't stat 'hyperpixel4-init': No such file or directory
    # chmod 755 /usr/bin/hyperpixel4-init
    chmod: /usr/bin/hyperpixel4-init: No such file or directory
    

    Je désespère! J'ai essayé en créant manuellement le répertoire usr\bin, coller dans la racine le fichier "hyperpixel-init" de la partition G:\OVERLAY... puis lancer les lignes de commande une fois le RPi rééquipé de sa microSD, mais sans succès évident.

    Je me demande si je ne devrais pas downgrader mon RB pour une version... compatible Pi4 avant "squashfs firmware". D'ailleurs y en a t'il une disponible sous RB6?

    Merci.


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon Hello,

    il faut copier le fichier hyperpixel4-init dans recalbox avant d'éssayer de la copier. tu peux par exemple le faire avec winscp en te connectant sur ta recalbox via le réseau, ou alors en déposant le fichier via la voisinage réseau
    le fichier devrait être dispo dans le rep /recalbox/share/system ensuite seulement tu pourras le copier dans l'arborescence.



  • Bonjour Ian @ian57 😞
    C'est un peu honteux que je reviens à toi.... à tous!

    J'avais déjà winscp. Je l'avais utilisé entre autre pour changer le splashscreen, comme ils disent, à mes débuts RB... puis j'ai laissé au profit de vos réalisations 🙂
    J'avais oublié cet outil... foutu flemmard de Windoseux que je suis 😕

    Mon procédé:

    • Allumage Pi4
    • Lancement WinSCP
    • Utilisation de sa console: mount -o rw,remount /
    • vérification présence hyperpixel4.dtbo dans /boot/overlays (Je raffraichi "CTRL+R" si besoin)
    • vérification présence hyperpixel4-init dans /recalbox/share/system (Je raffraichi "CTRL+R" si besoin)
    • Utilisation de la console: cp hyperpixel4-init /usr/bin
    • vérification présence hyperpixel4-init dans /usr/bin (Je raffraichi "CTRL+R" si besoin)
    • copy/past du bureau windows vers Winscp /etc/init.d du fichier... récemment ... plutôt anciennement créé 😄
    • 3eme ouverture console: chmod 755 /etc/init.d/S15hyperpixel
    • Utilisation de la console: reboot && logout

    Bref après maintes tentatives (environ... une... 😞 quinzaine depuis ton dernier mail) utilisant exclusivement WIinSCP et sa console, WinSCP et un Putty seul installé en doublon.
    L'écran ne s'active pas.
    "Pire", les modifications apportées par "copier / glisser" ou ligne de commande ne restent pas après reboot et "CTRL+R" sur WinSCP. Je pense oublier quelque chose essentiel du genre "monter / demonter"... un click avant le reboot...

    Je comprends que vous avez soupé de vos habitués à low level 😕
    Désolé.


  • Staff
    Developer
    Global moderator
    Creator
    Team

    @Jearon a priori il manque un chmod!

     chmod 755 /etc/init.d/S15hyperpixel
     chmod 755 /usr/bin/hyperpixel4-init
    

    et nul part j'ai vu une copie de S15hyperpixel vers /etc/init.d

    tu vas y arriver 🙂



Want to support us ?

398
Online

81.3k
Users

22.2k
Topics

161.2k
Posts