Skip to content

feat(installeur): étape Boutons — le cabinet se mappe pendant l installation - #283

Merged
NLygitadm merged 1 commit into
mainfrom
feat/installeur-boutons
Sep 9, 2026
Merged

NLygitadm merged 1 commit into
mainfrom
feat/installeur-boutons

Conversation

@NLygitadm

@NLygitadm NLygitadm commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Patrick, 09/09/2026 :

Et voila, premier démarrage effectué. Ensuite j'arrive sur la page principale et… ben je suis perdu ! Aucun bouton ne réagit.

Puis, quelques heures plus tard :

Le tire-bille réagit bien dans l'interface map commander.

Le matériel allait. Il manquait le moment de le déclarer — et il fallait deviner qu'il existait une page pour ça.

Or le cabinet est branché pendant l'installation. C'est là qu'il faut appuyer sur ses boutons.

Ce que l'étape fait

Sept actions essentielles d'abord — flips gauche et droit, Start, crédit, plunger, lockbar, sortie — le reste replié derrière « Voir toutes les actions ». Chaque ligne : un bouton Appuyer, la liaison reconnue s'affiche, une croix pour effacer.

Flipper gauche    LSHIFT              [Appuyer] [✕]
Flipper droit     RSHIFT              [Appuyer] [✕]
Start             DudesCab bouton 3   [Appuyer] [✕]
Plunger           —                   [Appuyer]

Elle est facultative, et elle le dit. Sans elle, le clavier reste et Map Commander fera le travail plus tard — c'était le seul chemin jusqu'ici.

Rien n'est réinventé

Le moteur est celui de Map Commander, pincabos_vpx_input, que l'assistant importait déjà pour lister les cartes de boutons. Mêmes actions, mêmes jetons de liaison, même écriture — pas de seconde liste qui divergerait avec le temps.

detect_once() est du pur stdlib (os, select, struct, ioctl) : il tourne sur le média sans rien ajouter.

L'écriture n'a pas lieu depuis le chroot

Ni les périphériques ni les chemins n'y sont ceux du cabinet installé. L'installateur pose le mappage et un drapeau ; pincabos-inputs-installer.service le rejoue au premier démarrage et conserve le drapeau tant que l'écriture échoue — le cabinet retentera plutôt que de perdre ce que l'utilisateur a saisi.

C'est exactement la leçon du ZeDMD appliqué dans le chroot, que Flo a remontée le même soir.

Détails

  • Les cinq langues suivent (12 clés).
  • L'égérie prend la pose 09, penchée sur la bille — test_egerie_sur_chaque_page exigeait une pose distincte par page, et il a eu raison de me le rappeler.
  • Le délai de capture est borné (DELAI_MAX) : une attente sans fin figerait l'assistant.

Tests

test_installeur_boutons.py, 18 tests : les actions viennent bien du moteur commun, l'essentiel ouvre la liste, un mappage vide reste valide (l'étape est facultative), une action inconnue est refusée, rien n'est écrit depuis le chroot, l'unité de rejeu est activée et le drapeau survit à un échec, et les cinq langues disent que l'étape peut être passée.

test_installer_network a correctement échoué à l'insertion de l'étape — il épingle l'ordre des étapes de l'installateur. Mis à jour.

752 tests.

Suite

Lot 2, comme convenu : les rôles sur les sorties adressables (backboard, sous-caisse, côtés, fronton) avec leurs réglages, puis le catalogue DOF complet.

🤖 Generated with Claude Code

…llation

Patrick, 09/09/2026 : arrivé sur le frontend après installation, aucun
bouton ne répondait et rien ne disait quoi faire. Son tire-bille marchait
parfaitement — dès qu'il a trouvé Map Commander. Le matériel allait ; il
manquait le moment de le déclarer.

Le cabinet est branché PENDANT l'installation. C'est là qu'il faut appuyer
sur ses boutons.

L'étape réutilise le moteur de Map Commander tel quel (pincabos_vpx_input,
déjà importé par l'assistant pour lister les cartes) : mêmes actions,
mêmes jetons de liaison, même écriture. Pas de seconde liste qui
divergerait. detect_once() est du pur stdlib — os, select, struct — donc
il tourne sans rien ajouter au média.

Sept actions essentielles d'abord (flips, Start, crédit, plunger, lockbar,
sortie), le reste replié. Chaque ligne : « Appuyer », la liaison reconnue
s'affiche, une croix pour effacer.

L'étape est FACULTATIVE et le dit. Sans elle, le clavier reste, et Map
Commander fera le travail plus tard — c'était le seul chemin jusqu'ici.

L'écriture n'a PAS lieu depuis le chroot : ni les périphériques ni les
chemins n'y sont ceux du cabinet installé. L'installateur pose le mappage
et un drapeau ; pincabos-inputs-installer.service le rejoue au premier
démarrage et CONSERVE le drapeau tant que l'écriture échoue. C'est la
leçon du ZeDMD appliqué dans le chroot, remontée par Flo le même soir.

Les cinq langues suivent. L'égérie prend la pose 09, penchée sur la bille.

752 tests.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@NLygitadm
NLygitadm merged commit 62c93f1 into main Sep 9, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant