Il est très facile d’installer le firmware Marlin sur l’imprimante 3D Anet A8. Marlin est projet Open Source compatible avec la plupart des kits d’imprimantes 3D Reprap. La majorité des fabricants personnalisent ce firmware pour l’adapter à leurs imprimantes. C’est par exemple le cas d’Anet. Comme tout projet informatique, le firmware évolue, soit pour ajouter de nouvelles fonctions, soit pour corriger des bugs. Il peut être intéressant de mettre à jour le firmware de votre imprimante 3D par exemple pour ajouter la fonction d’auto-leveling (auto-bed) si elle n’est pas proposée par le firmware d’origine.
C’est par exemple le cas pour l’Anet A8 si on veut remplacer le capteur de fin de course de l’axe Z par un capteur de proximité. Dans l’article précédent, nous avons vu comment installer le firmware Skynet3D qui n’est rien d’autre que le firmware Marlin avec des fichiers de configuration pré-définis pour les imprimantes 3D A8, l’A6 et l’A2.
Sommaire
- 1 Que devient le firmware d’origine ?
- 2 Sur quelle imprimante 3D peut-on installer le firmware Marlin ?
- 3 Télécharger le firmware Marlin
- 4 Configurer l’IDE Arduino pour l’imprimante 3D Anet A8 ou A6
- 5 Installer la librairie Sanguino
- 6 Configurer le firmware Marlin pour l’Anet A8
- 7 Installer le firmware Marlin à l’aide de l’IDE Arduino
- 8 Personnaliser le firmware, interface en français
- 9 Impossible de téléverser le firmware Marlin
- 10 Imprimante 3D Anet A8 en promo
- 11 Accessoires et pièces de rechange pour les imprimantes 3D Anet A6 ou A8
Que devient le firmware d’origine ?
Il va être tout simplement effacé ainsi que tous les réglages. S vous avez une Anet A6 ou A8, suivez ce tutoriel pour ré-installer le firmware d’origine.
Sur quelle imprimante 3D peut-on installer le firmware Marlin ?
Le firmware Marlin peut être installé sur les cartes mères d’un très grand nombre de kit d’impression 3D.Le firmware Marlin est avant tout un programme Arduino. La communauté qui développe le firmware Marlin depuis novembre 2011 (historique des versions) adapte le code pour qu’il soit possible de l’installer sur les micro-contrôleurs des kits d’imprimantes 3D. C’est également très intéressant pour les fabricants de kits économiques (Anet, ) qui peuvent l’utiliser sans avoir à supporter les coûts de développement et de maintenance.
Voici la liste des cartes mères supportées par la version 1.1.8 (décembre 2017). La liste est disponible sur la documentation officielle.
Petit info au passage, on retrouve dans la liste la carte Melzi utilisée sur les Dagoma Discovery et Disco Easy. Comme j’ai encore mon ancienne Discorey200 qui fonctionne, on verra dans le prochaine tutoriel comment mettre à jour le firmware.
Constante à utiliser dans la configuration | MCU | Fichier de repérage des broches | Nom de la carte mère |
---|---|---|---|
BOARD_3DRAG | Arduino | pins_3DRAG.h | 3DRAG RAMPS v1.4 |
BOARD_AZTEEG_X3 | Arduino | pins_AZTEEG_X3.h | Azteeg X3 RAMPS v1.4 |
BOARD_AZTEEG_X3_PRO | Arduino | pins_AZTEEG_X3_PRO.h | Azteeg X3 PRO RAMPS v1.4 |
BOARD_BAM_DICE | Arduino | pins_RAMPS_14.h | 2PrintBeta BAM&DICE |
BOARD_BAM_DICE_DUE | Arduino | pins_BAM_DICE_DUE.h | 2PrintBeta BAM&DICE Due |
BOARD_BQ_ZUM_MEGA_3D | Arduino | pins_BQ_ZUM_MEGA_3D.h | bq ZUM Mega 3D |
BOARD_CHEAPTRONIC | Arduino | pins_CHEAPTRONIC.h | Cheaptronic v1.0 |
BOARD_CHEAPTRONIC_V2 | Arduino | pins_CHEAPTRONIC_V2.h | Cheaptronic v2.0 |
BOARD_CNCONTROLS_11 | Arduino | pins_CNCONTROLS_11.h | Cartesio CN Controls V11 |
BOARD_CNCONTROLS_12 | Arduino | pins_CNCONTROLS_12.h | Cartesio CN Controls V12 |
BOARD_ELEFU_3 | Arduino | pins_ELEFU_3.h | Elefu RA |
BOARD_FELIX2 | Arduino | pins_FELIX2.h | FELIXprinters v2.0/3.0 |
BOARD_K8200 | Arduino | pins_K8200.h | Velleman K8200 RAMPS v1.3 |
BOARD_K8400 | Arduino | pins_K8400.h | Velleman K8400 RAMPS v1.4 |
BOARD_LEAPFROG | Arduino | pins_LEAPFROG.h | Leapfrog Driver board |
BOARD_MEGACONTROLLER | Arduino | pins_MEGACONTROLLER.h | Mega Controller |
BOARD_MEGATRONICS | Arduino | pins_MEGATRONICS.h | MegaTronics |
BOARD_MEGATRONICS_2 | Arduino | pins_MEGATRONICS_2.h | MegaTronics v2.0 |
BOARD_MEGATRONICS_3 | Arduino | pins_MEGATRONICS_3.h | MegaTronics v3.0 |
BOARD_MEGATRONICS_31 | Arduino | pins_MEGATRONICS_31.h | MegaTronics v3.1 |
BOARD_MINIRAMBO | Arduino | pins_MINIRAMBO.h | Mini RAMBo |
BOARD_MKS_13 | Arduino | pins_MKS_13.h | MKS v1.3 |
BOARD_MKS_BASE | Arduino | pins_MKS_BASE.h | MKS BASE 1.0 |
BOARD_RAMBO | Arduino | pins_RAMBO.h | RAMBo |
BOARD_RAMPS_13_EEB | Arduino | pins_RAMPS_13.h | RAMPS v1.3 (Extruder, Extruder, Bed) |
BOARD_RAMPS_13_EEF | Arduino | pins_RAMPS_13.h | RAMPS v1.3 (Extruder, Extruder, Fan) |
BOARD_RAMPS_13_EFB | Arduino | pins_RAMPS_13_EFB.h | RAMPS v1.3 (Extruder, Fan, Bed) |
BOARD_RAMPS_13_EFF | Arduino | pins_RAMPS_13.h | RAMPS v1.3 (Extruder, Fan, Fan) |
BOARD_RAMPS_13_SF | Arduino | pins_RAMPS_13.h | RAMPS v1.3 (Spindle, Controller Fan) |
BOARD_RAMPS_14_EEB | Arduino | pins_RAMPS_14.h | RAMPS v1.4 (Extruder, Extruder, Bed) |
BOARD_RAMPS_14_EEF | Arduino | pins_RAMPS_14.h | RAMPS v1.4 (Extruder, Extruder, Fan) |
BOARD_RAMPS_14_EFB | Arduino | pins_RAMPS_14_EFB.h | RAMPS v1.4 (Extruder, Fan, Bed) |
BOARD_RAMPS_14_EFF | Arduino | pins_RAMPS_14.h | RAMPS v1.4 (Extruder, Fan, Fan) |
BOARD_RAMPS_14_SF | Arduino | pins_RAMPS_14.h | RAMPS v1.4 (Spindle, Controller Fan) |
BOARD_RAMPS_OLD | Arduino | pins_RAMPS_OLD.h | RAMPS v1.0, v1.1, v1.2 |
BOARD_RIGIDBOARD | Arduino | pins_RIGIDBOARD.h | RIGIDBOARD RAMPS v1.4 |
BOARD_RIGIDBOARD_V2 | Arduino | pins_RIGIDBOARD_V2.h | RIGIDBOARD v2 |
BOARD_RUMBA | Arduino | pins_RUMBA.h | RUMBA |
BOARD_SAINSMART_2IN1 | Arduino | pins_SAINSMART_2IN1.h | Sainsmart 2-in-1 |
BOARD_SCOOVO_X9H | Arduino | pins_SCOOVO_X9H.h | abee Scoovo X9H |
BOARD_ULTIMAIN_2 | Arduino | pins_ULTIMAIN_2.h | Ultiboard v2.0 |
BOARD_ULTIMAKER | Arduino | pins_ULTIMAKER.h | Ultimaker |
BOARD_ULTIMAKER_OLD | Arduino | pins_ULTIMAKER_OLD.h | Ultimaker “old electronics” |
BOARD_ZRIB_V20 | Arduino | pins_BOARD_ZRIB_V20.h | zrib V2.0 (Chinese RAMPS replica) |
BOARD_BRAINWAVE | Brainwave | pins_BRAINWAVE.h | Brainwave 1.0 |
BOARD_BRAINWAVE_PRO | Brainwave | pins_BRAINWAVE_PRO.h | Brainwave Pro |
BOARD_GEN7_12 | Gen7 | pins_GEN7_12.h | Gen7 v1.1, v1.2 |
BOARD_GEN7_13 | Gen7 | pins_GEN7_13.h | Gen7 v1.3 |
BOARD_GEN7_14 | Gen7 | pins_GEN7_14.h | Gen7 v1.4 |
BOARD_GEN7_CUSTOM | Gen7 | pins_GEN7_CUSTOM.h | Gen7 “Alfons3” |
BOARD_MINITRONICS | Minitronics | pins_MINITRONICS.h | Minitronics v1.0/1.1 |
BOARD_ANET_10 | Sanguino | pins_ANET_10.h | Anet V1.0 by SkyNet3D |
BOARD_AZTEEG_X1 | Sanguino | pins_AZTEEG_X1.h | Azteeg X1 |
BOARD_GEN3_MONOLITHIC | Sanguino | pins_GEN3_MONOLITHIC.h | Gen3 Monolithic Electronics |
BOARD_GEN3_PLUS | Sanguino | pins_GEN3_PLUS.h | Gen3+ |
BOARD_GEN6 | Sanguino | pins_GEN6.h | Gen6 |
BOARD_GEN6_DELUXE | Sanguino | pins_GEN6_DELUXE.h | Gen6 Deluxe |
BOARD_MELZI | Sanguino | pins_MELZI.h | Melzi |
BOARD_MELZI_MAKR3D | Sanguino | pins_MELZI_MAKR3D.h | Melzi “MaKr3d” |
BOARD_OMCA_A | Sanguino | pins_OMCA.h | Open Motion controller |
BOARD_SANGUINOLOLU_11 | Sanguino | pins_SANGUINOLOLU_11.h | Sanguinololu |
BOARD_SANGUINOLOLU_12 | Sanguino | pins_SANGUINOLOLU_12.h | Sanguinololu v1.2 |
BOARD_STB_11 | Sanguino | pins_STB_11.h | STB V1.1 |
BOARD_OMCA | SanguinoA | pins_OMCA_A.h | Open Motion controller “Alpha” |
BOARD_SETHI | Sethi 3D | pins_SETHI.h | Sethi 3D_1 |
BOARD_5DPRINT | Teensy++ 2.0 | pins_5DPRINT.h | Makibox 5DPD8 |
BOARD_PRINTRBOARD | Teensy++ 2.0 | pins_PRINTRBOARD.h | Printrboard |
BOARD_PRINTRBOARD_REVF | Teensy++ 2.0 | pins_PRINTRBOARD_REVF.h | Printrboard RevF |
BOARD_SAV_MKI | Teensy++ 2.0 | pins_SAV_MKI.h | SAV MkI |
BOARD_TEENSY2 | Teensy++ 2.0 | pins_TEENSY2.h | Teensy++ 2.0 |
BOARD_TEENSYLU | Teensy++ 2.0 | pins_TEENSYLU.h | Teensylu 0.7 |
Télécharger le firmware Marlin
Le projet Marlin est hébergé sur GitHub sur cette page. Comme d’habitude, cliquez sur Clone or download puis Download ZIP. Décompressez et ouvrez le dossier du projet.
Comme vous pouvez le constater, vous pouvez également utiliser PlatformIO pour compiler et téléverser le firmware.
Nous allons maintenant préparer l’IDE Arduino pour pouvoir se connecter et téléverser sur l’Anet A8
Configurer l’IDE Arduino pour l’imprimante 3D Anet A8 ou A6
Contrairement à Skynet3D, Marlin n’est livré avec aucun fichier de configuration permettant de se connecter à l’imprimante (et compiler le code) depuis l’IDE Arduino. On va donc récupérer ce qu’il nous faut en téléchargeant Skynet3D sur GitHub ici (vous pouvez suivre ce tutoriel en détail si ça vous intéresse). Décompressez le fichier ZIP de Skynet3D. Voici son contenu
Installez l’IDE Arduino sur votre ordinateur (Windows, Linux ou macOS) depuis cette page si vous ne l’avez pas encore fait. Installez l’IDE Arduino comme n’importe quel autre logiciel.
Lancez une première fois l’IDE Arduino puis quittez le. Ouvrez le dossier Documents. Allez dans le dossier Arduino puis hardware.
Dans le projet Skynet3D, ouvrez le dossier Arduino-1.8.0 puis hardawre. Copiez le dossier Anet et collez le dans le dossier hardware de l’IDE Arduino précédemment ouvert.
Supprimez le fichier platform.local.txt qui se trouve dans le sous-dossier avr car ce fichier génère cette erreur de compilation
fork/exec /usr/local/bin/generate_version_header_for_marlin: no such file or directory Erreur de compilation pour la carte Anet V1.0
Installer la librairie Sanguino
Pour les kits ReRap à base d’Arduino Mega 2560, il n’y a rien à installer pour se connecter à la carte mère. Pour les autres cartes, Marlin conseille d’installer la libraire Sanguino développée par Kristian Sloth Lauszus (page GitHub du projet). Cette librairie permet de se connecter à des cartes de développement à base d’Atmega 644, 644P, 1284P (8 ou 16Mhz), ce qui est le cas de la carte mère des imprimantes 3D Anet3D A2, A6 et A8. Le firmware Skynet3D utilise d’ailleurs cette librairie comme on peut le voir dans le fichier boards.txt qui se trouve dans le dossier arduino-1.8.0/hardware/anet/avr.
# See: https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5---3rd-party-Hardware-specification # See: http://code.google.com/p/arduino/wiki/Platforms ############################################################## menu.cpu=Processor ######################################## ## Anet V1 (sanguino clone) - ######################################## anet.name=Anet V1.0 anet.upload.tool=arduino:avrdude anet.upload.protocol=arduino anet.upload.maximum_size=131072 anet.upload.speed=57600 anet.bootloader.low_fuses=0xD6 anet.bootloader.high_fuses=0xDA anet.bootloader.extended_fuses=0xFD anet.bootloader.unlock_bits=0x3F anet.bootloader.lock_bits=0x0F anet.build.mcu=atmega1284p anet.build.f_cpu=16000000L anet.build.board=AVR_SANGUINO anet.build.core=arduino:arduino anet.build.variant=sanguino anet.bootloader.file=atmega/ATmegaBOOT_168_atmega1284p.hex anet.bootloader.tool=avrdude
Malheureusement, ça ne fonctionne pas chez moi. J’obtiens les erreurs suivantes au moment de téléverser le code sur la carte mère.
Les variables globales utilisent 4161 octets (25%) de mémoire dynamique, ce qui laisse 12223 octets pour les variables locales. Le maximum est de 16384 octets. avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x73 avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x74 avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x61 avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x72 avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x74 avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x0a avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x65 avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x63 avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x68 avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x6f Une erreur est survenue lors du transfert du croquis
Pour le moment, on est donc condamné à récupérer la librairie dans le projet Skynet3D en attendant une mise à jour de la librairie Sanguino. J’ai d’abord pensé que c’était un problème avec le bootloader et donc ré-installé le firmware d’origine mais sans succès. Si quelqu’un trouve la solution, je suis preneur.
Configurer le firmware Marlin pour l’Anet A8
Ouvrez le dossier contenant Marlin et allez dans le dossier Marlin puis example_configurations. Vous allez y trouver des fichiers de configuration pour les principales imprimantes listées précédemment. Beaucoup d’imprimantes sont aujourd’hui obsolètes
Collez le ou les fichiers de configuration de votre imprimante à la racine du projet (au même niveau que le fichier marlin.ino). Pour l’A6 ou l’A8, il y deux fichiers configuration.h et configuration_adv.h (configuration avancée).
Installer le firmware Marlin à l’aide de l’IDE Arduino
Tout est prêt. Lancez l’IDE Arduino et ouvrez le projet du firmware marlin.
Personnaliser le firmware, interface en français
Le firmware est pré-configuré mais on peut encore le personnaliser un peu plus. La première chose à faire est de mettre l’interface en français :D.
Pour cela cherchez la clé LCD_LANGUAGE. Indiquez fr, les caractères accentués (fr_utf8) ne s’affichent pas correctement.
On peut également personnaliser le nom de l’imprimante en dé-commentant la clé CUSTOM_MACHINE_NAME et en indiquant un nom.
Voilà, il ne reste plus qu’à téléverser le programme. L’imprimante redémarre avec le firmware Marlin fraichement installé.
Et en français en prime 😀
En prime, puisque vous êtes sur l’IDE Arduino, profitez-en pour ouvrir le moniteur série. Sélectionnez la vitesse configurée par la clé BAUDRATE dans le fichier configuration.h
Voilà, je ne peux malheureusement pas tester pour toutes les imprimantes du marché. Je compte sur vous pour nous aider à trouver les fichiers de configuration pour les autres imprimantes. Si vous rencontrez des difficultés ou si vous avez d’autres astuces, les commentaires sont à votre disposition.
Impossible de téléverser le firmware Marlin
Pour une raison qui m’échappe, de temps en temps, il n’est pas possible de téléverser le firmware sur la carte mère de l’imprimante. Voici ce que vous pouvez faire tenter dans ce cas :
- Débrancher puis remettre sous tension l’imprimante
- Appuyer sur le bouton reset présent sur la carte mère dès que le téléversement commence
- Débrancher puis rebrancher le câble USB puis recommencer à téléverser.
Si vous avez d’autres astuces, profitez des commentaires. Merci
Imprimante 3D Anet A8 en promo
Fasttech.com
Geekbuying.com
Gearbest.com
Banggood.com
Banggood.com
454,99€
En Stock
actualisé le 6 février 2021 20 h 54 min ⓘ
Accessoires et pièces de rechange pour les imprimantes 3D Anet A6 ou A8
L’Anet A6 est une version améliorée de l’A8.
Avez-vous aimé cet article ?
[Total: 0 Moyenne: 0]