Skip to content

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Android 17 sur piBrick Pocket CM5

Correctif cumulatif pour utiliser l’écran AMOLED, les deux sorties HDMI, la luminosité, le tactile et l’autorotation du piBrick avec KonstaKANG AOSP 17 pour Raspberry Pi 5.

Ce projet ne contient pas Android. Installez d’abord l’image KonstaKANG AOSP 17 du 2 juillet 2026, puis appliquez ce correctif.

Origine du projet et crédits

Ce portage repose sur plusieurs travaux successifs. Le rôle de chacun est présenté dans l’ordre chronologique :

Étape Auteur ou projet Contribution
1. Matériel amarullz / piBrick Conception du piBrick Pocket CM5, fichiers matériels et documentation de référence
2. Pilotes Linux lshaf / pibrick-driver Dépôt de pilotes de référence pour l’AMOLED, le tactile et les périphériques du piBrick
3. Base Android Raspberry Pi KonstaKANG et Raspberry Vanilla AOSP 17 pour Raspberry Pi 5, arborescence appareil et noyau Android de base
4. Portage piBrick AOSP 17 Sconioo Adaptation, compilation, intégration Android, tests matériels, installateurs et releases cumulatives V1 à V8

Le travail réalisé dans ce dépôt comprend notamment l’intégration AMOLED à 90 Hz, la correction des deux sorties HDMI, la luminosité 0–100 %, les boutons en 20 pas, le tactile 5 points, le MMA8451Q et l’autorotation, ainsi que les scripts de sauvegarde et d’installation en mode rpiboot.

Les licences et mentions présentes dans les projets et pilotes d’origine restent applicables. Ce dépôt ne prétend pas remplacer leurs auteurs.

Version recommandée : V8

La V8 est la dernière version testée sur un vrai piBrick Pocket CM5. Elle conserve toutes les fonctions des V1 à V7, la batterie V1 lissée et la sortie audio interne, puis ajoute le microphone C-Media entièrement fonctionnel.

Fonction État validé
AMOLED 1080×1240 à 90 Hz
HDMI HDMI-1 et HDMI-2, simultanément avec l’AMOLED
Luminosité AMOLED Réglable de 0 à 100 %
Boutons physiques et +, progression en 20 pas
Tactile Hynitron CST3530, 5 points
Autorotation MMA8451Q, quatre orientations
Sortie audio Haut-parleurs internes C-Media, route Android dac
Microphone C-Media, gain 32/35, AGC activé et réglage automatique
Batterie Jauge V1 lissée conservée
SELinux Service microphone testé en mode Enforcing sans refus AVC ALSA
Installation Une commande ./install.sh, sauvegarde et rollback

Noyau validé : Linux 6.18.26-g9944b3831291-v8

SHA-256 de l’archive :

6a06f64128413de84ddb0f03fb2853be447fcb50057c45f2ed80c5797e09285b

Notes de la release V8 · Sources du noyau V6/V8

Avant de commencer

Vous avez besoin de :

  • un piBrick Pocket CM5 avec l’image AOSP 17 du 2 juillet 2026 ;
  • un ordinateur Linux avec sudo, lsblk, mount, sha256sum et tar ;
  • un câble USB de données pour le mode rpiboot ;
  • l’archive V8 téléchargée ci-dessus.

Important :

  • ne lancez pas install.sh avec sudo ; le script le demandera uniquement lorsqu’il doit accéder aux partitions Android ;
  • ne débranchez pas le piBrick pendant l’installation ;
  • vérifiez que le disque affiché est bien Raspberry Pi multi-function USB device avant de taper INSTALLER ;
  • ce paquet est prévu pour le build indiqué, pas pour une autre version AOSP.

Installation pas à pas

1. Installer Android

Téléchargez le build AOSP 17 du 2 juillet 2026 sur la page KonstaKANG et installez-le sur le piBrick. Démarrez Android une première fois pour vérifier qu’il fonctionne, puis éteignez complètement le piBrick.

2. Décompresser la V8

Dans un terminal Linux :

