Contrôle d’impression 3D double mode TFT35 – Pratique

J’étais en train de reconstruire l’une de mes imprimantes 3D – encore une fois – et j’ai décidé que j’avais besoin d’une mise à niveau de l’affichage. Un écran couleur, c’est bien, mais il y a quelques limites. J’ai également découvert qu’il existe des moyens de contourner ces limitations, je voulais donc partager mes réflexions sur un contrôleur LCD à écran tactile couleur bimode pour votre imprimante 3D. L’écran en question est un TFT35 de BigTree Tech. Il est similaire à un écran MKS, mais il peut fonctionner selon deux modes différents, comme vous le verrez.

Il y a quelques années, j’ai acheté un Anet A8 qui était très bon marché, surtout en solde. Pas la meilleure imprimante, cependant, car elle a ce cadre acrylique bon marché. Aucun problème. Une boîte pleine d’extrusion d’aluminium plus tard, l’imprimante renaît. Au fil du temps, j’ai complètement retravaillé le système d’extrusion et l’axe Y, ne laissant que les moteurs, les roulements et le contrôleur/écran d’origine.

C’est cette dernière partie qui m’a dérangé. La carte Anet est en fait assez performante pour une petite carte bon marché. Mais c’est exactement ce dont l’imprimante a besoin et rien de plus. Si vous vouliez pirater l’imprimante, il restait très peu de mémoire et une seule broche de rechange pour les E/S. Il était donc temps de remplacer la carte et pourquoi pas le contrôleur aussi ?

L’affichage plus ou moins standard pour Marlin.

L’A8 a un LCD2004. Cela signifie qu’il a un écran LCD 20×4. Au lieu d’un bouton encodeur, il y a cinq boutons : essentiellement haut, bas, gauche, droite et entrée. La plupart des imprimantes ont maintenant un écran LCD12864 qui, comme vous pouvez probablement le deviner, est un écran LCD 128 × 64 et elles utilisent un bouton encodeur pour la direction que vous pouvez appuyer sur la touche Entrée.

Survint une araignée

Il m’est arrivé d’en avoir un qui traînait, alors quand j’ai installé une nouvelle carte mère – une Fysetc Spider si vous êtes curieux – j’ai également câblé le nouvel écran LCD. J’ai dû recompiler Marlin, bien sûr, mais c’est facile. Tout a fonctionné, ça avait juste l’air un peu fade.

Le TFT35 en mode tactile.

Il existe un autre moyen de contrôler une imprimante, auquel vous avez peut-être déjà pensé. Étant donné que l’imprimante accepte les commandes via un port série, vous pouvez prendre un ordinateur comme un Raspberry Pi avec un bel écran LCD et lui faire simplement envoyer des commandes au port série. Des points bonus si la carte a plus d’un port série afin que vous puissiez toujours brancher un PC ou un Raspberry Pi exécutant Octoprint ou similaire. Il s’avère que vous n’avez pas à construire cela. L’écran tactile MKS utilise une puce ARM (ce n’est pas un Pi, cependant) et dispose d’un écran tactile que vous pouvez utiliser pour contrôler l’imprimante. Ceux-ci sont disponibles en différentes tailles et sont généralement appelés quelque chose comme TFT35 pour un écran de 3,5 pouces.

L’avantage n’est pas seulement l’apparence. Avoir un tas de boutons sur l’écran tactile facilite beaucoup de choses. Par exemple, si l’imprimante est à (0,0) et que vous voulez passer la tête à (100 200), cela finit par être beaucoup de pressions sur les boutons dans Marlin. Avec l’écran tactile, vous pouvez afficher un écran de navigation qui facilite les choses. Ou, vous pouvez afficher un terminal entier et entrer le code G. Lorsque vous appuyez sur Envoyer, il affiche les résultats de la commande, le cas échéant. Vous pouvez régler une température avec le bouton, les boutons à l’écran ou appuyer sur le numéro et taper ce que vous voulez avec un clavier virtuel.

Dédoublement de la personnalité

