FA_Control

Outil de service LISY pour flippers sur un ESP32-C3

Version du firmware 1.25

manuel d'utilisation

ralf@lisy.dev

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

  1. Ce que fait FA_Control
  2. Mise en marche et arrêt
  3. Ce que dit la LED bleue
  4. Configurer le Wi-Fi
  5. Ouvrir la page
  6. Se connecter
  7. Les menus
  8. Mode moniteur
  9. Rendre le contrôle
  10. Mettre à jour le firmware
  11. Consignes de sécurité

1. Ce que fait FA_Control

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

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.


2. Mise en marche et arrêt

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.


3. Ce que dit la LED bleue

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.


4. Configurer le Wi-Fi

À la première mise sous tension, FA_Control ne connaît encore aucun réseau ; il ouvre donc le sien.

  1. Mettez DIP 1 sur ON et patientez un instant.
  2. Sur votre téléphone ou votre ordinateur portable, cherchez les réseaux Wi-Fi et rejoignez le réseau ouvert FA-Control. Il n'y a pas de mot de passe.
  3. En règle générale, la page de pilotage s'ouvre d'elle-même. Sinon, saisissez http://192.168.4.1 dans votre navigateur.
  4. Sur la page, cliquez sur la tuile 06 · WI-FI.
  5. Sous NETWORK, saisissez le nom de votre réseau domestique dans SSID et son mot de passe dans PASSWORD.
  6. Appuyez sur SAVE + REBOOT. L'appareil redémarre et rejoint votre réseau.

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-Control ré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.


5. Ouvrir la page

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.


6. Se connecter

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.

Écran d'accueil avant la connexion

L'écran d'accueil avant la connexion : NOT CONNECTED, les tuiles 01 à 05 grisées.

Pour se connecter :

  1. Appuyez sur CONNECT.
  2. La barre devient verte et affiche CONTROL GRANTED.
  3. En dessous apparaît le cadre REPORTED HARDWARE, avec ce que votre flipper a lui-même annoncé : le nombre de lampes, de bobines, d'interrupteurs, de sons et d'afficheurs, plus le nombre de chiffres de chaque afficheur. La ligne au-dessus indique le nom de l'appareil, la version de son firmware et le jeu détecté.
  4. Les tuiles 01 à 05 sont maintenant actives et la LED bleue clignote rapidement.
Écran d'accueil après la connexion

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.


7. Les menus

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.

01 · LAMPS

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

Le menu LAMPS, ici avec un fichier de noms en service (menu 07 · NAMES plus bas).

02 · COILS

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.

03 · SWITCHES

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

Le menu SWITCHES avec les noms d'un fichier de noms.

04 · SOUND

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.

05 · DISPLAYS

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.

07 · NAMES

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 :

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.

08 · GAME ROMS

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.

09 · FPGA

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.

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.


8. Mode moniteur

À 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 :

  1. Appuyez en haut sur MONITOR MODE. Si vous êtes connecté en mode contrôle, FA_Control demande d'abord confirmation : rendre le contrôle redémarre le jeu.
  2. La barre passe au vert et affiche MONITOR MODE - READ ONLY, THE GAME RUNS UNDISTURBED. La page est rafraîchie deux fois par seconde et montre :
  3. CONTROL MODE vous fait quitter le moniteur. Il s'arrête, et le jeu ne s'en aperçoit pas.

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.

9. Rendre le contrôle

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é.


10. Mettre à jour le firmware

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é.

  1. Ouvrez la tuile 06 · WI-FI, section FIRMWARE. INSTALLED VERSION indique ce qui tourne actuellement.
  2. Appuyez sur LOAD VERSIONS. Après un instant apparaît une liste déroulante avec les versions disponibles, la plus récente en premier.
  3. Choisissez une version et appuyez sur INSTALL UPDATE. Confirmez la demande.
  4. La progression s'affiche en pourcentage. L'appareil redémarre ensuite et la page se recharge d'elle-même après une dizaine de secondes.

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.

Installation complète par USB

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).


11. Consignes de sécurité

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.