Outil de service LISY pour flippers sur un ESP32-C3
Version du firmware 1.25
manuel d'utilisation
v1.25 25.10.2026
Version française de FA_Control_user_manual.html. Deutsche Fassung: FA_Control_Bedienungsanleitung.html. La numérotation des chapitres est la même dans les trois versions.
Pour l'utilisation sur le flipper. Ce manuel ne contient volontairement aucun détail technique — pour savoir comment l'appareil fonctionne à l'intérieur, consultez la Technical Reference (en anglais).
À propos de la langue : l'interface web est en anglais. Ses libellés sont cités dans ce manuel exactement tels qu'ils apparaissent à l'écran — par exemple CONNECT pour « se connecter ».
Sommaire
FA_Control est un outil de service pour le dépannage. Il reste en permanence dans le flipper et propose une page web par Wi-Fi. Depuis cette page, vous pouvez allumer des lampes une par une, actionner des bobines une par une, observer les interrupteurs, jouer des sons et écrire sur les afficheurs — sans multimètre, sans démontage, juste avec un téléphone à la main.
L'essentiel : tant que vous ne vous connectez pas explicitement, le flipper continue de jouer normalement. FA_Control n'intervient jamais de lui-même et ne s'annonce pas au flipper à la mise sous tension. Ce n'est que lorsque vous appuyez sur CONNECT sur l'écran d'accueil et que le jeu cède le contrôle que FA_Control prend la main. Jusque-là, ce n'est qu'un appareil qui affiche une page web. Le mode moniteur (chapitre 8) observe une partie en cours sans rien prendre en main.
Le module ESP32-C3 Super Mini sur lequel tourne FA_Control. Il s'enfiche dans le support ESP32 de la carte FA ; la carte l'alimente.
L'interrupteur DIP 1 du petit banc de quatre interrupteurs est l'interrupteur marche/arrêt.
| DIP 1 | |
|---|---|
| ON | allumé : Wi-Fi, page web, pilotage. La LED bleue clignote. |
| OFF | éteint : l'appareil dort et ne consomme pratiquement rien. |
Pour le rallumer, remettez le même interrupteur sur ON — c'est tout, l'appareil se réveille de lui-même.
Comme FA_Control reste en permanence dans le flipper, éteint est l'état normal. On l'allume pour le dépannage, puis on l'éteint de nouveau.
Si vous passez DIP 1 sur OFF pendant le fonctionnement, FA_Control rend d'abord le contrôle au jeu, puis s'endort. Le flipper reprend aussitôt la main — vous pouvez basculer l'interrupteur à tout moment sans risque, même au milieu d'une mesure.
DIP 3 et DIP 4 n'ont actuellement aucune fonction. DIP 2 ne concerne que la LED bleue (voir la section suivante) et reste normalement sur OFF.
Le rythme de clignotement indique ce qui se passe à deux mètres de distance, sans ouvrir la page web :
| Rythme | Signification |
|---|---|
| lent, une fois par seconde | allumé, mais pas (encore) connecté au flipper |
| rapide, cinq fois par seconde | connecté — FA_Control pilote le flipper en ce moment |
| très rapide, dix fois par seconde | juste après la mise sous tension, l'appareil va s'endormir (DIP 1 est sur OFF) |
| éteinte | éteint |
Si la LED reste éteinte alors que DIP 1 est sur ON, vérifiez DIP 2 : s'il est sur ON, le clignotement est volontairement désactivé. L'appareil fonctionne quand même normalement.
À la première mise sous tension, FA_Control ne connaît encore aucun réseau ; il ouvre donc le sien.
FA-Control. Il n'y a pas de mot de
passe.http://192.168.4.1
dans votre navigateur.Le réseau FA-Control a ensuite disparu — reconnectez
votre téléphone ou votre ordinateur à votre réseau domestique
habituel.
Si le réseau
FA-Controlréapparaît plus tard, FA_Control n'a pas pu se connecter : généralement une faute de frappe dans le mot de passe, un réseau renommé ou une mauvaise réception. Vous pouvez saisir à nouveau les identifiants de la même façon.
Une fois FA_Control connecté à votre réseau domestique, vous le joignez à l'adresse
http://fa-control.local
Si votre appareil ne résout pas ce nom (cela arrive sur certains appareils Android et dans certains réseaux d'entreprise), utilisez l'adresse IP à la place. Elle s'affiche dans l'en-tête de la page dès que celle-ci a été ouverte une fois — et vous la trouverez dans la liste des appareils de votre box ou de votre routeur.
En haut à droite, la page indique aussi la version installée, le mode
(STA = sur votre réseau domestique, AP = son
propre réseau) et l'adresse IP.
L'écran d'accueil est la procédure de connexion. Il montre une barre avec l'état de la connexion, trois boutons et, en dessous, le menu de tuiles.
Les tuiles 01 à 05 sont grisées et ne peuvent pas être cliquées tant qu'il n'y a pas de connexion. C'est voulu : FA_Control n'apprend qu'après la connexion combien de lampes, de bobines, d'interrupteurs, de sons et d'afficheurs votre flipper possède réellement. Avant, il n'y aurait rien à piloter.
L'écran d'accueil avant la connexion : NOT CONNECTED, les tuiles 01 à 05 grisées.
Pour se connecter :
Après CONNECT : CONTROL GRANTED, la ligne de l'appareil et le REPORTED HARDWARE d'un AtariFA avec Middle Earth.
Si cela ne fonctionne pas, la raison est indiquée en clair dans la barre :
| Message | Que faire |
|---|---|
| CONTROL DENIED - SET OPTION DIP 4 TO ON | Le flipper est là mais ne cède pas le contrôle. Sur AtariFA, l'autorisation est le DIP d'option 4 de la carte FPGA — mettez-le sur ON et appuyez de nouveau sur CONNECT. |
| CONTROL DENIED - REQUEST LINE (GPIO10) NOT SEEN | Le flipper répond, mais n'a pas remarqué la demande de prise de contrôle. Vérifiez que le connecteur entre FA_Control et la carte est bien enfiché. |
| NO ANSWER - CHECK WIRING AND POWER | Personne ne répond. Le flipper est-il allumé ? Le câble est-il bien en place ? Un firmware compatible tourne-t-il bien de l'autre côté ? |
| CONTROL DENIED | Le flipper refuse pour une autre raison. Un redémarrage du flipper aide généralement. |
L'écran d'accueil revérifie l'état en permanence. Si le flipper reprend le contrôle de lui-même, vous le voyez aussitôt et les tuiles redeviennent grises.
Le bouton RE-INITIALIZE (0x64) rétablit la connexion en cours de fonctionnement. Vous n'en avez besoin que si quelque chose semble s'être désynchronisé — par exemple quand l'affichage des lampes et la réalité ne concordent plus.
Tous les menus de pilotage sont accessibles par le menu de tuiles de l'écran d'accueil. ◀ MENU en haut à gauche vous ramène en arrière.
Une grille avec une tuile par lampe, numérotées à partir de 0. Un clic allume la lampe, le suivant l'éteint. Les lampes allumées sont remplies de couleur cuivre dans la grille.
C'est ainsi que vous trouvez une lampe défectueuse sans jouer toute la partie : cliquez-les une à une et regardez laquelle reste éteinte dans la caisse.
Le menu LAMPS, ici avec un fichier de noms en service (menu 07 · NAMES plus bas).
Une grille avec une tuile par bobine, numérotées à partir de 1 — contrairement aux lampes, aux interrupteurs et aux sons, qui commencent à 0. C'est ainsi que le protocole LISY compte les bobines et que le schéma les nomme : la tuile 1 est le pilote Q1, la tuile 20 le pilote Q20. Ce qui suit dépend du flipper ; sur AtariFA, ce sont le compteur de pièces et la bobine de blocage de la porte à monnaie.
Un clic envoie une seule impulsion — la tuile clignote brièvement. Les bobines ne sont jamais qu'impulsées, jamais alimentées en continu ; cela les protège contre la surchauffe.
Les bobines ne commencent à 1 qu'à partir de FA_Control 1.16 avec AtariFA 0.2.0. Si l'un des deux côtés est plus ancien, c'est la bobine décalée d'une position qui est actionnée — mettez les deux à jour ensemble.
En dessous, PULSE TIME contient la durée d'impulsion en MILLISECONDS. Elle s'applique à toutes les bobines à la fois. Modifiez la valeur et appuyez sur APPLY — elle est enregistrée et reste valable après la prochaine mise sous tension.
Cette durée d'impulsion est le seul réglage que FA_Control enregistre lui-même. Tout le reste vient du flipper.
Une grille avec une tuile par interrupteur. L'affichage se rafraîchit une fois par seconde ; un interrupteur actionné est rempli de vert — de la même façon qu'une lampe allumée est remplie de cuivre.
Cette page est en lecture seule. Les interrupteurs ne peuvent pas être positionnés — le protocole entre FA_Control et le flipper n'a pas de commande pour cela, car un interrupteur signale quelque chose au lieu de faire quelque chose. Pour en tester un, actionnez-le à la main sur le flipper et regardez si la tuile réagit.
Le menu SWITCHES avec les noms d'un fichier de noms.
Une grille avec une tuile par son. Un clic le joue, un autre clic l'arrête. Un seul son joue à la fois ; un nouveau remplace le précédent.
Si votre flipper n'annonce aucun son, cette grille reste vide — il ne peut alors produire aucun son.
Une ligne par afficheur, chacune avec une imitation d'afficheur à sept segments, un champ de saisie et un bouton SEND. Le libellé indique combien de chiffres compte l'afficheur.
Saisissez des chiffres et appuyez sur SEND (ou sur la touche Entrée). Le texte apparaît aligné à droite sur l'afficheur réel du flipper. Les chiffres et les espaces sont autorisés ; un espace laisse la position éteinte.
Optionnel. Les tuiles sont numérotées — ce menu permet de leur donner en plus des noms parlants, pour que la bobine 7 affiche Knocker au lieu de simplement 7.
Un fichier de noms est un petit fichier texte, un
par flipper. Dès qu'il est en service, le nom apparaît sous le numéro
sur toutes les tuiles de LAMPS, COILS,
SWITCHES et SOUND, et le survol d'une tuile
affiche le nom complet. Le numéro reste toujours le libellé
principal — c'est le numéro qui part réellement vers le
flipper.
En haut du menu, THIS MACHINE indique le
DEVICE et le GAME du flipper auquel
vous êtes connecté — par exemple AtariFA et
002 — et si le fichier correspondant est présent. Ensemble,
ils disent où le fichier doit aller : dans le dossier
AtariFA, sous le nom 002.cfg.
Lisez-le là plutôt que de le déduire — d'abord se connecter, puis
regarder.
FILES ON THIS DEVICE liste ce qui est enregistré, sous la
forme DEVICE/FICHIER. USE active un
fichier (le fichier actif est marqué ●), DELETE le
supprime. Le choix est conservé après un redémarrage.
Il y a deux façons d'ajouter un fichier :
.cfg sur votre téléphone ou votre
ordinateur et appuyez sur UPLOAD. Quand vous êtes
connecté, le champ de l'appareil est déjà rempli. Cela fonctionne aussi
dans le propre réseau FA-Control de l'appareil ; c'est donc
la méthode qui marche toujours, même dans une cave sans réseau.Comment se forment les deux parties : le dossier est
le nom du matériel annoncé par la carte, le fichier est
le numéro du jeu, sur trois chiffres avec des zéros en
tête — AtariFA et le jeu 2 donnent
AtariFA/002.cfg. Sur AtariFA, le numéro du jeu est la
position du banc DIP de choix du jeu :
| Dossier et fichier | Flipper |
|---|---|
AtariFA/000.cfg |
The Atarians |
AtariFA/001.cfg |
Time 2000 |
AtariFA/002.cfg |
Airborne Avenger |
AtariFA/003.cfg |
Middle Earth |
AtariFA/004.cfg |
Space Riders |
C'est le dossier de l'appareil qui les distingue, car les numéros de
jeu recommencent à 0 sur chaque carte — sur une GottFA1 pour Gottlieb
System 1, les fichiers s'appellent GottFA1/000.cfg et ainsi
de suite.
Les majuscules et les minuscules n'ont pas
d'importance, ni dans le dossier ni dans le nom du fichier.
atarifa/002.cfg fonctionne tout aussi bien ; si vous
envoyez un fichier qui existe déjà sous une autre graphie, il remplace
celui-ci au lieu de s'y ajouter.
Vous venez d'une version antérieure à 1.19 ? Les deux parties formaient alors un seul nom de fichier,
AtariFA_002.cfg. Ces fichiers encore présents sur l'appareil apparaissent barrés et ne peuvent plus qu'être supprimés — choisissez-en un pour UPLOAD et FA_Control découpe le nom pour vous, puis supprimez l'ancienne entrée pour libérer la place.
Aucune des deux parties ne porte un nom lisible — c'est le rôle de la
ligne [game] name= dans le fichier. FA_Control l'affiche
entre parenthèses sur l'écran d'accueil :
GAME 2 (AIRBORNE AVENGER).
Sélection automatique au CONNECT : le fichier correspondant est activé. S'il n'y a pas de fichier correspondant, la sélection est vidée et les tuiles reviennent à de simples numéros. C'est voulu — sinon, après avoir changé de jeu sur le flipper, vous continueriez à voir les noms du jeu précédent sans vous en apercevoir. Un fichier choisi à la main avec USE reste actif jusqu'au CONNECT suivant.
CONNECT ne regarde que les fichiers déjà présents sur l'appareil — il ne télécharge jamais rien de lisy.dev de lui-même, pour que la connexion reste aussi rapide. À la place : ouvrez le menu 07 · NAMES ; si le fichier attendu manque mais est publié sur lisy.dev, THIS MACHINE le signale et propose GET FROM LISY.DEV. Un clic le télécharge et le met directement en service.
Le cadre FILE FORMAT en bas du menu montre la
structure. C'est du texte brut, une ligne numéro=nom par
entrée, regroupées en sections :
AtariFA/002.cfg
[game]
name=Airborne Avenger
[coils]
1=Left Flipper
7=Knocker
[switches]
12=Left Slingshot
Les sections sont [game], [lamps],
[coils], [switches], [sounds] et
[displays]. Les numéros de bobines commencent à 1,
ceux des lampes, interrupteurs et sons à 0 — la même
numérotation que celle des tuiles. Les lignes qui commencent par
# sont des commentaires. Vous n'inscrivez que ce qui vous
intéresse ; tout le reste reste numérique. 32 Ko au maximum par
fichier.
Si la tuile 07 manque complètement, votre appareil n'a pas de zone de stockage pour les fichiers de noms. C'est le cas quand il n'a jamais été mis à jour que par le réseau : la zone doit être créée une fois par une programmation USB — voir le guide d'installation USB (en anglais), qui le fait depuis un navigateur sans aucun outil de développement. Tout le reste fonctionne exactement de la même façon sans elle.
Pour les cartes FA équipées d'un support ESP32 qui le prennent en
charge - SternFA (carte v2.00) à partir du logiciel
5.0.6. Juste après avoir lu ses interrupteurs DIP, la carte demande son
jeu à cet appareil. Si une ROM est enregistrée ici pour ce jeu, la carte
démarre dessus et n'a pas besoin de carte SD (SternFA affiche le chiffre
d'état 3 sur son écran de démarrage). Sinon, elle lit sa
carte SD comme d'habitude. Cela fonctionne sans CONNECT et sans
autorisation de prise de contrôle - mais l'appareil doit être
éveillé (DIP 1 sur ON) quand le flipper est allumé.
Les ROM sont rangées par appareil, comme les fichiers de noms :
APPAREIL/NNN, où APPAREIL est le nom annoncé par la
carte (SternFA) et NNN le numéro de jeu affiché à son
démarrage, sur trois chiffres.
Le fichier est l'emplacement de jeu exactement tel qu'il est écrit
sur la carte SD : un multiple de 512 octets, 65 536 au maximum. Un
emplacement complet de 65 536 octets porte sa somme de contrôle à la fin
et est refusé si elle ne correspond pas. Sur lisy.dev, les fichiers se
trouvent dans roms/<appareil>/ et s'appellent
012.bin ou 012_Titre.bin - seul le numéro
compte. Environ 60 jeux SternFA y tiennent.
La tuile 08 a besoin de sa propre zone de stockage, que - comme celle de la tuile 07 - seule une installation complète par USB crée (à partir du firmware 1.21). Les fichiers de noms survivent à cette installation.
Uniquement sur la carte FPGA v7 (EP4CE6 dev board v7), où le module est monté directement sur la carte FPGA, à partir du firmware 1.24. Sur toutes les autres cartes, cette tuile n'apparaît pas.
FA_Control écrit ici la flash de configuration (EPCS) du FPGA par Wi-Fi – sans USB-Blaster ni Quartus. Chaque action de ce menu maintient le FPGA en reset : le jeu redémarre, et une connexion ou un mode moniteur en cours se termine. La page demande confirmation avant. CONNECT n'est pas nécessaire.
.rbf du firmware FPGA et appuyez sur
WRITE. Laissez REVERSE BITS (.RBF)
coché pour les fichiers .rbf. Cela prend quelques secondes
; l'image est relue et comparée, puis le FPGA redémarre avec elle. Seuls
les 512 premiers ko sont écrits, les ROM de jeu enregistrées derrière
restent intactes.gottfa1_roms.bin) et gardez l'adresse
0x080000. L'image FPGA n'est jamais touchée.Si l'écriture s'interrompt – Wi-Fi perdu, page fermée –, le FPGA ne redémarre que lorsqu'une image complète se trouve dans la flash. Rien n'est cassé : écrivez simplement l'image une nouvelle fois. FA_Control lui-même continue de fonctionner et reste joignable.
Sur la carte v7, il n'y a pas de banc DIP : FA_Control est allumé tant que le flipper l'est. Attention à la hauteur de montage : le module a besoin d'environ 15 mm de distance avec la carte FPGA. Enfiché à plat, son antenne est désaccordée et le Wi-Fi décroche au bout de quelques minutes.
À partir du firmware 1.25, avec une carte qui le prend en charge — pour l'instant GottFA1_PLuS sur la carte FPGA v7.
Le mode contrôle prend le flipper en main. Le mode moniteur se contente d'observer. Le jeu continue normalement, et vous pouvez jouer pendant que la page montre ce que font les lampes, les bobines, le son, les interrupteurs et les afficheurs. C'est l'outil pour les pannes qui n'apparaissent qu'en cours de partie : une lampe qui ne s'allume jamais, une bobine jamais actionnée, un interrupteur qui n'est pas pris en compte.
Le sélecteur en haut de la page, CONTROL MODE | MONITOR MODE, choisit le mode.
Mode d'emploi :
Les noms d'un fichier de noms (07 · NAMES) apparaissent ici aussi sur les tuiles. En mode moniteur, rien ne peut être commandé — FA_Control refuse toute commande jusqu'à ce que vous vous connectiez en mode contrôle.
S'il ne démarre pas, la raison est indiquée dans la barre. START MONITOR fait un nouvel essai.
| Message | Que faire |
|---|---|
| THIS FPGA FIRMWARE HAS NO MONITOR MODE | La carte répond, mais son firmware ne connaît pas le mode moniteur. Mettez le FPGA à jour. |
| MONITOR DATA DO NOT MATCH THE REPORTED HARDWARE | FA_Control et le firmware de la carte ne vont pas ensemble. Mettez les deux à jour. |
| NO ANSWER - CHECK WIRING AND POWER | Comme au chapitre 6 : personne ne répond. |
Quand vous avez terminé, rendez le flipper. Il y a deux façons équivalentes :
Dans les deux cas, le jeu reprend aussitôt la main.
Si vous ne faites ni l'un ni l'autre — parce que le téléphone est déchargé ou que le Wi-Fi a lâché : le flipper remarque de lui-même que FA_Control ne donne plus signe de vie et reprend le contrôle au bout d'environ deux secondes. Le flipper ne reste jamais bloqué.
FA_Control récupère lui-même les nouvelles versions sur Internet.
Pour cela, l'appareil doit être connecté à votre réseau domestique — son
propre réseau FA-Control n'a pas d'accès à Internet, et le
bouton y est désactivé.
N'éteignez pas l'appareil et ne touchez pas à DIP 1 pendant la mise à jour. Une mise à jour interrompue n'est pas dangereuse — l'ancienne version est conservée et redémarre — mais la procédure recommence alors depuis le début.
Une mise à jour par le réseau remplace le firmware et rien d'autre. Parfois, cela ne suffit pas : une carte neuve n'a aucun firmware de départ, un appareil qui n'a jamais été mis à jour que par le réseau n'a pas la zone de stockage des fichiers de noms, et un appareil qui ne démarre plus ne peut plus rien récupérer lui-même.
Pour ces cas, il existe un installateur web qui écrit l'image complète par un câble USB, directement depuis Chrome ou Edge, sans rien installer sur votre ordinateur : https://lisy.dev/swrep/misc/FA_Control/flasher/FA_Control_flasher.html
Vos réglages Wi-Fi et les fichiers de noms envoyés y survivent — à une exception près : si l'appareil a encore une version antérieure à 1.18, cette version déplace la zone des fichiers de noms et celle-ci repart vide ; vous envoyez alors les fichiers une nouvelle fois. Important : DIP 1 doit être sur ON — en veille profonde, l'appareil ne se présente même pas sur l'USB et n'apparaît pas dans la fenêtre de sélection du navigateur.
La procédure complète, y compris que faire quand l'appareil n'apparaît pas dans la fenêtre du navigateur, se trouve dans le guide d'installation USB (en anglais).
Ne vous connectez pas pendant une partie. Dès que FA_Control prend le contrôle, le programme du jeu le lui cède : une partie en cours se termine, et les lampes, les bobines et les afficheurs restent là où FA_Control les met. Connectez-vous quand le flipper est au repos. Le mode moniteur fait exception : il se contente d'observer et peut tourner pendant une partie.
Actionnez les bobines avec discernement. FA_Control n'envoie que de brèves impulsions aux bobines et ne les alimente jamais en continu. Une bobine reste pourtant un électroaimant puissant : gardez les mains hors du plateau pendant l'actionnement, et n'actionnez pas la même bobine plusieurs fois de suite rapidement — elle chauffe.
Attention aux longues durées d'impulsion. La valeur PULSE TIME s'applique à toutes les bobines. Une valeur trop élevée sollicite la bobine plus que ne le prévoit le jeu normal. Ne l'augmentez que si vous savez pourquoi, et remettez-la ensuite à sa valeur.
Le flipper fonctionne sur la tension du secteur. Ce manuel ne décrit que l'utilisation de FA_Control. Travailler dans un flipper ouvert demande les précautions habituelles.