Aller au contenu

Messages recommandés

Posté(e) (modifié)

Marlin 2.0.x guide pour CR10-V2, carte mĂšre originelle (v2.5.2)

ATTENTION: Post trĂšs long (mais j'espĂšre complet 😉 ), TLDR : en fin de post. les fichiers utilisĂ©s pour compiler 😄
 

Modifications rĂ©alisĂ©es Ă  partir d’un Marlin originel 2.0.9.3 pour une Creality CR10-V2 avec sa carte mĂšre d’origine (Atmega2560, v2.5.2).

Utilisation de ce guide avec un autre version de Marlin Ă  vos risques et pĂ©rils. En modifiant quelques directives (environnement de compilation, carte mĂšre utilisĂ©e, pilotes moteurs, 
), il est possible d'adapter ce «firmware» pour qu'il fonctionne avec une autre carte que la Creality v2.5.2 😉

Modifications effectuées aprÚs lecture approfondie de la «Bible du Marlin»

Chapitres

  1. Débuter

  2. Fichiers modifiés

  3. PID autotune

  4. BLTOUCH

  5. Mesurer NOZZLE_TO_PROBE_OFFSET

  6. Unified Bed Leveling (UBL)

  7. Mesh Bed Leveling (ABL du «pauvre» mais tout de mĂȘme bien pratique)

  8. Effectuer le nivelage du lit

  9. Détection de fin de filament et remplacement du filament

  10. Linear Advance

  11. Junction Deviation

  12. Test «Tout en un» de la rétraction

  13. Compiler le firmware

  14. Flasher le firmware

  15. Mettre Ă  jour / reflasher le firmware

  16. Changelog

Débuter

  1. Installer VSCode and Git (Installation guide)

  2. Ouvrir le dossier Marlin

    1. comme dans la vidĂ©o d’installation ou

    2. Cloner Marlin via PlatformIO (Cliquer sur l’icone «Alien», puis cliquer sur "Cloner Projet Git», coller l’adresse "https://github.com/MarlinFirmware/Marlin/", presser EntrĂ©e, sauvegarder, finalement cliquer ouvrir quand le tĂ©lĂ©chargement est terminĂ©)

    3. Ou vous pouvez cloner mon dépÎt en fin de post

    4. Vous pouvez choisir la version de Marlin en bas Ă  gauche de la fenĂȘtre, par dĂ©faut la version la plus rĂ©cente sera activĂ©e

  3. Modifier votre Marlin en vous basant sur ce guide

    1. Vous pouvez utiliser les fichiers de configuration des exemples de votre carte pour une Ă©dition plus facile / rapide. La CR10V2 n’étant pas actuellement recensĂ©e parmi les modĂšles de Creality, vous pouvez utiliser ceux d’une CR10S (ou ceux tout Ă  la fin). EDIT: @thinkyhead a inclus les fichiers de configuration dans la derniĂšre version stable de Marlin (2.0.6 attention, c'est prĂ©vu pour la branche bugfixes 😉 ).

Fichiers modifiés

Modifications des fichiers platformio.ini, configuration.h et configuration_adv.h .

A - Activer | C - Changer | A&C - Activer et Changer | D - Désactiver
( Activer/Désactiver en enlevant / ajoutant les «//» en début de ligne )

platformio.ini

  • C default_envs = mega2560

Configuration.h

  • A #define SHOW_CUSTOM_BOOTSCREEN

  • A #define CUSTOM_STATUS_SCREEN_IMAGE

    • Vous devrez copier les fichiers _Bootscreen.h / _Statusscreen.h de Marlin\config\examples\Creality\CR10S\ dans le dossier Marlin\Marlin mais en ce cas, la fenĂȘtre de statut indiquera «CR10S 300» alors qu’on souhaiterai «CR10 V2» (utiliser ceux en fin de post).

    • Les fichiers «examples» du dossier config « peuvent ĂȘtre rĂ©cupĂ©rĂ©s Ă  partir de Marlin GitHub.

    • ou vous pouvez utiliser ceux fournis dans le fichier compressĂ© en fin de post (je les ai modifiĂ© afin que soit affichĂ© «CR10 V2).

  • C #define SERIAL_PORT 0

  • C #define BAUDRATE 115200 250000

    • ATMega2560 baudrate par dĂ©faut

  • C #define MOTHERBOARD BOARD_RAMPS_CREALITY

  • A&C #define CUSTOM_MACHINE_NAME "CR10-V2"

    • ou le nom que vous voulez (ex: MA CR10 Ă  MOI qu'elle me plait vraiment beaucoup 😄 )

  • C #define DEFAULT_NOMINAL_FILAMENT_DIA 1.75

  • C #define TEMP_SENSOR_BED 1

  • C #define HEATER_0__MAXTEMP 255

  • C #define BED_MAXTEMP 120

  • A #define PID_EDIT_MENU

  • A #define PID_AUTOTUNE_MENU

  • C les valeurs de P.I.D. pour la tĂȘte :

    • #define DEFAULT_Kp 19.47

    • #define DEFAULT_Ki 1.59

    • #define DEFAULT_Kd 59.40

  • A #define PIDTEMPBED

    • Vous n’ĂȘtes pas obligĂ© d’activer PIDTEMPBED, si vous ĂȘtes satisfait de votre lit chauffant. Mais en calibrant celui-ci, il montera en tempĂ©ratures plus rapidement et maintiendra celles-ci plus finement

    • N’oubliez pas de rĂ©aliser un autotune du PID du lit aprĂšs l’avoir activĂ© dans le firmware sinon la protection contre l’emballement thermique pourrait se dĂ©clencher lors de la mise en route. Allez consulter le guide dans la section PID autotune, plus bas dans ce post

  • C les valeurs de P.I.D. pour le lit :

    • #define DEFAULT_Kp 690.34

    •  #define DEFAULT_Ki 111.47

    •  #define DEFAULT_Kd 1068.83

  • C #define EXTRUDE_MAXLENGTH 435

    • Mesurez la longueur Ă  partir de la roue crantĂ©e de l’extrudeur jusqu’à la buse comme longueur de tube PTFE

  • C #define Z_MIN_ENDSTOP_INVERTING true false

  • C #define Z_MAX_ENDSTOP_INVERTING true false

  • C #define Z_MIN_PROBE_ENDSTOP_INVERTING true false

    • Le BLTouch v3/3.1 peut fonctionner soit avec true soit false, mais une erreur est signalĂ©e Ă  la compilation si rĂ©glĂ© Ă  true

  • A&C #define X_DRIVER_TYPE TMC2208_STANDALONE

  • A&C #define Y_DRIVER_TYPE TMC2208_STANDALONE

  • A&C #define Z_DRIVER_TYPE TMC2208_STANDALONE

  • A&C #define E0_DRIVER_TYPE TMC2208_STANDALONE

  • C #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 93 }

    • si vous avez montĂ© en lieu et place de l’extrudeur d’origine un autre modĂšle, remplacez 93 par le nombre de pas de celui-ci (BMG / Titan 415, BMG sans rĂ©ducteur (CR10S Pro) 140, 
)

    • pour une CR10-V3 avec un Titan comme extrudeur; le pas de l'extrudeur est de 415.

    • ATTENTION: dans le dĂ©pĂŽt Github fourni plus bas, mon extrudeur Ă©tant un pseudo BMG (celui des CR10S Pro), le pas est de 140, mon extrudeur est un BMG Ă  rĂ©duction (3:1), le pas est de 415 (montĂ© en «extrudeur volant»), pensez Ă  le modifier si vous avez l'extrudeur mĂ©tallique d'origine (pas initial de 93 qu'il est prĂ©fĂ©rable d'affiner en effectuant un rĂ©glage de celui-ci).

  • C #define DEFAULT_MAX_FEEDRATE { 750, 750, 15, 75 }

  • C #define DEFAULT_MAX_ACCELERATION { 2000, 2000, 100, 5000 }

  • C #define DEFAULT_ACCELERATION 800

  • C #define DEFAULT_RETRACT_ACCELERATION 1000

  • C #define DEFAULT_TRAVEL_ACCELERATION 800

  • A #define CLASSIC_JERK

    • Utiliser «Classic Jerk» au lieu de Junction Deviation, car JD ne fonctionne pas correctement actuellement et peut parfois engendrer de mauvais rĂ©sultats particuliĂšrement lors d’impression de courbes (https://github.com/MarlinFirmware/Marlin/issues/17146)

  • A&C #define TRAVEL_EXTRA_XYJERK 5.0

  • A #define S_CURVE_ACCELERATION

  • C #define INVERT_X_DIR false

  • C #define INVERT_Y_DIR false

  • C #define INVERT_Z_DIR true

  • C #define INVERT_E0_DIR false

Si vous avez une CR10-V3 avec son direct-drive, le moteur possĂ©dant un rĂ©ducteur (3:1), le sens de rotation de celui-ci est inversĂ©. la ligne au-dessus devra donc ĂȘtre Ă  «true»

  • C #define X_BED_SIZE 310

  • C #define Y_BED_SIZE 310

  • C #define Z_MAX_POS 400

  • A #define LCD_BED_LEVELING

  • C #define HOMING_FEEDRATE_Z (6*60)  (directive d'anciennes versions de Marlin, maintenant les vitesses de mise Ă  l'origine sont regroupĂ©es en une seule directive : #define HOMING_FEEDRATE_MM_M { (50*60), (50*60), (4*60) } )

    • Augmentez si vous trouvez que c’est trop lent mais ne dĂ©passez pas 10*60 pour l'axe Z.

  • A #define EEPROM_SETTINGS

  • A #define NOZZLE_PARK_FEATURE

  • C #define NOZZLE_PARK_POINT { (X_MIN_POS + 5), (Y_MAX_POS - 5), 10 }

  • A #define PRINTCOUNTER

  • D #define LCD_LANGUAGE fr

    • pour passer l’interface de l’écran en français si vous prĂ©fĂ©rez

  • A #define SDSUPPORT

  • A #define INDIVIDUAL_AXIS_HOMING_MENU

  • A #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

Configuration_adv.h

  • A #define QUICK_HOME

  • A #define BLTOUCH_SET_5V_MODE

  • C #define SLOWDOWN_DIVISOR 2

  • A #define LCD_INFO_MENU

  • A #define STATUS_MESSAGE_SCROLLING

  • A #define SCROLL_LONG_FILENAMES

  • D #define LIN_ADVANCE

    • L’activation du Linear Advance sur les cartes Creality «silencieuses» mĂšnent Ă  l’arrĂȘt de l’extrusion, il ne faut donc pas activer cette option.

  • C #define LIN_ADVANCE_K 0.00

    • Le guide pour calibrer la valeur K se trouve plus bas dans la section Linear Advance.

  • C #define EMERGENCY_PARSER

  • C #define ADVANCED_OK

  • A #define CANCEL_OBJECTS

PID autotune

Rien ne vous oblige Ă  activer PIDTEMPBED, si vous ĂȘtes satisfait de votre lit chauffant. Mais en calibrant celui-ci, il montera en tempĂ©ratures plus rapidement et maintiendra celles-ci plus finement.

  1. Connectez l’imprimante au PC (USB, Octoprint, etc.)

  2. Utilisez n’importe quel logiciel capable d’envoyer des commandes gcode à l’imprimante (Octoprint, Pronterface, Repetier, etc.)

  3. Connectez l’imprimante via le logiciel si la connexion n’est pas automatique (COM ??, 115200 250000)

  4. En envoyant un M301/M304 Ă  l’imprimante vous rĂ©cupĂ©rez les valeurs actuelles du PID de la HOTEND / LIT CHAUFFANT, prenez note de celles-ci

  5. Pour dĂ©buter un autotune, il faut envoyer un M303 C<nb cycles> A<index> S<tempĂ©rature> U Ă  l’imprimante.

    1. Pour la hotend j’utilise M303 C10 E0 S220 U (Hotend: E0)

      1. Activez la ventilation de refroidissement du filament pour l’autotuning du PID de la hotend

      2. C5 est normalement suffisant, mais C10 n’augmente pas le temps Ă©normĂ©ment, S<tempĂ©rature> devrait ĂȘtre 5-Ă  10° plus haut que la tempĂ©rature le plus souvent utilisĂ©e

    2. Pour le lit chauffant j’utilise M303 C8 E-1 S65 U (Lit chauffant: E-1)

      1. C5 est normalement suffisant, mais C8 n’augmente pas le temps Ă©normĂ©ment, S<tempĂ©rature> devrait ĂȘtre la tempĂ©rature la plus souvent utilisĂ©e. Si aprĂšs le M303 ... vous obtenez "PID Autotune failed! Temperature too high", envoyez un M304 P0.00 I0.00 D0.00 Ă  l’imprimante, puis refaites l’autotune du PID.

  6. Attendez que les opĂ©rations soient terminĂ©es (quand c’est fait, le cycle de chauffe s’arrĂȘte et la tempĂ©rature baisse)

  7. Prenez note des nouvelles valeurs du P. I.D. affichées

  8. Envoyez un M500 pour sauvegarder ces valeurs dans l’EEPROM

  9. Pour vérifier que ces valeurs ont bien été sauvées, envoyez un M301 / M304 pour afficher les valeurs actuelles

  10. Si les valeurs actuelles de PID ne correspondent pas aux nouvelles, alors vous devez les fixer manuellement:

  11. Hotend: Envoi d’un M301 P<valeur> I<valeur> D<valeur> à l’imprimante

  12. Lit chauffant: Envoi d’un M304 P<valeur> I<valeur> D<valeur> à l’imprimante

  13. Envoi d’un M500 pour sauvegarder ces valeurs dans l’EEPROM

  14. Dans Configuration.h mettre Ă  jour les valeurs de PID pour une prochaine mise Ă  jour du firmware (DEFAULT_Kp, ...Ki, ...Kd, DEFAULT_bedKp, ...bedKi, ...bedKd)


 

BLTOUCH

Configuration.h

  • A #define Z_STOP_PIN 19 (renommĂ© en Z_MIN_PROBE_PIN )

    • Le BLTouch est «prĂ©cĂąblé» sur le Z_MAX_PIN, le endstop originel lui est connectĂ© sur le Z_MIN_ENDSTOP_PIN

  • A #define BLTOUCH

  • C #define NOZZLE_TO_PROBE_OFFSET { 47, 0, 0 }

    • Éditez ces valeurs en fonction de votre matĂ©riel et de sa position par rapport Ă  la buse, aide dans la section Mesurer NOZZLE_TO_PROBE_OFFSET

  • C #define MIN_PROBE_EDGE 10 ( renommĂ© en PROBING_MARGIN )

    • Si vous avez des clips pour maintenir la surface d’impression (verre, miroir, 
), augmenter Ă  la taille des clips +5

  • C #define XY_PROBE_SPEED 6000 9000 ( renommĂ© en XY_PROBE_FEEDRATE )

    • Avec 6000 le 9000 BLTouch fonctionne de maniĂšre plus fiable (9000 mm/min = 150 mm/s)

  • A #define MULTIPLE_PROBING 2

    • permet d’amĂ©liorer le rĂ©sultat en effectuant plusieurs palpages

  • A #define Z_MIN_PROBE_REPEATABILITY_TEST

  • A #define AUTO_BED_LEVELING_BILINEAR

    • ou utiliser AUTO_BED_LEVELING_UBL / MESH_BED_LEVELING, liens vers des guides plus loin dans ce post

  • A #define RESTORE_LEVELING_AFTER_G28

  • A #define Z_SAFE_HOMING

Configuration_adv.h

  • A #define BABYSTEPPING

  • C #define BABYSTEP_MULTIPLICATOR_Z 4

    • 1 monte l’axe Z de 1 microstep (0.0025), 4 montera l’axe Z de 0.01

  • A #define DOUBLECLICK_FOR_Z_BABYSTEPPING

    • Double-clic avec l’écran de Statut pour Ă©diter le Z Babystepping pendant une impression

  • A #define BABYSTEP_ZPROBE_OFFSET

  • A #define BABYSTEP_ZPROBE_GFX_OVERLAY

Mesurer les valeurs Ă  saisir pour NOZZLE_TO_PROBE_OFFSET

  1. Mesurer approximativement les écarts / distances entre la pin de la sonde et la buse dans les directions X et Y

    1. La pointe de la sonde devrait ĂȘtre 2.3-4.3mm plus haut que la buse (quand la sonde est rentrĂ©e)

  2. Modifier les valeurs NOZZLE_TO_PROBE_OFFSET en fonction de vos mesures

  3. Compiler - flasher - redémarrer ...

  4. Effectuer le Homing (G28)

  5. Prenez note des coordonnĂ©es X et Y (rĂ©alisable via le menu «Move Axis» de l’écran)

  6. DĂ©placez l’axe Z vers le bas jusqu’à ce que la buse touche ou pratiquement touche le lit

  7. Marquez le point oĂč la buse touche le lit (assurez-vous que ce marquage ne se dĂ©placera pas sur le lit (utiliser du scotch de marquage par exemple))

  8. DĂ©placez les axes X et Y via le menu de l’imprimante jusqu’à ce que la pointe de la sonde soit sur la marque

  9. Prenez note des coordonnées X et Y

  10. Soustrayez les coordonnĂ©es X/Y originelles des coordonnĂ©es X/Y de la position de la pointe du BLTouch pour obtenir le NOZZLE_TO_PROBE_OFFSET. Exemple pour la CR10V2: aprĂšs le homing, la buse est en (150,150); en dĂ©plaçant le pointeur de la buse Ă  l'emplacement marquĂ© sur le plateau, la position affichĂ©e Ă  l'Ă©cran devrait ĂȘtre (103,150); donc 150-103=47 pour le X et 150-150=0 pour le Y 

Unified Bed Leveling (UBL)

Mesh Bed Leveling

(ABL du «pauvre» mais tout de mĂȘme bien pratique)

Configuration.h

Ce type de nivelage n'est à utiliser que si vous n'avez pas installé d'ABL automatique. Donc, à n'activer que si #define BLTOUCH (ou un autre ABL) ne l'est pas déjà sinon Marlin vous signalera une erreur.

  • A #define PROBE_MANUALLY

  • C #define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }

  • A #define MESH_BED_LEVELING

  • A #define RESTORE_LEVELING_AFTER_G28

  • C #define GRID_MAX_POINTS_X 5 (Ou modifiez selon vos prĂ©fĂ©rences)

  • A #define LCD_BED_LEVELING

En complĂ©ment (remarque de @Darkneo (merci Ă  toi 😉 )) il faut dĂ©sactiver certaines directives qui autrement conduisent Ă  une erreur de compilation :

  • D #define Z_MIN_PROBE_REPEATABILITY_TEST

et

  • D #define BABYSTEP_ZPROBE_OFFSET     (configuration_adv.h)

Effectuer le nivelage manuel du lit (Mesh Bed Leveling)

Chauffez votre lit Ă  la tempĂ©rature d’impression habituelle (ex : 60°C). Assurez-vous qu'il n'y a pas de plastique sur la buse, ce qui modifierait la distance de la buse par rapport au lit

  1. Sélectionner: Prepare - Bed Leveling - Level Bed

  2. Attendre que le Homing XYZ soit terminé

  3. Lorsque le bouton "Cliquer pour commencer" apparaĂźt, appuyez sur le bouton du contrĂŽleur pour vous rendre au premier point

  4. Utilisez la molette de commande pour régler Z afin qu'un morceau de papier puisse passer sous la buse en frottant

  5. Appuyez sur le bouton du contrĂŽleur pour enregistrer la valeur Z et passer au point suivant

  6. Répétez les étapes 4 et 5 jusqu'à ce que vous ayez terminé.

  7. Sélectionnez : Configuration - Enregistrer les paramÚtres pour sauvegarder le maillage dans l'EEPROM

  8. Sélectionnez : Mouvement - Hauteur de fondu : Régler sur 10

  9. Sélectionnez : Motion - Stocker les paramÚtres

  10. Faites un test d'impression et, pendant l'impression, vous pouvez modifier la distance entre la buse et le lit en mouvement via les molettes de rĂ©glage du plateau Ne surtout pas toucher aux mollettes sinon le maillage ne sera plus correct 😉 Utiliser plutĂŽt le rĂ©glage des babysteps via «double clic» sur le bouton de l'Ă©cran

  11. Sélectionnez : Configuration - Stocker les paramÚtres

Plus d’infos :

Détection de fin de filament et changement de filament

Configuration.h

  • A #define FILAMENT_RUNOUT_SENSOR

  • A&C #define FILAMENT_RUNOUT_DISTANCE_MM 5

  • C #define EXTRUDE_MAXLENGTH 435

    • Longueur de la roue crantĂ©e de l’extrudeur Ă  la buse

  • A #define NOZZLE_PARK_FEATURE

  • C #define NOZZLE_PARK_Z_FEEDRATE 3

Configuration_adv.h

  • C #define ADVANCED_PAUSE_FEATURE

  • C #define PAUSE_PARK_RETRACT_LENGTH 6

    • Modifiez par votre distance de rĂ©traction

  • C #define PAUSE_PARK_RETRACT_FEEDRATE 30

    • Modifiez par votre distance de rĂ©traction

  • C #define FILAMENT_CHANGE_UNLOAD_FEEDRATE 40

  • C #define FILAMENT_CHANGE_UNLOAD_LENGTH 435

    • Longueur de l'engrenage de l'extrudeuse Ă  la buse OU rĂ©gler sur 0 pour l'extraction manuelle du filament

  • A #define FILAMENT_CHANGE_FAST_LOAD_FEEDRATE 30

  • A #define FILAMENT_CHANGE_FAST_LOAD_ACCEL 15

  • C #define FILAMENT_CHANGE_FAST_LOAD_LENGTH 435

    • Longueur de l'engrenage de l'extrudeuse Ă  la buse OU rĂ©gler sur 0 pour l'insertion manuelle du filament

  • A #define ADVANCED_PAUSE_PURGE_LENGTH 20

  • A #define ADVANCED_PAUSE_FANS_PAUSE

  • A #define FILAMENT_UNLOAD_PURGE_RETRACT 4

  • C #define FILAMENT_CHANGE_ALERT_BEEPS 2

    • 3 peut ĂȘtre trop / Ă©nervant, si oui, diminuez Ă  votre convenance

  • A #define PARK_HEAD_ON_PAUSE

  • A #define HOME_BEFORE_FILAMENT_CHANGE

  • A #define FILAMENT_LOAD_UNLOAD_GCODES

    • Ajoute le gcode (M701/M702) et Charger/dĂ©charger dans le menu de prĂ©paration de l'Ă©cran LCD.

  • A #define HOST_ACTION_COMMANDS

  • A #define HOST_PROMPT_SUPPORT

Plus d’infos :

Voir la partie M600 - Filament Change

Chris Riley

Linear Advance

Junction Deviation

Test «Tout-en-un» de la rétraction

Compilation du firmware

J’utilise VSCode avec l’extension PlatformIO ainsi que Git GUI.

Le sujet ci-dessous décrit l'installation des logiciels nécessaires à la préparation / compilation d'un firmware Marlin :

Pour les anglicistes, Chris Riley VSCode installation guide for Marlin 2.0.

Le fichier du microprogramme issu de la compilation qui sera installé se trouve dans «../Marlin/Marlin/.pio/build/mega2560/firmware.hex»

Flashage du firmware

Plusieurs méthodes sont possibles :

  • Octoprint avec le plugin idoine (Firmware Updater),

  • des programmes (Xloader, ProgISP, Avrdudess, Avrdude (ligne de commande pour les purs et durs)
),

  • via le trancheur (Cura, Prusaslicer,
).

  • directement via VSC en cliquant sur l’icone Ă  droite de celle utilisĂ©e pour lancer la compilation.

La condition pour que ça fonctionne Ă©tant que l’imprimante soit reliĂ©e Ă  un matĂ©riel informatique via USB pour la liaison et le transfert et qu'elle soit reconnue (son pilote est correct).

On utilise le fichier firmware.hex pour flasher.

Éviter toute coupure de courant durant ce flashage, attendre que le transfert soit terminĂ© (le processus prend quelques minutes). Normalement Ă  l’issue de celui-ci, la carte doit redĂ©marrer.

Mettre Ă  jour / reflasher un firmware

Il est inutile de refaire tous les changements à chaque fois que vous voulez mettre à jour une nouvelle version de Marlin, vous devez simplement copier vos fichiers de configuration modifiés dans le nouveau marlin et les comparer dans VSC Source Control (Ctrl+Shift+G), et copier tout ce qui est nouveau ou modifié dans vos fichiers.

Tous les changements ne seront pas appliqués sur une mise à jour du microprogramme, pour cela vous devrez réinitialiser vos paramÚtres d'imprimante :

  • en allant dans le menu de l'imprimante - Configuration - Restaurer les valeurs par dĂ©faut,

  • ou en envoyant un M502 Ă  l'imprimante suivi d'un M500

Cela rĂ©initialisera vos paramĂštres en fonction des valeurs par dĂ©faut du microprogramme. Cette rĂ©initialisation est Ă  faire aprĂšs chaque installation du firmware afin d’éviter toute dĂ©convenue.

<EDIT>

Depuis la version stable 2.0.9.3, une nouvelle directive «EEPROM_INIT_NOW» permet de réaliser automatiquement la réinitialisation de l'EEPROM aprÚs flashage d'un nouveau firmware :

Citation
#if ENABLED(EEPROM_SETTINGS)
  //#define EEPROM_AUTO_INIT  // Init EEPROM automatically on any errors.
  #define EEPROM_INIT_NOW   // Init EEPROM on first boot after a new build.
#endif

Quelques explications sur les commandes M500 Ă  M503 :

Changelog

20200414 : version initiale

20200510: corrections, compléments, version «problématique» pour certains

  • dĂ©sactivation totale du LINEAR_ADVANCE qui ne l'Ă©tait pas vraiment
  • rĂ©activation du CLASSIC_JERK
  • ajout dĂ©tecteur fin de filament, directives concernant INVERTING, PULLUP, PIN

  • complĂ©ment information sur la connexion du BLTouch (Z_MAX_PIN 19)

  • ajout dans la section Flashage, programme AVRDUDESS, possibilitĂ© de flasher via VSC si ordinateur reliĂ© via USB Ă  la carte (dĂ©tection automatique du port).

20200619 : corrections, modifications

  • cosmĂ©tique : mise en Ă©vidence de certains points

  • prĂ©cisions diverses

  • la vitesse de connexion Ă  passĂ©e de 115200 Ă  250000,

  • prĂ©cision sur la dĂ©sactivation du «linear advance»

  • modification du BLOCK_BUFFER_SIZE, BUFSIZE et TX_BUFFER_SIZE dans le fichier configuration_adv.h (des valeurs trop Ă©levĂ©es amĂšnent Ă  un dĂ©passement de la capacitĂ© de stockage de la RAM pouvant conduire Ă  un Ă©cran «bleu» suite au flashage),

  • mise Ă  jour des fichiers de configurations

  • suppression du fichier binaire (chacun devra compiler son propre firmware)

20200801:

  • version de Marlin, derniĂšre en date (2.0.6)
  • suppression du fichier compressĂ© du Marlin
  • lien vers mon dĂ©pĂŽt Github (pour les plus curieux, j'ai d'autres branches de Marlin pour d'autres imprimantes / cartes mĂšres)
  • suppression du fichier binaire (je prĂ©fĂšre que les utilisateurs progressent en effectuant la compilation eux-mĂȘmes)
  • ajout explications M500 / M503

202020815:

  • corrections mineures (orthographe principalement)
  • complĂ©ment / rectification concernant les fichiers exemples de configuration fournis par Marlin (la CR10-V2 fait dĂ©sormais partie des imprimantes Ă  partir de la version stable 2.0.6)

20200918:

  • corrections mineures (orthographe principalement) passĂ©es inaperçues
  • passage de mon extrudeur Ă  un BMG Ă  rĂ©duction (3:1) dont le pas est de 415

20201012:

  • version de Marlin, derniĂšre stable : 2.0.7.1

20201026:

  • version de Marlin, derniĂšre stable : 2.0.7.2
  • complĂ©ment sur le Mesh Bed Levelling (ABL du «pauvre»)

20210111:

  • complĂ©ment pour ceux possĂ©dant une CR10-V3

20210815:

  • version de Marlin, derniĂšre stable : 2.0.9.1

20210822:

  • ComplĂ©ment afin d'indiquer les directives de compilation qui ont changĂ© de nom depuis la mise en ligne de ce tutoriel basĂ© Ă  l'origine sur un Marlin 2.0.3 : HOMING_FEEDRATE_Z, Z_STOP_PIN, MIN_PROBE_EDGE, XY_PROBE_SPEED sont dĂ©nommĂ©es autrement (merci Ă  @Pyroadu signalement 😉 )

20210927:

  • Ajout d'un lien vers un tutoriel de ce forum sur l'installation de son environnement de travail afin de faire son propre firmware

20220103:

  • version de Marlin, derniĂšre stable : 2.0.9.3
  • ajout d'une nouvelle directive permettant de rĂ©initialiser l'EEPROM automatiquement lors du premier lancement du firmware aprĂšs flashage

Les fichiers ayant servi à la compilation :   à récupérer sur mon dépÎt Github .

Modifié (le) par fran6p
compléments
  • J'aime 6
  • +1 3
  • Merci ! 10
Posté(e)

Ah ben t'as trouvé le temps :), je n'ai pas de CR10 mais cela devrait aider certains sur quelques réglages :). Et faire le PID autotune est une bonne chose ^^

  • Merci ! 1
  • fran6p pinned this topic
Posté(e)
il y a 36 minutes, doby02 a dit :

as tu déjà utilisé le réglage du retract géré par le firmware?

Non. Ce n'est pas recommandĂ© sur des cartes 8 bits 😉

🙂

Posté(e) (modifié)
Il y a 19 heures, Romain Contant a dit :

Question bĂȘte je suppose mais est ce que l'on peut utiliser ce tuto pour une ender 3 avec une carte 1.1.5 ?

Aucune question ne l'est a priori 😉

En l'adaptant / interprétant c'est faisable MAIS la différence majeure entre ma carte (v2.5.2) et la v1.1.5 est le processeur: Atmega2560 pour la prmeiÚre, Atmega1284p pour la seconde. Autrement dit, la v1.1.5 possÚde deux fois moins de mémoire (128Ko) que le 2.5.2 (256 Ko). Il faudra probablement désactiver certaines fonctions non essentielles, par exemple en activant la directive SLIM_LCD_MENUS qui enlÚve quelques menus (les moins importants) de l'écran.

Par contre, le Marlin 2 (version stable) n'est pas vraiment recommandé sur des cartes 8 bits avec aussi peu de mémoire (v1.1.5).

En préambule, j'avais mis en exergue :

Révélation

Utilisation de ce guide avec un autre version de Marlin à vos risques et périls

L'Ă©cran des Ender3 n'est pas le mĂȘme que sur ma CR10V2 donc il faudrait le modifier aussi


🙂

Pour un Marlin plus adapté à une Ender3 (si tu n'as pas de Bltouch) tu peux partir sur ce post :

 

🙂

Modifié (le) par fran6p
Posté(e)
Il y a 3 heures, fran6p a dit :

Atmega2560 pour la prmeiÚre, Atmega1284p pour la seconde. Autrement dit, la v1.1.5 possÚde deux fois moins de mémoire (128Mo) que le 2.5.2 (256 Mo).

Tu t'es emballé lol, ce sont des Ko

Posté(e)

@doby02

Tu as parfaitement raison, j'ai corrigĂ© 😉

Posté(e) (modifié)

@fran6p

Pour infos,  Les sources sont maintenant disponible pour la CR-10 V2 chez Creality.

Modifié (le) par zigomatic
Posté(e)

@zigomatic

Merci mais je l'ai déjà indiqué ici :

🙂

  • 2 weeks later...
Posté(e)
Il y a 7 heures, romainperea a dit :

merci beaucoup pour ton tuto

De rien, c'est le principe du forum: aider quand / si on le peut.

Tu peux aussi remercier un contributeur, en cliquant sur le cƓur au bas de son post (il offre aussi d'autres possibilitĂ©s 😉 ). Ça permet de rĂ©agir / d'indiquer son "opinion" sans forcĂ©ment devoir complĂ©ter par Ă©crit un post. Et cerise sur le gĂąteau, cela amĂ©liore sa rĂ©putation 😄

946060224_apprciations-explications.jpg.74d8781a5231c272cf26a5928a5b2016.jpg

🙂

  • J'aime 1
Posté(e)

Hello,

Super tuto !

Question débutant, mais saurais tu comment flasher un bootloader sur la CM d'origine  d'une CR10 V2?
J'ai eu un problĂšme lors du flash et depuis impossible de reflasher quelque chose dessus...

Le port com est bien détecté sur mon pc mais impossible d'écrire dessus peut importe la maniÚre.

J'ai recommandé une nouvelle CM dans le cas ou je ne trouverai pas de réponse mais je déteste rester sur un échec...

Merci pour ton aide.

Posté(e)

Bonjour,

 

Merci pour ton travail :). Je suis débutant en impression 3, j'ai une CR10 V2 sur laquelle j'ai mis un BLT. Cependant, la commande G29 n'est pas reconnue lors du démarrage malgré qu'elle soit bien dans le script.

J'ai bien flashé avec le firmware (+BLT) que j'avais récupéré sur le site officiel de CREALITY mais apparement il serait foireux... 

Est-il possible de remettre up le lien avec ton .hex car actuellement il est down :(.

 

Merci par avance.

 

Romain

Posté(e)
Il y a 21 heures, romaindu13770 a dit :

Est-il possible de remettre up le lien avec ton .hex car actuellement il est down :(.

???

Je viens de tester, en cliquant sur le fichier.hex en fin de post, il se charge et me demande oĂč l'enregistrer sur mon PC. Il est hĂ©bergĂ© directement sur le forum car sa taille ne dĂ©passe les 9,7Mo.

🙂

PS: il faudrait que je mette Ă  jour car bien que fonctionnel, ce n'est pas la derniĂšre version.

  • 4 weeks later...
Posté(e)

Pour éviter de polluer mon post qui ne concerne que l'installation de Marlin v2.0.5.3 sur une CR10-V2, j'ai créé le sujet suivant qui concerne les problÚmes divers et variés liés à la gestion du BLTouch:

🙂

Merci de crĂ©er de nouveaux sujets si le problĂšme / questionnement ne concerne pas Marlin et CR10-V2 😉

  • 2 weeks later...
Posté(e)

bien jouĂ©, ca aidera les non francophones a configurer une cr-10 v2 plus simplement avec Marlin 😉

Posté(e)

Ouah, le @thinkyhead de Marlin
 J'aurais capté bien plus vite si son avatar avait été le bien connu : avatar-thinkyhead.jpg.15120e98b8bd1815352fb1192efa50d8.jpg

Bien vu, ça m'Ă©vite de faire un PR (chose que je ne sais pas faire 😄 ).

Merci Monsieur Scott

🙂

  • J'aime 1
Posté(e)

Sorry for not talking French, but believe me, you will understand my English better then my French 😉

I own a CR-10 v2 (stock) and I successfully compiled the latest Marlin code with the provided configuration. I disabled the bltouch include. After that I flash with avrdude, but after flashing nothing happens. I then reset the control box but only the LCD lights up, but no message anything. I tried to flash the attached hex file from the first post, but I get the same behavior.
Flashing back the stock firmware with avrdude works, but none of the new firmware does boot. Do I need to update the bootloader maybe?

Posté(e)

try to update with the freshly compiled firmware from @Fran6p, but choose the compiled HEX file that include the bootloader.

  • J'aime 1
Posté(e)
il y a 3 minutes, romainperea a dit :

try to update with the freshly compiled firmware from @Fran6p, but choose the compiled HEX file that include the bootloader.

Thank you for your reply in English. I think I get it now what is wrong on my end: It seems to only flash the program and not the included bootloader... I need to change my avrdude command I guess. (or use other software)

Créer un compte ou se connecter pour commenter

Vous devez ĂȘtre membre afin de pouvoir dĂ©poser un commentaire

Créer un compte

CrĂ©ez un compte sur notre communautĂ©. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • CrĂ©er...