Firmwares : la page de tous les dangers !

Le firmware des imprimantes Artillery

Attention : Les manœuvres décrites dans cet article peuvent être dangereuses pour votre machine puisqu’elles concernent son programme interne. Donc, lisez, comprenez et posez éventuellement des questions à ceux qui savent (c’est à dire pas ici 🙂 ) avant de vous lancer. Sinon, nuits blanches, migraines et nervous breakdown à l’horizon…

Cette page regroupe les liens vers les différents firmwares pour la carte-mère MKS-GenL et l’écran TFT.

Les versions officielles des firmwares Artillery sont disponibles sur Github.

Accessoirement, si vous voulez savoir comment créer un fichier .hex, c’est à dire un fichier de flashage, lisez la page Créer un fichier .hex pour Artillery


Avant de se lancer

La carte-mère MKS-GenL

Le flashage du firmware de la carte-mère (X1 ou Genius) nécessite d’ouvrir l’imprimante et de débrancher l’écran TFT. C’est du n’importe quoi et on se demande ce qui a germé dans la tête des ingénieurs d’Artillery. Mais hélas c’est indispensable, sinon l’écran intercepte le port com utilisé avec votre pc et le bloque. Le pc ne peut donc plus se connecter à l’imprimante pour lui envoyer le flash.

On commence à trouver des solutions de contournement qui permettent d’éviter de débrancher l’écran pour flasher. Cela nécessite un firmware écran spécial. Cette information sera indiquée dans la notice des firmwares concernés.

Pour flasher on peut utiliser outils : votre trancheur, Pronterface (maintenant nommé Printrun), Octoprint ou l’IDE Arduino.

Une nouvelle fois, attention. En cas de problème, ce flashage peut mettre votre machine HS et vous obliger à changer des composants. Inutile de préciser que si vous parlez garantie après avoir flashé, ça va faire rigoler le SAV 😉 Donc, prudence…

L’afficheur TFT

Pour flasher l’écran TFT, la bonne nouvelle, c’est qu’il n’est pas nécessaire d’ouvrir l’imprimante. Le problème, c’est que, bien souvent le firmware de l’écran est associé à un firmware de la carte-mère. Cela signifie que vous pourrez toujours flasher votre écran, certaines fonctions ne seront pas actives si le firmware de la carte-mère n’est pas compatible. Mais, à la différence du flashage de la carte-mère, vous ne planterez pas votre machine avec un firmware écran (enfin, normalement car on ne sait pas ce que les développeurs peuvent inventer !) Dans le pire des cas, il suffit de reflasher le firmware officiel Artillery (celui sur GitHub)

Voici la marche à suivre :

  1. Copier les fichiers de mise à jour décompressés à la racine d’une carte sd de 32go maximum formatée en FAT32 ou en FAT16. En général ça tient largement sur une 8go. Il vaut mieux utiliser une 8go de marque qu’une 32go pas chère.
  2. Éteindre l’imprimante
  3. Insérer la carte sd
  4. Allumer l’imprimante
  5. Attendre que la mise à jour soit terminée
  6. Éteindre l’imprimante
  7. Retirer la carte sd
  8. Allumer l’imprimante
  9. Si vous aviez défini le port usb comme source de données par défaut, vérifier qu’il n’est pas repassé à carte sd du fait de la mise à jour.

Après le flashage, ne croyez pas que vous pourrez réutiliser la carte SD telle quelle pour flasher une autre fois, comme le vulgaire mp3 qui contient vos blagues à la Pérusse et que vous voulez passer à vos copains. Et non, ce serait trop simple. On est dans le monde de l’impression 3d, le monde où tout est toujours compliqué. Pour résumer, quand vous flashez, l’imprimante renomme les fichiers. Si vous voulez reflasher plus tard avec la même carte, la machine ne reconnaîtra pas ses petits et vous ne comprendrez pas pourquoi elle ne veut pas booter sur cette #!@# de carte qui a si bien marché la dernière fois.

Pour comprendre tout ça, direction la page du wiki qui s’appelle Je n’arrive pas à flasher le firmware de l’écran (je me demande où je vais chercher des titres aussi originaux !).


Les firmwares pour cartes Makerbase

Le nom du firmware est suivi de la version de Marlin utilisée (quand elle est connue) et des machines pour lesquelles il est prévu. La mention CM signifie qu’il permet de flasher la carte-mère MKS GenL. La mention TFT signifie qu’il permet de flasher l’écran.

3d-Nexus – Marlin 1.1.9 (X1 et Genius – CM+TFT)

 Vous pouvez retrouvez sur cette page mes commentaires sur le flashage du firmware de 3d-nexus, tel que je l’ai fait sur ma machine.

