Projet perso · Logiciel libre · Raspberry Pi

ArgOS

Piloter toute la station d’astrophoto depuis le téléphone, sur un Raspberry Pi. Dans l’esprit de l’ASIAIR, mais en logiciel libre — et encore loin d’en faire autant.

v0.1 — en vol Python · FastAPIReact · PWAINDI · INDIGO

Le point de départ

L’ASIAIR de ZWO fait très bien son travail : un petit boîtier qui pilote la monture, la caméra et la roue à filtres, et qu’on commande depuis son téléphone. Plus besoin de trimballer un PC portable sous la rosée.

Deux réserves, quand même. C’est fermé — les caméras doivent être des ZWO. Et c’est une boîte noire : quand quelque chose coince, on attend la prochaine mise à jour.

ArgOS ne prétend pas rivaliser avec lui — on en est loin. C’est un projet perso qui vise la même promesse sur un Raspberry Pi, avec du libre de bout en bout : les drivers INDI en dessous, une API maison au milieu, une web-app installable au-dessus. Mon matériel, mes règles, et le plaisir de comprendre ce qui tourne.

Quatre couches, dont deux à écrire

Les deux couches basses sont du logiciel libre existant, utilisé tel quel. Tout le travail est au-dessus.

L4
Interface mobile PWA React installable sur le téléphone
à construire
L3
API REST + WebSocket Service Python (FastAPI) sur le Pi
à construire
L2
Agents INDIGO / Ekos Align, Focus, Guide, Capture, Scheduler
réutilisé
L1
Drivers INDI / INDIGO La couche qui parle au matériel
réutilisé

Jamais sous la couche agent

Les deux fonctions les plus difficiles — mise en station et autofocus — sont justement celles que l’agent offre gratuitement. Descendre piloter les drivers à la main reviendrait à les réécrire.

Le téléphone peut s’endormir

Avec INDIGO, la logique tourne côté serveur et survit à la déconnexion du client. L’écran se met en veille, la séquence continue. Sur le terrain, ce détail change tout.

Le téléphone rend, le Pi acquiert

Carte du ciel, zoom, courbes : tout se calcule dans le navigateur. Les FITS de 30 Mo ne quittent jamais le Pi — seuls des JPEG passent sur le réseau.

Ce que ça pilote

Mon setup réel — c’est lui le cahier des charges.

ÉlémentModèleDriverÉtat
Monture Skywatcher HEQ5 Pro indi-eqmod au programme
Caméra ZWO ASI 533MM Pro indi-asi au programme
Roue à filtres ZWO EFW indi-asi au programme
Reflex Canon 1200D indigo_ccd_ptp validé en réel
Cerveau Raspberry Pi 4 — 4 Go Pi OS Lite 64 bits validé en réel
Moteur de focus ZWO EAF indi-asi-focuser à acquérir

Le moteur de focus est le seul trou matériel de la liste : sans lui, pas d’autofocus, quelle que soit la pile logicielle. Tout le reste est déjà là.

Le morceau difficile n’est pas celui qu’on croit

Le plate solving, c’est une après-midi de travail — l’agent le fait. Le live view et l’ergonomie mobile, c’est l’essentiel de l’effort. C’est là que se joue la qualité du projet.

Caméra FITS brut autostretch JPEG WebSocket écran du téléphone

Cadrage

Poses courtes, stretch agressif, latence minimale. On cherche l’objet, on n’admire pas.

Mise au point

Crop autour d’une étoile et courbe de finesse en direct, pour régler à la main quand il n’y a pas de moteur.

Aperçu

Chaque pose s’affiche étirée dès son arrivée. C’est le moment où l’on voit la nébuleuse sortir du bruit.

Où j’en suis

  • Première vraie séquence au Canon 1200D. Le boîtier est piloté en bulb par le Pi : poses multiples enchaînées, ISO réglable depuis l’app, progression en temps réel, aperçus dans la galerie. Le tour de l’application se fait sans jamais toucher au reflex.
  • Backend interchangeable INDI / INDIGO. Une seule interface, deux implémentations, un réglage pour choisir. INDIGO est validé de bout en bout au simulateur ; INDI reste la version de production tant que le reflex n’est pas repassé dessus.
  • Un vrai ciel dans l’app. Le moteur de Stellarium a été compilé et embarqué dans la web-app : étoiles, objets du ciel profond, planètes, atmosphère, pollution lumineuse selon l’échelle de Bortle. Tout tourne hors-ligne, dans le navigateur du téléphone.
  • Prochaine étape : la monture. Brancher la HEQ5, afficher sa position sur la carte, et pouvoir viser une cible en tapant dessus. Ensuite seulement, la caméra refroidie et les filtres.

La suite

Le cap : se rapprocher de ce que fait l’ASIAIR, avec un séquenceur digne de ce nom. Pas « tout NINA » — six fonctions bien faites suffisent à couvrir une nuit entière.

  1. 1
    Baseline reflex

    API + web-app + séquences + galerie, validées en réel au Canon.

    fait
  2. 2
    Bascule INDIGO

    Backend enfichable INDI/INDIGO, piloté par les agents. Validé au simulateur.

    en cours
  3. 3
    Web-app niveau 2

    Precache hors-ligne, mode nuit rouge, wake lock, gros contrôles « gantables ».

    en cours
  4. 4
    Monture HEQ5

    Goto, suivi, park, plate solve ASTAP et sync — tap sur une cible de la carte.

    à venir
  5. 5
    ASI 533MM + roue

    Live view avec stretch temps réel, séquences multi-filtres SHO.

    à venir
  6. 6
    Autofocus

    Courbe HFR déléguée à l’agent Focus. Attend l’achat du moteur.

    à venir
  7. 7
    Guidage + séquenceur

    PHD2 et dithering, puis cibles multiples et flip méridien automatique.

    à venir

Suivre le projet

ArgOS avance par étapes, au rythme des nuits claires. Les jalons — monture, live view, autofocus, guidage — seront racontés ici, et les tutos utiles atterriront dans la rubrique Tutos. Voir les tutos →

Rester informé

Recevez un email quand je publie une nouvelle image ou un tutoriel.