Aller au contenu principal

Intégration domotique Elegoo 3D printers, gratuite et open source

Intégration Elegoo 3D printers pour Gladys Assistant

Imprimantes 3D Elegoo SDCP (Saturn, Mars, Centauri Carbon) : impression et températures, en local.

Suivez vos imprimantes 3D Elegoo dans Gladys, sur votre réseau local, sans le cloud Elegoo : état de l'impression, progression, couches, temps écoulé et restant, nom du fichier, températures et ventilateurs, déclencheurs de scène quand une impression se termine, échoue ou passe en pause, et, si vous l'autorisez, pause / reprise / arrêt depuis une scène.

Intégration non officielle, sans lien avec Elegoo.

Jamais testée sur une vraie imprimante. Cette première version n'a jamais été testée sur une vraie imprimante : elle suit le protocole public SDCP d'Elegoo et l'intégration Home Assistant elegoo-homeassistant, et n'a été vérifiée qu'avec des imprimantes simulées. Vos retours sont les bienvenus sur le forum Gladys.

Imprimantes compatibles​

Les imprimantes Elegoo qui parlent SDCP V3 par une WebSocket locale (port 3030) :

  • résine : Saturn 4 Ultra, Saturn 4 Ultra 16K, Mars 5 Ultra (et les autres Saturn / Mars SDCP V3) ;
  • FDM : Centauri Carbon.

Non prises en charge : la Saturn 3 Ultra et les autres imprimantes en SDCP V1 par MQTT (l'intégration les reconnaît et le signale dans son état), la Centauri Carbon 2 (autre protocole), et les imprimantes sans réseau.

Mise en place​

  1. Donnez à chaque imprimante une adresse IP fixe dans votre box (réservation DHCP). L'adresse s'affiche sur l'écran de l'imprimante, dans les réglages réseau.
  2. Dans Gladys, ouvrez l'intégration Elegoo, saisissez les adresses dans Adresses IP des imprimantes (séparées par des virgules), et enregistrez. C'est le moyen fiable : l'intégration tourne dans un conteneur qui n'entend pas les diffusions du réseau.
  3. Ou cliquez sur Chercher les imprimantes : Gladys envoie le message de découverte SDCP (UDP port 3000) sur votre réseau et liste les imprimantes qui répondent. S'il ne trouve rien, saisissez les adresses.
  4. Les imprimantes apparaissent dans l'onglet Découverte dès qu'elles ont envoyé leur état : ajoutez-les.

Une imprimante n'accepte que quelques connexions à la fois (application Elegoo, trancheur, Home Assistant...) : si elle ne répond pas, fermez-en une.

Ce que Gladys affiche​

FonctionnalitéRemarques
État de l'impressionAu repos, Préparation, Impression, Mise en pause, En pause, Arrêt en cours, Arrêtée, Terminée, Erreur, Occupée
État de la machineCe que fait l'imprimante (impression, transfert de fichier, autotest, mise à niveau...)
Progression (%)Donnée par l'imprimante, ou calculée d'après les couches
Couche en cours, nombre de couches
Temps écoulé, temps restantEn minutes
FichierLe fichier en cours d'impression (le dernier au repos)
Erreur, code d'erreur0 et « Aucune » quand tout va bien
TempératuresFDM : buse, plateau, enceinte ; résine : LED UV, et la cuve si l'imprimante a un capteur
VentilateursFDM : ventilateurs de pièce, auxiliaire et d'enceinte (%)

Chaque imprimante ne reçoit que les températures et ventilateurs qu'elle signale. Les températures et ventilateurs sont envoyés au plus une fois par minute ; les autres valeurs dès qu'elles changent. Les imprimantes envoient seules leurs changements, et Gladys leur demande aussi leur état à chaque Intervalle de rafraîchissement (30 s par défaut).

La Langue des noms et des états s'applique aux noms des fonctionnalités des imprimantes ajoutées ensuite et aux textes (état de l'impression, erreur).

Scènes​

Déclencheurs, chacun avec l'imprimante à surveiller :

  • Impression Elegoo terminée : une impression vue en cours se termine avec succès (une fois par impression). Variable : file.
  • Erreur d'impression Elegoo : un état d'erreur, une erreur d'impression, ou un message d'erreur de l'imprimante. Variables : file, error, error_code.
  • Impression Elegoo en pause : l'impression passe en pause, quelle que soit l'origine de la pause. Variable : file.

Seuls les changements vus pendant que Gladys est connecté comptent : une impression terminée pendant que l'imprimante ou Gladys était éteint ne déclenche rien.

Pilotage des impressions (désactivé par défaut)​

L'action de scène Piloter une impression Elegoo met en pause, reprend ou arrête l'impression en cours. Elle est refusée tant que vous n'avez pas coché Autoriser pause, reprise et arrêt depuis Gladys : toute personne pouvant modifier les scènes de votre Gladys pourrait alors arrêter une impression.

