PierreG Posté(e) Mars 17, 2023 Posté(e) Mars 17, 2023 Bonne journée à vous chers amis... J'ai une drôle de demande aujourd'hui... Mon imprimante, une CR10 V3 est branchée sur une prise connectée TPLink. Elle fonctionne avec Klipper et un Pi 4. Sur mon Pi, je fonctionne avec Octoprint, et le plugin TPLink Smart Plug, ce qui me permet d'allumer et d'éteindre mon imprimante à distance (et surtout de l'éteindre une fois l'impression terminée). Il m'arrives trop souvent de démarrer une impression et oublier d'allumer l'imprimante (un désavantage de Klipper, l'imprimante virtuelle est toujours à ON) auparavant. Donc je me retrouve avec plein d'erreur MCU non connecté, etc... Ce que j'aimerais, c'est que lorsque j'envoi une impression, si l'imprimante est à OFF, qu'elle se mette à ON toute seule. J'ai tenté de mettre le gcode d'allumage de la smarplug ( M80 192.168.1.141 ) comme premiere instruction dans un gcode, mais ca ne fonctionne pas. Je crois que klipper vérifie si l'imprimante est présente avant meme de lire la premiere ligne de gcode... Auriez-vous une idée de ce qui pourrait être fait ?? Merci d'avance pour vos idées !!!
Savate Posté(e) Mars 18, 2023 Posté(e) Mars 18, 2023 Il y a 10 heures, PierreG a dit : un désavantage de Klipper, l'imprimante virtuelle est toujours à ON c'est étrange, tu as essayé de désactiver l'imprimante virtuelle, comme ça tu es sur de ne pouvoir rien faire tant que l'imprimante n'est pas allumée.
fran6p Posté(e) Mars 18, 2023 Posté(e) Mars 18, 2023 (modifié) @PierreG Ta prise connectée permet d'allumer / éteindre l'imprimante. Ce qu'il faut, c'est lorsqu'elle s'allume que Klipper le détecte et démarre / redémarre le firmware (FIRMWARE_RESTART). Ça peut être «automatisé» via le système Linux. Quand l'imprimante est allumée, la connexion USB est détectée par l'OS. Il suffirait d'ajouter des règles UDEV. Exemple pour ma «SonicPad»: Prérequis: avoir un accès root au système. 1) Créer une régle /etc/udev/rules.d/98-klipper.rules avec le contenu: SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ACTION=="add", RUN+="/bin/sh -c 'echo RESTART > /tmp/printer'" A adapter en fonction des ID (vendeur / produit). Pour les trouver, un chti «lsusb» permet de les obtenir 2) Rendre exécutable cette règle : chmod +x /etc/udev/rules.d/98-klipper.rules 3) Mettre à jour les règles UDEV pour qu'elles soient prises en compte : udevadm control --reload Alternative Windowsienne : redémarrer le RapsberryPi Comme j'utilise Moonraker + Mainsail, j'ai une section dans Moonraker qui prend en compte l'allumage / extinction de l'imprimante (j'utilise des prises Tasmota mais Moonraker prend en charge de nombreux modèles de prises connectées ( section [power] ). Exemple de ma section Moonraker : Citation ## Gestion prise électrique via Tasmota [power Ender3S1] type: tasmota address: 192.168.1.176 L'ajout de cette section permet d'amender le menu de Mainsail (Fluidd aussi) avec une section «modules d'alimentation» (un switch ON / OFF) : J'ai évidemment des macros permettant «d'automatiser» le tout : Citation #===================================================== # Power Operations / HA Plug #===================================================== [gcode_macro POWER_ON_PRINTER] gcode: {action_call_remote_method("set_device_power", device="Ender3S1", state="on")} [gcode_macro POWER_OFF_PRINTER] gcode: {action_call_remote_method("set_device_power", device="Ender3S1", state="off")} [delayed_gcode delayed_printer_off] initial_duration: 0. gcode: # {% if printer.idle_timeout.state == "Idle" %} # {% if printer.idle_timeout.state == "Idle" or printer.idle_timeout.state == "Ready" %} {% if printer.idle_timeout.state != "Printing" %} POWER_OFF_PRINTER {% endif %} [idle_timeout] gcode: M84 ; disable steppers TURN_OFF_HEATERS UPDATE_DELAYED_GCODE ID=delayed_printer_off DURATION=600 Modifié (le) Mars 18, 2023 par fran6p 2
PierreG Posté(e) Mars 18, 2023 Auteur Posté(e) Mars 18, 2023 Merci ... En fait, ma prise connectée fonctionne très bien.. quand j'allume l'imprimante (je met la prise à ON), Klipper le détecte et tombe en mode "ready" ou quelque fois "Stanby", ce qui fait que je peut démarrer l'impression a tout moment... Et le plugin TPLink Smartplug me permet de mettre l'imprimante à OFF après 10 minutes, ou quand les températures de la buse et du bed sont sous 30°. Mais ce que j'aurais aimé, c'est que si je clique sur le bouton "Imprimer" d'Octoprint avant d'avoir penser à mettre l'imprimante à ON avec mon bouton, qu'Octoprint le détecte et allume l'imprimante, avant que Klipper me mette en faute... Mais c'est peut-être trop en demander !!
fran6p Posté(e) Mars 18, 2023 Posté(e) Mars 18, 2023 Il y a 2 heures, PierreG a dit : Mais c'est peut-être trop en demander !! Là, oui . Tu ne veux pas que ça fasse le café en plus ? Trêve de galéjades et billevesées, pour répondre à ta question je ne sais avec Octoprint comment on pourrait faire (pas mieux avec Klipper / Moonraker)… Ça dépasse mes compétences / connaissances. Peut-être poser la question à ChatGPT ?
PierreG Posté(e) Mars 19, 2023 Auteur Posté(e) Mars 19, 2023 Il y a 8 heures, fran6p a dit : à ChatGPT ? Ben la v'la la solution !!! 1
PierreG Posté(e) Mars 19, 2023 Auteur Posté(e) Mars 19, 2023 Bon, j'ai peut-être trouvé mon bonheur... dans les plugins Octoprint : Autoprint D'après ce que j'ai compris, ca démarre l'imprimante, allume la lumiere, part le café, démarre le lave-vaisselle s'il est plein, et démarre une impression !! À tester !!
fran6p Posté(e) Mars 19, 2023 Posté(e) Mars 19, 2023 (modifié) D'après un survol rapide de ce greffon, il semble nécessiter l'allumage /extinction de l'imprimante via les GPIO du RPi Sinon, le greffon Octoprint-PSU-control plus celui gérant les prises TPLink devrait pouvoir le faire (voir les déclencheurs (triggers)). Modifié (le) Mars 19, 2023 par fran6p
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant