tags : Jeedom octoprint impression 3d
0.Contexte
Je cherchais une imprimante 3D qui puissent servir pour le bricolage, le DIY et la création de bijou de mon épouse. Je me suis dirigé vers l’excellente Magis de Dagoma. Une imprimante plug and play excellente pour debuter. Mais voila elle fonctionne avec une carte sd et les impression reste longue… Puis j’ai découvert Octoprint.
1.Installation d’octoprint.
1.1 Partie RPI
Je vous conseille vivement de prendre un rpi 3B+ pour cela, vous pourrez faire cohabiter d’autre serveur dessus sans problème , il est possible d’installer octoprint sur un pi zero mais il montre de gros signe de latence. Pour ma part ce rpi accueillera retropie, octoprint et une antenne BLEA.
Il vous faudra également un cable usb qui se branche a votre imprimante
Vous pouvez directement telecherger un raspian buster avec l’image d’octoprint intégré sur le site officiel, la distribution est top , il vous suffit de copier l’archive sur votre carte sd avec etcher et le tour est joué !
Sinon vous pouvez l’installer directement via ligne de commande
Un fois installer et le rpi booter sur la carte sd il faut le mettre à l’heure et changer le mot de passe
pour cela on se connecte via putty sur l’adresse ip de RPI puis on tape la ligne de commande ( rappel : d’origine le nom d’utilisateur est pi et le mot de passe : raspberry)
sudo raspi-config
Il va vous redemander votre mot de passe, puis vous atterrissez sur cette écran
il faut aller choisir change user password
On tape notre nouveau password deux fois ( les caractères ne s’affichent pas c’est normal)
Il faut en profiter pour vérifier adapter le RPI à son pays via change locale puis le mettre à l’heure s dans change timezone , on choisit europe puis la ville de son pays. on sauvegarde
Maintenant nous allons finir l’installation d’octopi. Vous pouvez dès a présent brancher votre imprimante au RPI et l’allumer !
1.2 Configuration du serveur octoprint
Aller dans votre navigateur préférez et taper http://octopi.local
Normalement la magie opère et vous devriez voir le setup wizard d’octopi
- 1 Changer le nom et le mot de passe d’octopi pour éviter qu’une personne mal intentionné imprime n’importe quoi sur votre imprimante
- 2 Acces controle vous demande si vous garder l’accès sécurisé ou non, personellement je ne veux y accéder qu’en local donc je garde l’accès activé. (Pour mettre les pages en français j’ai fait un clique droit traduire par google)
- 3 Choisissez si vous voulez envoyer des statistiques ou non
- 4 Test de connexion, rien à changer
- 5 Plugin blacklist permet de blacklister un plugin que vous considérez comme dangereux, moi j’ai activer au cas ou …
- 6 Personnalisation de cura si vous le souhaitez, je n’ai rien changé
- 7 Default profile printer permet de choisir la surface d’impression et les axes : Pour la magis voici les configuration.
C’est fini ! mais on oublis pas de remercier les createurs avec un petit paypal !
1.3 Bien commencer avec octoprint
Coté logiciel il est vivement conseiller de faire la mise a jour comme ci dessous
Il faudrait aussi passez en python 3 via la ligne de commande suivante sur putty :
curl -L https://get.octoprint.org/py3/upgrade.py –output upgrade.py python3 upgrade.py
Après c’est tout simple on va dans l’onglet principale on upload un fichier GCODE et on double clique dessus , on verifie que le gcode est bon et on imprime. SI vous avez une pi cam il est possible de faire du timelapse, moi j’en ai pas et j’avais une vielle camera ip qui trainait dans un tiroir alors j’ai recyclé.
Pour personnaliser un peu le visage d’octoprint vous pouvez installer des add on, la procesdure c’est roue cranté , plugin manager, search (où l’on renseigne le nom du plugin), on télécharge et une fois tout installer on redémarre le serveur octoprint
Pour ma part j’ai installé :
- Cancel objects : qui permet de modifier son GCODE lors de l’impression
- Custom Background : qui permet de changer le fond d’écran pieuvre des température dans mon cas par une dolorean ( pour le changer rien de plus simple, une fois le plugin installé et le serveur redémarré, il suffit de glisser une photo sur l’image de la pieuvre
- Themeify : qui permet de changer la couleur du serveur
- Floating nav bar et Navbar température plugin : Qui permettent d’avoir un bandeau d’information de l’état du printer visible peu importe l’endroit de la page
- Simple emergency stop : Qui permet d’arrêter une imprimante en urgence, souvent il faudra d’ailleurs la redémarrer manuellement
- Il y’en as encore plein mais ceux ci sont vraiment essentiel
Enfin on va dans le code APi et on récupère le le code et on le garde de coté !
Voila c’est fini pour la partie OCTOPRINT
2.Intégration Jeedom
Premièrement installer le plugin et l’activer
Deuxiemement ouvrir celui et ajouter u nouvel équipement
Dans Ip, on met son Ip local et dans APikey le code api qu’on a récupéré dans octoprint
Et on sauvegarde !!!
Voici les commandes que me remonte ma Magis
J’ai bien une durée de travail , un temps écoulé mais j’ai besoin d’une heure de fin.
Pour cela je crée un scénario dont le déclencheur est le statut de mon imprimante
Détail du calcul de chaque variable :
- Heuredebutprint : me donne l’heure actuelle avec #time#
- j’attends 1200 seconde
- temps0 : me transforme le temps 00:00:00 restant en 00:00 via substr(« #[Imprimante][Magis][Temps restant (humain)]# », 0, -3)
- tempsoheureprint : récupère la partie heure de temps0 et me le transforme en minute via substr(variable(temps0), 0, 2))*60
- tempsominuteprint : récupère la partie minute de temps0 via substr(variable(temps0), -2, 3)
- additionminutesprint : m’ajoute les minutes de tempsoheureprint et de tempsominutesprint via variable(tempsoheureprint)+ variable(tempsominuteprint)
- printtime : me permet d’ajouter l’heure actuelle le nombre de minutes restante à l’impression via Time_op(#time#, +variable(additionminutesprint)
- tempsrestantprint : me transforme 0000 en 00h00
- nombre de boucle : me permet de déterminer combien de photo je souhaite envoyé via la camera en fonction du nombre minutes total d’impression et en le divisant par 10, pour avoir un ephoto toutes les dix minutes X fois.
exemple d’application :
La remonté du statut de l’impression me permet aussi de contrôler le ventilateur de ma boite de protection de l’imprimante. (J’utilise une variable plutôt que la flèche de répartition car celle ci me sert dans plusieurs scénarios.)
Enfin je crée un virtuel avec mon imprimante , mes variables , ma led smartlife et mon ventilateur.
(Pour la création de Virtuel je vous laisse regarder la video de Domotech)
(Le dernier est un lien, qui me permet d’ouvrir octoprint sur une nouvel page via click link)
J’espère que ce micro tuto aura pu vous aiguiller sur octoprint et jeedom.
3. Faire cohabiter Jeedom et octoprint sur le même raspberry
Bon faire cohabiter jeedom et octoprint pourquoi faire ? Du gpio bien sur ! pour des exemples n’hésitez pas à visiter ceci
Bref le souci principale de jeedom et octoprint c’est qu’ils sont tout les deux sur le port 80
Tout d’abord, il faut changer le port de octoprint DANS HA PROXY
sudo nano /etc/haproxy/haproxy.cfg
Une fois que c’est fait, on change les ports qui nous gênent sur jeedom : le 80 et 443 que j’ai remplacé par 90 et 543
Ensuite faire ctrl + o et ctrl + x pour sauvegarder puis faire un sudo reboot
Se connecter à jeedom
Aller dans octoprint et on change le port en rajoutant :90 à notre adresse et c’est tout
Pour se connecter a octoprint, on tape adresseip:90 et pour jeedom adresseip
Merci à Dimitri, le plus consanguin de gars du sud de l’usine à gaz pour le tips
4. En vidéo
Pour aller plus loin la video d’usine a gaz : https://m.youtube.com/watch?v=SfrDECDDr8s
A bientot loïc