Règles de sécurité :

  • Gladys ne lance jamais d'impression et ne déplace jamais les axes : ces commandes n'existent pas dans l'intégration.
  • Avant chaque commande, l'imprimante est interrogée sur son état. Sans réponse récente, rien n'est envoyé. La commande est aussi refusée si elle ne convient pas : pause seulement pendant une impression, reprise seulement en pause, arrêt seulement pendant une impression.
  • Une seule commande à la fois par imprimante. Une commande que l'imprimante ne confirme pas en 5 secondes est signalée comme telle : vérifiez l'imprimante, elle a pu être appliquée.

Dépannage​

  • « Pas encore de réponse de ... » : l'imprimante est éteinte, l'adresse est fausse, ou toutes ses connexions sont prises. Vérifiez qu'elle est joignable depuis la machine Gladys. L'intégration réessaie seule, en attendant un peu plus à chaque fois (jusqu'à 5 minutes).
  • La recherche ne trouve rien : saisissez les adresses ; la découverte dépend du réseau entre Gladys et les imprimantes.
  • Une imprimante a changé d'adresse : remplacez l'ancienne adresse par la nouvelle dans la configuration ; l'imprimante est reconnue par l'identifiant de sa carte, son appareil et son historique sont gardés.
  • Pour oublier une imprimante, retirez son adresse et supprimez son appareil.

Confidentialité​

Tout reste sur votre réseau local : Gladys parle directement aux imprimantes (WebSocket sur le port 3030, UDP sur le port 3000). Rien n'est envoyé à Elegoo ni à personne d'autre.

Paramètres de configuration​

Voici les paramètres demandés par Elegoo 3D printers dans son écran de configuration dans Gladys.

ParamètreTypeObligatoireDescription
Vos imprimantes Elegoo, sur votre réseau localsectionNonPour les imprimantes Elegoo qui parlent SDCP V3 sur le réseau local : résine (Saturn 4 Ultra et 16K, Mars 5 Ultra ; pas la Saturn 3 Ultra, SDCP V1) et FDM (Centauri Carbon). Gladys lit l'état de l'impression, la progression, les couches, les temps, le nom du fichier, les températures et les ventilateurs par la WebSocket de chaque imprimante (port 3030), sans le cloud Elegoo. Donnez à chaque imprimante une adresse IP fixe dans votre box et saisissez-la ci-dessous : c'est le moyen fiable. « Chercher les imprimantes » peut aussi les trouver. Une imprimante n'accepte que quelques connexions à la fois (application Elegoo, trancheur...). Jamais testé sur une vraie imprimante pour l'instant. Non officiel, sans lien avec Elegoo.
Adresses IP des imprimantesstringNonSéparées par des virgules, par exemple 192.168.1.50, 192.168.1.51. Affichées sur l'écran de l'imprimante (réglages réseau).
Intervalle de rafraîchissement (s)numberNonLes imprimantes envoient seules leurs changements ; Gladys leur demande aussi leur état à ce rythme, en secondes.
Langue des noms et des étatsselectNonSert aux noms des fonctionnalités des imprimantes ajoutées désormais, et aux textes (état de l'impression, erreur).
Pilotage des impressionssectionNonL'action de scène « Piloter une impression Elegoo » peut mettre en pause, reprendre ou arrêter l'impression en cours. Elle est désactivée par défaut : toute personne pouvant modifier les scènes de votre Gladys pourrait alors arrêter une impression. Gladys ne lance jamais d'impression et ne déplace jamais les axes. Avant chaque commande, l'imprimante est interrogée sur son état, et la commande est refusée si cet état est inconnu ou ne convient pas (pas de pause si elle n'imprime pas, pas de reprise si elle n'est pas en pause).
Autoriser pause, reprise et arrêt depuis GladysbooleanNon

Comment installer Elegoo 3D printers dans Gladys​

  1. Dans Gladys, ouvrez Intégrations : Elegoo 3D printers apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
  2. Cliquez sur Installer. Gladys télécharge l'image Docker (ghcr.io/lm1lc3n7/gladys-elegoo:0.1.1), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration).
  3. Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
  4. Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/LM1LC3N7/gladys-elegoo.

Elegoo 3D printers nécessite Gladys >=5.1.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.

Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.

À propos des intégrations externes​

Elegoo 3D printers est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par LM1LC3N7, et non par l'équipe cœur de Gladys.

Inscrivez-vous à la newsletter Gladys Assistant

Quelques emails par mois sur les nouveautés et l'actualité du projet. Envoyés par Pierre-Gilles Leymarie, le fondateur du projet. Désinscription possible à tout moment 🙂