Nouveau ! Molise – Marlin 2.0.6.1 (X1 et Genius – CM+TFT)

Voici un firmware basé sur une version très récente de Marlin. On le doit à David Touton. C’est donc un firmware avec la “touche France”. Il arrive avec la panoplie complète : carte-mère et écran. Il y a une version X1 et une pour Genius.

Sa particularité tient au fait que David l’a conçu avec un système de paramétrage ingénieux. Les paramètres importants sont regroupés au début du fichier “Configuration.h”. Ils sont regroupés en 7 blocs fonctionnels. Suivant les options qui vous intéressent, vous commentez ou décommentez la ligne concernée (Drivers, BLtouch, led, etc). Le paramétrage est donc très simplifié puisque vous n’avez pas besoin de courir aux quatre coins du fichier.

Il est prévu de base avec le choix des drivers, toutes les version de cartes SRK (1.3, 1.4 et turbo), les extrudeurs BMG et Hemera, ainsi que bltouch, sensorless homing etc.

A noter qu’il ne peut être compilé qu’avec VS Code (Visual Studio Code).

Cerise sur la gâteau, il y a une version en français du firmware écran (basé sur le celui de DIgant).

Wagster 1.5 – Marlin 2.0.2 (X1 – CM+TFT)

Un firmware pour BLtouch basé sur Marlin 2.0.2 dans la version 1.5. Il est possible également de télécharger les version précédentes (1.1, 1.2, 1.3, 1.4) dont certaines conviennent à Marlin 1.1.9.

  • Instructions pour le montage du BLTouch
  • Modifications du firmware de la carte et de la carte écran
  • Réglage du BLtouch
  • Babysteps et réglage du Z-Offset
  • Reset du BLtouch
  • Réglage PID

Le tout en photos et très détaillé. Pas étonnant que ce mod ait autant de succès.

Grâce à Alain Giresini, voici la doc d’installation traduite en français ! Merci à lui.

Fulament – Marlin 2.0.5.3 (X1 – CM+TFT)

Un firmware basé sur Marlin 2.0.5.3 avec :

  • Enregistrement de l’EEPROM activé
  • Thermal Runaway pour le plateau et le hottend
  • Mesh Bed Leveling
  • Classic Jerk
  • Baby Stepping
  • Linear Advance
  • Quick Home : permet d’aller en diagonale si vous faites un home X et Y en même temps au lieu de faire l’un et puis l’autre
  • Augmentation de la taille du buffer : pour les impressions par la connexion série. cela améliore les impressions en connexion directe par usb
  • réglage des PID pour le hotend et le plateau

Merci à Mac Ito pour les photos d’écran et les vidéos 🙂

Les photos des écrans

Séquence de boot

Démo des écrans

3dPrintBeginner – Marlin 2.0.5.3 (Genius – CM+TFT)

  • Sauvegarde de l’Eeprom
  • Autotune des PID hotend et plateau
  • Réglage manuel de niveau du plateau
  • Linear Advance 1.5 installé et préconfiguré à 0.13
  • Accélération des courbes
  • Préchauffage PLA et PETG
  • Babystepping Z activé
  • Home rapide activé (avance en biais au lieu de déplacement X puis Y)
  • Modifications du feedrate et des accélérations pour améliorer le silence

A noter le très bon guide d’installation (hélas en anglais) qui va avec.

Pinguinpfleger – Marlin 2.0.5.1 (X1 – CM+TFT)

Parmi les fonctionnalités activées de ce firmware :

  • Enregistrement vers l’EEPROM
  • Linear Advance
  • S_Curve accéleration
  • Adaptive step smoothing

G2Barbour v1.3.96 (X1+Genius – CM+TFT)

Un firmware qui fait ce que tout le monde (ou presque) attend : l’activation du M600 ! Et en plus valable pour X1 et Genius et avec ou sans Bl-Touch ! Elle est pas belle, la vie ?

Une vidéo pour vous montrer ça.

Laurent Groussin – Marlin 1.1.9 (X1 – CM+TFT)

  • Laurent a modifié les icônes et ajouté la gestion du BLTouch depuis l’écran. Mais si vous n’avez pas de BLTouch, d’abord vous n’êtes pas seul(e), et ensuite ce firmware n’est pas pour vous.

Les différents écrans

Digant – Marlin 2.0.5.4 (X1+Genius – CM+TFT)