Ces écrans sont colorés et agréables, mais il y a certaines choses qu’ils ne peuvent pas faire. Marlin a des assistants et une interaction utilisateur qui insistent sur un écran LCD local approprié. Mais le code Marlin pense que l’écran MKS est un ordinateur hôte distant, connecté en série. Les écrans qui peuvent agir comme les deux types d’écrans LCD sont une bonne astuce, et voici la partie qui n’était jamais claire pour moi auparavant : ces écrans peuvent changer de mode pendant le fonctionnement de l’imprimante. En d’autres termes, il ne s’agit pas de sélectionner un mode et de tout redémarrer. Vous pouvez regarder l’écran tactile coloré, puis passer à l’affichage du stock pendant l’impression, puis revenir en arrière à tout moment. Le meilleur des deux mondes.

À première vue, l’écran ressemble à un MKS TFT. Vous disposez de menus colorés et d’un écran tactile. La connexion pour cela est un simple port série à deux fils, avec – bien sûr – l’alimentation, la terre et une connexion de réinitialisation en option. Ils fournissent un câble que vous pouvez utiliser ou modifier pour vous connecter à votre configuration. Il y a aussi un port EXT3 pour les cartes qui ont ce connecteur.

Si tout ce que vous voulez est un écran MKS, vous avez terminé. Étant donné que l’affichage ressemble à un ordinateur hôte, vous n’avez même pas besoin de recompiler Marlin si le port série que vous avez utilisé était actif. Dans mon cas, le deuxième port série n’était pas configuré, j’ai donc dû recompiler, mais je le fais assez souvent quand même.

Cependant, si vous câblez les câbles plats EXT1 et EXT2 normaux à votre imprimante, l’écran peut émuler un écran LCD 128 × 64 normal. Si vous êtes déjà configuré pour utiliser l’un de ces affichages, vous ne devriez pas avoir besoin de recompiler Marlin pour utiliser cet affichage. Cependant, si vous êtes configuré pour un autre type d’affichage, vous devrez dire à Marlin d’utiliser le « REPRAP DISCOUNT GRAPHICS CONTROLLER » normal.

Mauvais marketing

Voici ce que je n’ai jamais compris à propos de l’appareil. En regardant l’article à ce sujet sur différents sites de fournisseurs comme Amazon, Banggood ou AliExpress, il semblait que vous pouviez utiliser l’écran dans l’un ou l’autre mode comme choix de configuration statique. En d’autres termes, vous pouvez câbler EXT1 et EXT2, puis utiliser le mode émulé jusqu’à ce que vous décidiez de passer en série à une date ultérieure. Mais ce n’est pas comme ça que ça marche. Vous pouvez connecter tous les câbles et basculer entre les systèmes d’affichage à la volée.

C’est énorme. Cela signifie que vous pouvez avoir une interface utilisateur agréable qui vous permet de contrôler l’imprimante, d’imprimer à partir d’une carte SD ou d’une clé USB, et même de personnaliser le menu avec le code source fourni sur GitHub ou avec une simple modification du fichier de configuration. (Et, oui, vous pouvez simplement ajouter des éléments de menu personnalisés.) Mais lorsque vous devez faire quelque chose de très spécifique à Marlin, ou qu’une nouvelle fonctionnalité apparaît que l’écran LCD ne connaît pas encore, vous pouvez simplement passer à l’affichage Marlin mode. Ensuite, vous pouvez revenir en arrière.

Sélectionnez votre mode avec une touche ou le bouton de l’encodeur.

Le processus de changement est simple. Maintenez simplement le bouton de l’encodeur enfoncé ou appuyez sur l’écran pendant quelques secondes. Un écran apparaîtra vous permettant de choisir le mode Marlin ou le mode BTT. Touchez simplement celui que vous voulez. En mode Marlin, l’écran tactile ne fait rien d’autre que de changer de mode, vous pouvez donc utiliser cette méthode. Si vous maintenez l’encodeur enfoncé en mode Marlin, l’imprimante verra également les touches d’entrée répétées jusqu’à ce que l’écran LCD affiche l’écran de sélection.

Si vous utilisez une lunette, soyez prudent. Si vous serrez suffisamment un boîtier pour que l’écran tactile pense que vous appuyez sur l’écran, vous resterez bloqué dans le mode de sélection, ce qui est logique. Ne serrez pas trop l’écran LCD !

Installation