DOWNLOAD_DIR="$(xdg-user-dir DOWNLOAD 2>/dev/null || pwd)"
cd "$DOWNLOAD_DIR"
rm -rf pibrick-aosp17-v8
mkdir -p pibrick-aosp17-v8
tar -xzf pibrick-aosp17-v8-90hz-hdmi-brightness-touch-autorotation-audio-microphone-battery.tar.gz -C pibrick-aosp17-v8 --strip-components=1
cd pibrick-aosp17-v8

xdg-user-dir DOWNLOAD sélectionne automatiquement le dossier de téléchargement du compte, qu’il s’appelle Téléchargements, Downloads ou autrement. L’archive peut aussi être décompressée ailleurs : l’installateur ne dépend pas de son emplacement.

Optionnel, mais recommandé : contrôler l’archive téléchargée.

DOWNLOAD_DIR="$(xdg-user-dir DOWNLOAD 2>/dev/null || pwd)"
cd "$DOWNLOAD_DIR"
sha256sum pibrick-aosp17-v8-90hz-hdmi-brightness-touch-autorotation-audio-microphone-battery.tar.gz

Le résultat doit être :

6a06f64128413de84ddb0f03fb2853be447fcb50057c45f2ed80c5797e09285b

3. Passer le piBrick en mode rpiboot

Éteignez le piBrick, connectez-le à l’ordinateur avec le câble USB de données, puis démarrez-le en mode rpiboot. Le stockage doit apparaître comme un disque USB nommé Raspberry Pi multi-function USB device.

Pour vérifier :

lsblk -dnpo NAME,MODEL,TRAN | grep -i "Raspberry Pi"

4. Lancer l’installateur

Depuis le dossier décompressé :

chmod +x install.sh
./install.sh

Ne mettez pas sudo devant ./install.sh.

Le script affiche le disque, les partitions boot, vendor et système, puis demande :

Tapez INSTALLER pour continuer: INSTALLER

Relisez la cible affichée avant de taper INSTALLER. Le script sauvegarde les fichiers actuels, installe les correctifs et contrôle toutes les copies.

5. Redémarrer normalement

Lorsque INSTALLATION TERMINÉE apparaît, quittez le mode rpiboot, débranchez le câble utilisé pour ce mode et démarrez normalement.

Vérifiez ensuite :

  • AMOLED et tactile ;
  • rotation gauche, droite, portrait et portrait inversé ;
  • boutons de luminosité et + ;
  • HDMI-1 puis HDMI-2.

Comportements normaux

  • Le réglage Android contrôle la luminosité de l’AMOLED intégré. La luminosité d’un écran HDMI se règle sur l’écran HDMI lui-même.
  • En mode miroir, l’image HDMI suit l’orientation actuelle du piBrick. Une rotation en portrait est donc également visible sur HDMI.
  • La V8 conserve la jauge de batterie V1 lissée dans le paquet cumulatif.

Dépannage rapide

ERREUR: un unique piBrick rpiboot est requis

Le piBrick n’est pas détecté ou plusieurs appareils similaires sont présents. Vérifiez le câble USB de données et relancez :

lsblk -dnpo NAME,MODEL,TRAN | grep -i "Raspberry Pi"

Permission denied sur install.sh

chmod +x install.sh
./install.sh

L’installation s’arrête avant les copies

L’installateur refuse une image Android, un fichier ou une partition qui ne correspond pas à la version attendue. N’essayez pas de contourner ce contrôle : utilisez le build AOSP 17 du 2 juillet 2026.

Échec pendant l’installation

Le script tente automatiquement de restaurer la sauvegarde créée avant les modifications. Conservez le chemin de sauvegarde affiché dans le terminal.

Versions disponibles

Chaque release reste téléchargeable pour faciliter les tests et le retour à une étape précédente.

