RB7, Pi4 & Hyperpixel4
-
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. -
@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 projetJ'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
etdist
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 fichierS15hyperpixel
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. -
@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 copierhyperpixel4-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 fichierS15hyperpixel
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
etdist
qui contiennent tout.Si tu as déjà le
dtbo
dans/boot/overlays
, il suffit copierhyperpixel4-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 fichierS15hyperpixel
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.
-
@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 suisMon 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é. -
@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
-
Bonjour et meilleurs voeux à tous
@ian57
Pour bosser plus facilement voici l'état de mon recalbox/share/system:- Sont présents les fichiers hyperpixel4.dtbo, hyperpixel4-init et S15hyperpixel
vérification présence hyperpixel4.dtbo dans /boot/overlays
- OK
Sous Putty je tape avec plein d'espoir:
mount -o rw,remount /
ENTREE
cp hyperpixel4-init /usr/bin
ENTREE
chmod 755 /usr/bin/hyperpixel4-init
ENTREE
cp S15hyperpixel /etc/init.d
ENTREE
chmod 755 /etc/init.d/S15hyperpixel
ENTREE
reboot && logout
ENTREE
Et... toujours pas d'écran
En réouvrant Winscp je remarque que le répertoire /usr/bin/ n'a plus son hyperpixel4-init et le /etc/init.d/ n'a plus son S15hyperpixelJe veux bien être la risée du forum mais je voudrais surtout comprendre mon erreur!
Une explication ? -
Avant de rebooter tu es sur que les fichiers étaient présents dans les dossiers de destination ?
pourquoi faire les manipulations via SSH et pas directement en utilisant winscp ?
il te suffit de monter la partition via putty , ne pas utiliser l invite de commande de winscp. mais bien putty
et de glisser les fichiers dans les dossiers de destinations si présent sur ton pc. puis de faire un clic droit sur lesdit fichiers , propriétés et attribuer les chmod qui vont bien.Si les fichiers ne se copient toujours ou pas ou disparaisse au reboot, ta microsd est sans doute corrompu.
-
Je me suis relancé une installation sur une autre microSD histoire d'exploiter la voie d'Acris.
Sur la TV tout va bien pour le peu que j'ai vu... le temps de configurer le réseau.Modification apportées en fin de 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 dtparam=i2c_arm=off dtparam=spi=off
J'ajoute le hyperpixel4.dtbo sous windows tant que j'y suis dans le répertoire RECALBOX\overlay qui se trouve non loin du config.txt
Je mets la microSD dans le PI...
j'ajoute les fichiers hyperpixel4-init et S15hyperpixel (fait via blocnote windows) dans /recalbox/share/system via Winscp.Via Putty je copie les fichiers et leurs accorde les permissions:
mount -o rw,remount / cp hyperpixel4-init /usr/bin chmod 755 /usr/bin/hyperpixel4-init cp S15hyperpixel /etc/init.d chmod 755 /etc/init.d/S15hyperpixel
Je vérifie visuellement sous Winscp si les fichiers sont présents dans les répertoires:
/usr/bin -> hyperpixel4-init OK présent
/etc/init.d -> S15hyperpixel OK présentVia Putty
reboot && logout
Et... ... ben non écran noir
Je sens que c'est en bonne voie... Mais ce n'est pas encore ça!la commande tvservice -s renvoie
state 0x400000 [LCD], 480x800 @ 60.00Hz, progressive
J'y suis presque... une idée pour trouver la lumière?
Merci -
@Jearon alors via ssh lances l'init depuis la console pour voir si ya pas un souci avec le script python d'init :
/usr/bin/hyperpixel4-init
si pas de message d'erreur et que ça marche ça vient de mon fichier S15hyperpixel mal écrit ou mal placé
sinon on investigue plus loin
en dernier ressort j'acheterai un hyperpixel4 pour faire le support
on doit pas louper grand chose je pense -
@Jearon sinoon je viens de voir dans https://github.com/pimoroni/hyperpixel4/tree/pi4-libgpiod/dist ya carrément un binaire executable https://github.com/pimoroni/hyperpixel4/blob/pi4-libgpiod/dist/hyperpixel4-init
faudrait le tester (source ici https://github.com/pimoroni/hyperpixel4/blob/pi4-libgpiod/src/hyperpixel4-init.c)
on passe plus par python mais libgpiod... pas contre pas sur qu'elle soit dispo sur RB à voir
-
ya aussi la version i2c-fix des overlays à tester ... d'ailleurs c'est peut être cet overlay qui pose souci car je sais pas d'ou il vient
-
@ian57 @acris
Yahooooooooo! Merci, merci, merci, merci, merci, merci, merci, merci,...
L'hyperpixel4-init.c a fait mouche non sans quelques adaptations évidentes d'orthographe entre hyperpixel4-init et hyperpixel4-init.c dans S15hyperpixel.
L'orientation d'écran n'est pas au rendez-vous par contre. je suis en vertical.
Je vais approfondir ce dernier point -
@Jearon ERRATUM...
apres changement du rotate dans le fichier config... écran noir -
rotate nest pas en charge par raspberry pi 4
@Jearon
c est ceci que tu as appliqué ?To rotate your HyperPixel4 you must edit /boot/config. txt and change the following lines: Change dtoverlay=hyperpixel4 to dtoverlay=hyperpixel4:rotate.$
$$Rotation on Pi 4
HyperPixel4 is a portait display, so on first boot it will start in portrait mode with the USB ports at the top.On Pi 4 we can take advantage of the rotation available in Display Configuration, and provide you with a command for setting both display and touch rotation together.
To rotate HyperPixel4 on a Pi 4 use the hyperpixel4-rotate command.
Landscape mode, HDMI/power ports on the bottom:
hyperpixel4-rotate left
Landscape mode, HDMI/power ports on the top:hyperpixel4-rotate right
Portrait mode, USB ports on the top:hyperpixel4-rotate normal
Portrait mode, USB ports on the bottom:hyperpixel4-rotate inverted
If you're running this command over SSH you should prefix it with DISPLAY=:0.0180 Degree Rotation on Pi 3
Note: You must build the latest dtoverlay file to enable rotation support:Go into src
run make to build a new hyperpixel4.dtbo with rotation support
copy the overlay with sudo cp hyperpixel4.dtbo /boot/overlays/
To rotate your HyperPixel4 you must edit /boot/config.txt and change the following lines:Change dtoverlay=hyperpixel4 to dtoverlay=hyperpixel4:rotate
Change display_rotate=3 to display_rotate=1
This will rotate both the display and the touchscreen input to match.If you're using a non-touchscreen HyperPixel4 you need only change display_rotate.
https://github.com/pimoroni/hyperpixel4#:~:text=To rotate your HyperPixel4 you,hyperpixel4 to dtoverlay%3Dhyperpixel4%3Arotate -
@acris Je garde ton post en mémoire car selon moi ce n'est pas cette modification qui pose problème.
Je retrouve mes soucis de non enregistrement de mes fichiers...
Je suis certains que la démarche est la bonne mais un truc ne va pas.Et c'est bien le binaire executable qui fonction(nait) pas le hyperpixel4-init.c