L’installation de l’écran LCD a été simple, sauf quelques problèmes. Pour une raison quelconque, la désignation de la broche 1 pour EXP1 et EXP2 n’est pas cohérente entre les fournisseurs. Un écran Geeetech fonctionnait bien avec la carte Spider, mais le TFT35 ne voulait pas du tout passer en mode Marlin. J’ai mis le port série sous tension et la carte semblait bloquée. La réponse était de couper les languettes d’alignement sur les câbles plats et de les retourner à 180 degrés.

Le port série était aussi un mystère. Avec si peu de documentation sur quoi que ce soit, j’ai juste soudé les fils d’alimentation et de terre, puis torsadé à la main RX et TX afin que je puisse les échanger jusqu’à ce que cela fonctionne. Comme je m’y attendais, le câble avait besoin d’une croix sur ces lignes pour fonctionner. Vous devez également faire correspondre le débit en bauds de l’écran au port que vous utilisez.

Après, tout a bien fonctionné. Les connecteurs EXP1 et EXP2 se connectent à la réinitialisation de la carte, vous n’avez donc pas besoin de câbler la broche de réinitialisation du port série si vous les avez connectées. Cependant, j’ai remarqué que le passage de la carte mère en mode DFU échoue parfois avec l’écran branché. Le flashage de l’écran nécessite une carte SD qui flashe un fichier binaire, puis redémarre et charge les polices et les icônes. S’il est connecté au Spider, il se bloque parfois lors d’une tentative de redémarrage lors d’une mise à jour. Cela fonctionne aussi parfois, donc je soupçonne qu’il se charge simplement sur la ligne de réinitialisation. Dans tous les cas, faire éclater les connecteurs le fera fonctionner si vous ne voulez pas essayer à plusieurs reprises.

L’écran a un certain nombre d’autres ports, mais vous ne devriez probablement pas les utiliser. Par exemple, il y a un port pour un capteur de fin de filament. Mais si vous le connectez là-bas, cela ne fonctionnera que si vous imprimez à l’aide d’une carte SD ou d’une clé USB à l’écran. Une meilleure option consiste à le connecter à votre imprimante et à dire à Marlin d’informer l’hôte si une rupture de filament se produit. Cela fonctionnera avec l’affichage ou quelque chose comme Octoprint.

En théorie, vous devriez pouvoir connecter Octoprint lui-même via l’un des ports série supplémentaires. Cependant, je n’ai jamais réussi à ce que cela fonctionne pleinement. Le port subordonné semble fonctionner assez bien, mais il n’envoie jamais d’accusés de réception Octoprint, donc Octoprint attend indéfiniment ou jusqu’à ce que vous le forciez à continuer – utilisez le bouton Faux accusé de réception dans le terminal. Étant donné que le Spider possède plusieurs ports série, ce n’est pas grave, mais en théorie, le TFT devrait fonctionner un peu mieux s’il peut intercepter et filtrer le flux de données entre l’imprimante et le logiciel hôte. En pratique, je ne remarque pas vraiment de problèmes. Certains plugins Octoprint comme DisplayLayer peuvent envoyer des informations d’état au TFT, de toute façon.

Le verdict

Le mode Marlin est disponible à tout moment.

La vérité est que je ne passe pas très souvent en mode Marlin, mais c’est bien de l’avoir si je le veux, et vous pouvez même changer les couleurs à votre convenance. Je voulais vraiment que le mode passthrough fonctionne mais je ne pouvais pas comprendre ce qui se passait sans creuser dans le code source, et cela pourrait être un projet pour un autre jour.

Autre remarque : l’utilisation des touches de déplacement permet de régler l’imprimante en mode relatif. Si vous avez l’habitude d’insérer des codes dans un terminal, vous voudrez peut-être vous habituer à émettre un G90 avant d’envoyer un mouvement, car le TFT le changera en relatif à chaque fois que vous ferez un jogging.

Ces écrans sont peu coûteux et faciles à interfacer et puisqu’ils peuvent toujours fonctionner comme un écran classique, il n’y a aucune raison de ne pas effectuer cette mise à niveau facile. Il existe de nombreuses options de montage que vous pouvez imprimer, bien sûr. Le résultat final est superbe et faire des choses comme se déplacer à la fois en X et en Y est beaucoup plus facile avec le nouvel affichage.