Il s’agit d’un portage du firmware de l’écran Bigtreetech sur la X1. Il propose.

  • Bed leveling automatique, si cette fonction est activée dans Marlin
  • Bed leveling manuel
  • BabyStep utilisable pendant l’impression
  • Préchauffage pour PLA, PETG et ABS applicable à la buse et/ou au plateau chauffant.
  • Menu Gcode qui permet d’envoyer n’importe quelle commande Marlin
  • Menu Gcode préporgrammé avec différents codes : M501, M502, M500 etc.
  • Menu de réglage de la machine qui permet de paramétrer les aspects techniques comme le feed rate, l’accélération, etc.
  • Menu de fonctions qui permet de paramétrer les aspects utilisateur : activeation/descativation du détecteur de fin de filament, extinction après une impression etc

Pour résumer c’est un firmware qui semble avoir énormément de potentiel mais qui ne donne sa pleine mesure que si le firmware de la machine a été flashé avec les bonnes options activées.

Après l’avoir essayé (sur le firmware 1.1.9 de 3d-Nexus), je trouve qu’il y a énormément de fonctions. Hélas, je n’ai pas vu le Mesh Bed Levelling manuel, dommage pour ceux qui, comme moi, n’ont pas de bl-touch. Je croyais qu’on était limité à 7 fonctions personnelles sur les firmwares écran mais ce n’est manifestement pas le cas. Là il y en a partout. C’est impressionnant. Et pour le coup un peu fouillis. Mais c’est probablement une question d’habitude.

Le gros défaut en ce qui me concerne c’est que ça ne marche pas avec Octoprint. Je ne sais pas si c’est une incompatibilité avec le firmware de 3d-nexus ou avec octoprint mais j’ai du mal à me connecter à l’imprimante. Et une fois connecté, impossible de lancer la chauffe de la buse depuis octoprint.

Donc, pour moi, il y a encore des progrès à faire sur ce firmware. Mais en tout cas il faudra le suivre de très près. Surtout qu’il offre une fonction (pas testée) qui permet de flasher la machine sans débrancher la carte écran ! Ce serait génial.

Firmware TFT de RAWR

Un firmware pour écran (une version X1 et une version Genius) qui propose pas mal de choses. Il possible assez facilement de le paramétrer pour modifier les valeurs de préchauffage, par exemple.

  • M600 (changement de filament) à partir de l’usd et la carte sd sans avoir besoin de modifier Marlin !
  • PID
  • Baby Steps
  • Nivellement manuel du plateau (5 Points)

Démo du changement de filament

Firmware TFT de Fab Sarah Enzo

Firmware TFT de 3D-Nexus

Mise à jour de l’afficheur pour les SW X1 stock (20/02/2020)

Récupérez ici les fichiers pour installer ce firmware

Les firmwares pour cartes Bigtreetech

Ces firmware sont utilisés avec les cartes BTT. Cela implique donc de gros travaux de remplacement pour pouvoir les utiliser.

Voici un tableau récapitulatif des différences entre les deux versions pour BTT des firmwares Fulament.

Version stockVersion Hemera
Extrudeur stock / TitanHemera
Nivellement manuelBLTouch
Détecteurs de butée standardsDetection de butée sans capteur (sensorless homing)

Fulament pour SKR 1.4T (stock) – Marlin 2.0.5.3 (X1 – CM+TFT)

A la différence de son grand frère, cette version est adaptée aux machines équipées du hotend stock et non plus Hemera. Plus besoin non plus de BLTouch. Donc une configuration beaucoup plus courante (et accessible niveau prix). Il vous faudra toujours une carte Bigtreetech et l’écran qui va avec bien entendu.

Et toujours le très bon guide.

Mais ce n’est toujours pas pour débutants. 😉

Fulament pour SKR 1.4T (Hemera) – Marlin 2.0.5.3 (X1 – CM+TFT)

Un firmware très complet avec une liste longue comme le bras de fonctionnalités mais réservé à ceux qui sont équipés (ou qui veulent s’équiper) de cartes SKR 1.4 et de drivers 2209 en Uart et qui utilisent le Sensorless Homing, le BLTouch connecté par les pins de la LED… et un extrudeur E3D Hemera. Inutile de dire que ce n’est pas tout le monde 🙂

La aussi un très bon guide, non seulement pour flasher mais aussi pour installer la SRK 1.4 et tout le toutim. Bref un truc pour vos soirées d’hiver, entre un puzzle pour vous détendre, une pizza et une tisane. Bon, là aussi, si votre anglais si limite aux pubs McDo ou Burger King, c’est pas gagné. Mais google vous sauvera la mise… ou vous fera faire de grosses boulettes.

Donc, attention, pas pour débutants et opération à hauts risques !

Comment modifier vous-même le firmware écran

SI vous avez décidé de vous lancer dans la modification de votre firmware écran, voici une vidéo qui vous explique tout ça pour le Genius. Et donc pour la X1.