La carte mère EINSY RAMBo qui équipe l’imprimante Prusa I3 MK3S possède un emplacement qui permet d’intégrer directement un Rasperry Pi Zero W dans le boitier de contrôle. Vous pouvez ensuite installer Octoprint et piloter l’imprimante en WiFi.
La procédure est décrite en détail sur le site de Prusa. Mais de son coté, Octoprint ne conseille pas d’utiliser le Rasperry Pi Zero (car il n’est pas assez puissant). Mais l’idée d’intégrer un Raspberry pi à mon imprimante (sans alimentation, ni câble USB) me plait bien. Je vais donc tenter l’expérience (on verra bien si cela fonctionne).
Matériel nécessaire
Vous devez vous procurer :
- Un Rasperry Pi Zero W, attention, le W (Wifi) est très important, il existe un Rasperry Pi Zero sans WiFi qui est moins cher, mais il ne peut pas être utilisé pour cette manipulation. Ne choisissez pas non plus le modèle avec les connecteur déjà soudés (parce que les connecteurs nécessaires ne sont pas standard).

- Une carte micro-SD (de 8 Go minimum) tout à fait classique.

- Une double rangée de connecteurs mâles. Attention les connecteurs standards sont trop courts, ils doivent mesurer au moins 18 mm de long. Vous pouvez par exemple, en trouver ici (j’ai choisi des connecteurs de 19 mm de long, parce que je n’en ai pas trouvé qui mesuraient seulement 18 mm).

Normalement, il faudrait imprimer les 2 pièces suivantes en PETG ou en ABS, mais je les ai imprimé en PLA et je n’ai pas rencontré de problème. Ce sont les fichiers rpi-zero-frame.stl et raspberry_cover.stl que vous pouvez télécharger ici.

Installation du Rasperry Pi Zero W
Cassez ou coupez les connecteurs pour obtenir une rangée de 2 x 7. Puis, retirez-en 8 avec une pince pour obtenir la même disposition que sur la photo.

Soudez les connecteurs après les avoir placé comme sur la photo. Attention, de ne faut pas placer les connecteurs sur les 2 premiers trous du GPIO.

Téléchargez l’image Prusaprint et flashez-la sur la carte micro-SD.

Retirez et insérez de nouveau la carte micro-SD dans votre ordinateur et modifiez le fichier octopi-wpa-supplicant.txt (dans la carte SD que vous venez de flasher) pour ajouter vos paramètre WiFi (n’oubliez pas d’enlever les # en début de lignes).

Éjecter la carte, insérer-la dans le lecteur et positionnez l’entretoise sur le Raspberry Pi.

Découpez le boitier de la carte mère de l’imprimante (éteignez l’imprimante avant et faites attention à ne pas abîmer la carte.

Connectez le Raspberry à la carte mère de l’imprimante et placez la nouvelle grille sur le boitier.

Pour activer le port RPi, allumez l’imprimante, allez dans le menu Settings – RPi Port et sélectionnez ON

Vous pouvez maintenant vous connecter en SSH au Rasperry Pi Zero W, en utilisant l’adresse IP locale qui apparaît sur l’écran de l’imprimante :

Ou le nom d’hôte (Host Name) : octopi

Octoprint est basé sur Raspberry Pi OS (qui s’appelait avant Raspbian). Les noms d’utilisateur/mot de passe par défaut sont donc identiques :
- Nom d’utilisateur : pi
- Mot de passe : raspberry
Lancez Raspi-config en tapant :
sudo raspi-config

Commencez par modifier le mot de passe.

Après avoir quitté raspi_config vous pouvez faire les mises à jour habituelles de Raspberry Pi OS :
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get clean
sudo reboot
Pour démarrer la configuration d’Octoprint, tapez http://octopi/ ou http://octopi.local (ou bien l’adresse IP du Raspberry Pi) dans votre navigateur.

Avant, si votre serveur Octoprint n’est pas destiné à être piloté à distance depuis internet, vous pouviez cliquer sur Diable Access Control. Mais les dernières mises à jour d’Octoprint à jour vous obligent à choisir un nom d’utilisateur et un mot de passe. Vous pouvez donc le faire maintenant ou plus tard (quand vous n’aurez plus le choix).

Cette étape est facultative, vous pouvez ajouter un profil si vous voulez utiliser Cura pour « slicer » vos ficher 3D avec votre Raspberry Pi. Comme je préfère utiliser PrusaSlicer, j’ai simplement sauté cette étape.

J’ai laissé tous les paramètres par défaut puisse que l’imprimante Prusa I3 MK3 était déjà sélectionnée et que cela me semblait correct.

Ensuite, j’ai lu les dernières recommandations et cliqué enfin sur Finish.

Après redémarrage, OctoPrint vous proposera peut-être des mises à jour (qu’il faut bien sûr accepter).

Vous pouvez envoyer vos fichiers .gcode vers le serveur en les faisant glisser sur l’interface Web d’OctoPrint.

Mais il est également possible de les envoyer directement depuis PrisaSlicer. Pour cela, cliquez sur Settings (la petite clé à molette en haut) et API. Cochez la case Allow Cross Origin Resource Sharing (CORS), copiez la clé API (en cliquant sur l’icone correspondant), cliquez sur Save et redémarrez Octoprint.

Ensuite, ouvrez PrusaSlicer et cliquez sur le le petit engrenage à coté du nom de l’imprimante (voir la flèche rouge). Sélectionnez Modifier l’imprimante physique et indiquez les paramètres suivants :
- Type d’hôte : Octoprint
- Nom d’hôte,IP ou URL : octopi ou octopi.local (ou l’adresse IP)
- Clé API/Mot de Passe : la clé précédemment copiée

Enregistrez votre préréglage utilisateur sous un autre nom (par exemple : Original Prusa i3 MK3S – Octoprint)
Vous pouvez maintenant envoyer directement votre fichier vers le serveur Octoprint en cliquant sur le bouton G> en bas à droite.

Au bout de quelques instants, le fichier apparaît sur le serveur Octoprint. Et il est même possible de démarrer automatiquement l’impression en cochant la case : Lancer l’impression après le téléchargement.

Conclusion
J’ai conservé cette installation pendant que quelques semaines sans rencontrer de problèmes d’impression, mais il faut quand même être très patient parce que ce brave Rasperry Pi Zero W n’est clairement pas conçu pour ça. Il lui faut environ 3 minutes 30 pour démarrer complètement et les temps de mises à jour sont eux aussi extrêmement longs (et encore, je n’ai pas installé d’extensions ou de caméra).
Actuellement, je ne vous conseillerais pas forcement de faire cette amélioration chez vous. Je suis retourné à une version classique d’Octoprint avec un Raspberry Pi 3B+ (qui dormait dans un tiroir). Bien sûr, il est relié en USB, nécessite une alimentation séparée et prend place à coté de l’imprimante, mais j’en suis très satisfait. Pour info, voilà mes paramètres (pour l’imprimante Prusa I3 MK3).

Vous trouverez l’image sur le site officiel d’Octoprint, les instructions d’installation dans les autres liens ci-dessous.