Version Fonctions principales Release
V8 — recommandée AMOLED 90 Hz, HDMI-1/2, luminosité 0–100 %, boutons 20 pas, tactile 5 points, autorotation, sortie audio C-Media, microphone, batterie V1 lissée V8
V7 AMOLED 90 Hz, HDMI-1/2, luminosité 0–100 %, boutons 20 pas, tactile 5 points, autorotation, sortie audio interne C-Media, route dac V7
V6 AMOLED 90 Hz, HDMI-1/2, luminosité 0–100 %, boutons 20 pas, tactile 5 points, autorotation V6
V5 AMOLED 90 Hz, HDMI-1/2, luminosité 0–100 %, boutons 20 pas, tactile 5 points V5
V4 AMOLED 90 Hz, HDMI-1/2, luminosité 0–100 %, boutons 20 pas V4
V3 AMOLED 90 Hz, HDMI-1/2 et configuration Android V3 V3
V2 AMOLED 60 Hz, HDMI-1/2 et configuration Android V2 V2
V1 AMOLED 60 Hz ; HDMI-1/2 sans signal V1

Afficher toutes les releases

Sauvegarde et retour arrière

Avant toute modification, l’installateur crée une sauvegarde dans :

$HOME/pibrick-aosp17-backups/

Le chemin exact apparaît avant la confirmation. Ne supprimez pas ce dossier tant que la nouvelle version n’a pas été testée.

Chaque archive V1 à V8 applique un état complet. Il est donc possible de passer directement à une version antérieure, puis de revenir à la V6, sans réinstaller Android. Le cycle complet V6 → V1 → V6 a été validé sur le piBrick réel. Utilisez simplement l’installateur de la release souhaitée en mode rpiboot.

Sources et reproductibilité

Chaque archive de release contient :

  • les binaires précompilés et testés ;
  • install.sh ;
  • SHA256SUMS ;
  • les patchs sources utilisés pour cette version ;
  • source/SOURCE.txt avec les commits et dépôts de référence.

Branches noyau publiques et validées

Étape noyau Branche Versions concernées
AMOLED 60 Hz pibrick/display-v1 V1 et V2
AMOLED 90 Hz pibrick/display-v2-90hz V3 et V4 ; base des versions suivantes
Tactile pibrick/touch-v1 V5
Autorotation pibrick/autorotation-driver-v1 V6

Construction cumulative des versions

  • V1 introduit l’affichage AMOLED à 60 Hz.
  • V2 conserve ce noyau et ajoute la correction drm_hwcomposer pour les deux sorties HDMI.
  • V3 introduit le noyau AMOLED à 90 Hz et conserve la correction HDMI.
  • V4 ajoute le HAL Light, l’overlay de luminosité et la modification du framework Android pour une plage 0–100 % et des boutons en 20 pas.
  • V5 ajoute le pilote tactile Hynitron CST3530 à la base V4.
  • V6 ajoute le MMA8451Q et la correction noyau nécessaire aux quatre orientations automatiques.
  • V7 ajoute le correctif framework UsbAlsaManager pour la carte C-Media interne ainsi que la route audio persistante dac.
  • V8 conserve la sortie audio et la batterie V1 lissée, ajoute l’analyse initiale des nœuds ALSA dans UsbAlsaManager, reconnaît le microphone C-Media et applique automatiquement le gain 32/35 avec l’AGC depuis le domaine SELinux hal_audio_default.

Les branches du tableau concernent le noyau Linux. Les modifications de drm_hwcomposer, du HAL Light, des overlays et du framework Android ne font pas partie du dépôt noyau. Elles sont conservées sous forme de patchs dans le dossier source/ de chaque archive concernée.

Périmètre validé

La V8 a été validée sur un piBrick Pocket CM5 réel : installation, redémarrage, écran, tactile, autorotation, HDMI, luminosité, sortie audio, enregistrement microphone, réécoute, jauge de batterie, rollback, réinstallation et test du service microphone sous SELinux Enforcing.

La V6 a été validée sur :

  • piBrick Pocket CM5 ;
  • KonstaKANG AOSP 17 du 2 juillet 2026 ;
  • AMOLED 90 Hz, HDMI-1, HDMI-2, luminosité 0–100 %, boutons +/−, tactile et autorotation dans les quatre directions ;
  • installation successive des versions antérieures jusqu’à la V1 ;
  • retour direct de la V1 vers la V6 avec restauration de toutes les fonctions.

Chaque nouvelle étape n’est déclarée recommandée qu’après test sur le matériel réel.

About

AOSP 17 integration for piBrick Pocket CM5: AMOLED 90 Hz, dual HDMI, brightness, multitouch and autorotation

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages