Aller au contenu

GO Print

Problème de nivellement - Creality Ender3 + Genuine BLTouch


Messages recommandés

Bonjour à tous et à toutes,

J'écris encore un topic ici pour demander de l'aide, car depuis des semaines je galère avec le réglage de mon Z-Offset pour mon BLTouch (mais pas que). Et la, je pense avoir trouvé un bon réglage pour le Z-Offset, sauf que quand je lance un print, le capteur palpe bien les 9 points sur le plateau mais ensuite l'imprimante ne tient PAS DU TOUT compte du palpage qu'elle vient d'effectuer... En gros, il fait le niveau du lit pour rien...

J'utilise Ultimaker Cura 4.7.1. Côté imprimante, j'ai le firmware fourni par Creality pour l'ender 3 avec le BLTouch. ça fait des semaines que j'ai pas réussi à pondre un print correct et ça commence un peu à me les gonfler...

Voici mon GCode de démarrage :

; Ender 3 Custom Start G-code
M140 S{material_bed_temperature_layer_0} ; Set Heat Bed temperature
M190 S{material_bed_temperature_layer_0} ; Wait for Heat Bed temperature
G92 E0 ; Reset Extruder
M104 S{material_print_temperature_layer_0} ; Set Extruder temperature
M109 S{material_print_temperature_layer_0} ; Wait for Extruder temperature
G28
G29
M500
M501
G1 Z1.0 F3000 ; move z up little to prevent scratching of surface
G1 X0.1 Y20 Z0.3 F5000.0 ; move to start-line position
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; draw 1st line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; move to side a little
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; draw 2nd line
G92 E0 ; reset extruder
G1 Z1.0 F3000 ; move z up little to prevent scratching of surface
; End of custom start GCode
M420 S1
M500
M420 V

Merci par avance à toutes les âmes charitables qui m'aideront dans ma quête d'un print correct ^^
Cordialement,
SyFizz_

Lien vers le commentaire
Partager sur d’autres sites

Si tu veux je te donne mon g-codes de démarrage 

G21 ; set units to millimetrers
M190 S[bed_temperature]
M104 S[temperature]
G28 ; home all axes
G1 Z5 F3000 ; lift nozzle

ca ces le fin de cycle

G28 X0 ; home X axes
G0 X5 Y205
M140 S0 ; turn off temperature
M109 S0 ; turn off temperature
M84 ; disable motors
M117 finished

Modifié (le) par pafpaf
Lien vers le commentaire
Partager sur d’autres sites

Il y a 5 heures, pafpaf a dit :

Si tu veux je te donne mon g-codes de démarrage 

G21 ; set units to millimetrers
M190 S[bed_temperature]
M104 S[temperature]
G28 ; home all axes
G1 Z5 F3000 ; lift nozzle

ca ces le fin de cycle

G28 X0 ; home X axes
G0 X5 Y205
M140 S0 ; turn off temperature
M109 S0 ; turn off temperature
M84 ; disable motors
M117 finished

Merci, mais ça ne m'aide pas des masses puisque apparemment t'as pas d'ABL 😕

Lien vers le commentaire
Partager sur d’autres sites

Salut,
Comme tu n'as pas beaucoup de réponses, je me permets d'intervenir. Déjà, je veux t'avertir que je suis en cours de montage d'un système de palpage, donc ce que je vais dire est à prendre avec des pincettes.
Alors, si tu souhaites faire un nivellement au début de chaque impression, je trouve que tu as beaucoup trop de ligne dans ton gcode.
Dans ton gcode, pour moi, les lignes qui suivent sont inutiles:
1- M500 //tu sauves le résultat du nivellement,
2- M501 //tu charges les variables de l'eeprom,
... tu fais des mouvements
3- M420 S1 //tu appliques le nivellement du G29 (sauvegardé),
4- M500 //tu re-sauvegardes l'eeprom
5- M420 V //tu affiches le résultat du nivellement
Pour résumer, systématiquement, tu fais un nivellement que tu sauvegardes et que tu écraseras lors de la prochaine impression...🥴

D'après ce que j'ai vu et lu (ici ou et ici ), cela se limite à un G29, après le G28. Normalement le résultat sera appliqué dans le reste du programme.

Question: comment sais-tu que le nivellement n'est pas pris en compte?
par exemple, as-tu ajouté un gros défaut (5 à 6 épaisseurs de scotch) au milieu de ton plateau (froid) et lancer une impression (sans filament) d'un grand carré (100x100?) au centre du plateau, avec une hauteur de couche initiale (ou Z offset) suffisamment élevée pour ne pas toucher le défaut?

Tiens nous informé, ce sujet m'intéresse beaucoup.
Remarque: multiplier les écritures dans l'eeprom du microcontrôleur n'est pas recommandé puisque cette opération est limitée à un certain nombre de fois (très élevé, certes, mais limité, sous peine d'erreur).

  • +1 1
Lien vers le commentaire
Partager sur d’autres sites

Il y a 3 heures, remibora a dit :

Salut,
Comme tu n'as pas beaucoup de réponses, je me permets d'intervenir. Déjà, je veux t'avertir que je suis en cours de montage d'un système de palpage, donc ce que je vais dire est à prendre avec des pincettes.
Alors, si tu souhaites faire un nivellement au début de chaque impression, je trouve que tu as beaucoup trop de ligne dans ton gcode.
Dans ton gcode, pour moi, les lignes qui suivent sont inutiles:
1- M500 //tu sauves le résultat du nivellement,
2- M501 //tu charges les variables de l'eeprom,
... tu fais des mouvements
3- M420 S1 //tu appliques le nivellement du G29 (sauvegardé),
4- M500 //tu re-sauvegardes l'eeprom
5- M420 V //tu affiches le résultat du nivellement
Pour résumer, systématiquement, tu fais un nivellement que tu sauvegardes et que tu écraseras lors de la prochaine impression...🥴

D'après ce que j'ai vu et lu (ici ou et ici ), cela se limite à un G29, après le G28. Normalement le résultat sera appliqué dans le reste du programme.

Question: comment sais-tu que le nivellement n'est pas pris en compte?
par exemple, as-tu ajouté un gros défaut (5 à 6 épaisseurs de scotch) au milieu de ton plateau (froid) et lancer une impression (sans filament) d'un grand carré (100x100?) au centre du plateau, avec une hauteur de couche initiale (ou Z offset) suffisamment élevée pour ne pas toucher le défaut?

Tiens nous informé, ce sujet m'intéresse beaucoup.
Remarque: multiplier les écritures dans l'eeprom du microcontrôleur n'est pas recommandé puisque cette opération est limitée à un certain nombre de fois (très élevé, certes, mais limité, sous peine d'erreur).

Bonjour,

Merci pour ta réponse, je vais virer les écritures dans l'eeprom, histoire de pas avoir de soucis ^^ Pour le "M420 V", je l'avais mis juste pour avoir le "Bed Levelling : On" dans le terminal, histoire de vérifier qu'il était activé après tout ça.

Et pour répondre à ta question, je sais que le nivellement n'est pas pris en compte car j'ai la buse qui frotte allègrement le bed dans le coin inférieur gauche, mais qui est largement trop haute dans le coin inférieur droit... je n'ai jamais été plus loin car j'ai déjà un peu déterioré mon ultrabase à cause de ça...

 

Cordialement,

SyFizz_

Lien vers le commentaire
Partager sur d’autres sites

  • 3 weeks later...

Bonjour,

Après un bon moment ou je n'avais pas le temps de m'occuper le l'imprimante, je m'y remet, donc du coup, pour répondre à tes questions, en fait j'utilise le firmware fourni par Creality avec le BLTouch, et comme j'ai monté le BLTouch à l'endroit prévu à cet effet, je présume que le décalage est prédéfini dans le firmware étant donné qu'ils ne donnent pas les sources

 

Cordialement,

SyFizz_

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Si tu le souhaites, je peux t'aider à compiler la dernière version de Marlin pour ton imprimante. Tu auras une version adaptée à tes besoins et en français. Il suffit d'indiquer la référence exacte de ta carte-mère et l'inscription sur le microcontrôleur (atmega2560, atmega1280,ARM,...).

Modifié (le) par remibora
Lien vers le commentaire
Partager sur d’autres sites

Bah en fait je l'avais pas fait parce que j'arrive pas à installer le bootloader sur ma carte mère... en plus j'ai aucun outil de mesure précis pour mesurer les décalages en question (mais je vais bientôt avoir mon pied à coulisse numérique)

 

Mais la carte mère est une Creality3D 1.1.4 avec un ATMega 1284P

Modifié (le) par SyFizz_
Lien vers le commentaire
Partager sur d’autres sites

il y a 10 minutes, SyFizz_ a dit :

j'arrive pas à installer le bootloader sur ma carte mère

Comme tu as déjà flashé le firmware sur ta machine, cela signifie que tu as déjà un bootloader valide. Pourquoi penses-tu que tu as besoin d'installer le bootloader?

Lien vers le commentaire
Partager sur d’autres sites

En fait le firmware est livré en .hex, et je l'ai flashé avec le logiciel progisp1.72, et pas avec le logiciel Arduino, j'ai lu à plusieurs endroits que la Creality Ender 3 était livrée sans BootLoader

Citation

Comme tu as déjà flashé le firmware sur ta machine, cela signifie que tu as déjà un bootloader valide. Pourquoi penses-tu que tu as besoin d'installer le bootloader?

Lien vers le commentaire
Partager sur d’autres sites

Quelle est la version de ton BLTouch V3.0/V3.1 ou V2.x/V1.x?

EDIT: voici un firmware compilé en supposant que tu avais un BLTouch V3.x. Attention, les déplacements sont potentiellement inversés. Avant de lancer une prise d'origine (Home), je te conseille de déplacer, via le menu de l'imprimante, les 3 axes pour vérifier ce point.

J'ai dû sortir le chausse-pied pour arriver à compiler une version compatible avec la taille mémoire de ton microcontrôleur. Cela signifie que j'ai enlevé un nombre certain de fonctionnalités dont le M500 et M501. Cela signifie que les paramètres spécifiques à ta machine devront être écris dans ton Gcode de démarrage. Dans un premier temps, indique moi si le firmware est globalement opérationnel (affichage, pilotage des moteurs).

Pour le BLtouch, je te conseille de le tester manuellement:

0- la led du BLTouch est rouge fixe (si elle clignote, c'est qu'il y a un défaut)
1- tu sors la touche: M280 P0 S10
2- tu tapes: M119 (pour voir l'état des fins de course).
3- tu enfonces la touche à la main (normalement, la led change de couleur, bleue normalement )
4- tu retapes: M119 (l'état du fin de course Zmin a dû changer)
5- tu rentres la touche: M280 P0 S90

firmware.hex

Modifié (le) par remibora
Lien vers le commentaire
Partager sur d’autres sites

Il y a 14 heures, remibora a dit :
Quelle est la version de ton BLTouch V3.0/V3.1 ou V2.x/V1.x?
EDIT: voici un firmware compilé en supposant que tu avais un BLTouch V3.x. Attention, les déplacements sont potentiellement inversés. Avant de lancer une prise d'origine (Home), je te conseille de déplacer, via le menu de l'imprimante, les 3 axes pour vérifier ce point.
J'ai dû sortir le chausse-pied pour arriver à compiler une version compatible avec la taille mémoire de ton microcontrôleur. Cela signifie que j'ai enlevé un nombre certain de fonctionnalités dont le M500 et M501. Cela signifie que les paramètres spécifiques à ta machine devront être écris dans ton Gcode de démarrage. Dans un premier temps, indique moi si le firmware est globalement opérationnel (affichage, pilotage des moteurs).
Pour le BLtouch, je te conseille de le tester manuellement:
0- la led du BLTouch est rouge fixe (si elle clignote, c'est qu'il y a un défaut)
1- tu sors la touche: M280 P0 S10
2- tu tapes: M119 (pour voir l'état des fins de course).
3- tu enfonces la touche à la main (normalement, la led change de couleur, bleue normalement )
4- tu retapes: M119 (l'état du fin de course Zmin a dû changer)
5- tu rentres la touche: M280 P0 S90
firmware.hex


Salut,

Bon alors du coup désolé j'ai pas vu ton message hier soir, mais mon BLTouch est un BLTouch V.1.3
Je te remercie pour le firmware, mais je viens de le flasher et... j'ai juste le rétro éclairage de l'écran, rien d'autre...

Pour la taille, tu peux enlever les soft endstops (ils n'y sont pas dans le firmware de base) et la prise en charge de la carte SD (j'utilise exclusivement OctoPrint), et je veux bien que tu m'expliques comment je peux faire pour le faire moi-même à l'occasion si j'ai un soucis 🙂

Merci beaucoup pour tes efforts ^^

Cordialement,
SyFizz_

 

EDIT J'ai remis le firmware que j'avais avant, l'imprimante démarre de nouveau correctement, mais j'ai toujours le même soucis de BLTouch ^^

Modifié (le) par SyFizz_
Lien vers le commentaire
Partager sur d’autres sites

Je ne sais pas si tu as déjà visionné cette vidéo qui explique comment compiler la version V1.x de Marlin?

Il y a 1 heure, SyFizz_ a dit :

je veux bien que tu m'expliques comment je peux faire pour le faire moi-même à l'occasion si j'ai un soucis

A partir des sources Marlin V2.0.7.2, je compile avec VSCode et l'extension Platformio après avoir modifié les fichiers platformio.ini, .\marlin\configuration.h et .\marlin\configuration_adv.h . Je joints le dernier firmware modifié suivant tes indications (renommé pour pouvoir le flasher sur la carte) avec les 3 fichiers modifiés.

firmware2.hexConfiguration.hConfiguration_adv.hplatformio.ini

Lien vers le commentaire
Partager sur d’autres sites

Tout à l'air OK pour les axes et l'affichage, par contre il m'a fait faire un reset de l'EEPROM au premier démarrage, c'est normal ?

 

EDIT : Quand je lance un G28, il me home que les axes X et Y, et un G28 Z0 me donne ça sans faire le home

Send: G28 Z0
Recv: echo:Z Probe Past Bed
Recv: X:0.00 Y:0.00 Z:5.00 E:0.00 Count X:0 Y:0 Z:2000
Recv: ok

 

Autre chose, c'est que quand je fais un mouvement, la vitesse est grandement diminuée et les moteurs ne font pas du tout le même bruit qu'avant

Modifié (le) par SyFizz_
Lien vers le commentaire
Partager sur d’autres sites

il y a 13 minutes, SyFizz_ a dit :

il m'a fait faire un reset de l'EEPROM au premier démarrage, c'est normal ?

Habituellement, il pose la question et on répond soit IGNORER soit "RESET" (je ne me souviens plus du terme exact).

Si tu as fait "RESET", malheureusement, tu as perdu tes réglages (Step/mm pour tous les moteurs, décalage du BLTouch / buse, PID buse et plateau,...).

Fais bien attention à tester le BLTouch avant toute chose (voir ces infos)

Il y a 16 heures, SyFizz_ a dit :

j'ai aucun outil de mesure précis pour mesurer les décalages en question (mais je vais bientôt avoir mon pied à coulisse numérique)

La position X,Y du BLtouch n'a besoin d'être précise qu'au mm. Donc tu peux te contenter d'une simple règle graduée.

Modifié (le) par remibora
Lien vers le commentaire
Partager sur d’autres sites

Est-ce que tu as un fonctionnement similaire à cette vidéo, en lançant la commande G28 Z et en simulant le plateau avec ton doigt. Attention, cette manip doit se faire avec la buse très haute pour avoir le temps d'éteindre la machine si elle ne s'arrête pas lors du contact avec ton doigt.

si cela ne fonctionne pas, comment as-tu câblé le signal du BLTouch? l'as-tu bien mis à la place du fin de course Zmin?

Lien vers le commentaire
Partager sur d’autres sites

il y a 2 minutes, remibora a dit :

Est-ce que tu as un fonctionnement similaire à cette vidéo, en lançant la commande G28 Z et en simulant le plateau avec ton doigt. Attention, cette manip doit se faire avec la buse très haute pour avoir le temps d'éteindre la machine si elle ne s'arrête pas lors du contact avec ton doigt.

si cela ne fonctionne pas, comment as-tu câblé le signal du BLTouch? l'as-tu bien mis à la place du fin de course Zmin?

Non c'est pas du tout pareil, il ne se passe juste rien du tout quand je fais un G28 Z

Et oui, j'ai tout cablé comme il faut, même si j'ai un léger faux-contact au niveau de l'adaptateur qui se met sur la prise de l'écran le BLTouch fonctionnait très bien avant, c'est juste que quand je lançais un print bah il tenait pas compte du palpage qu'il venait d'effectuer 

Lien vers le commentaire
Partager sur d’autres sites

Sur un g28 Z, la machine doit commencer par faire son origine en X si il n'a pas été fait auparavant.

Si tu envoies un G28 X, fait-elle sa prise d'origine en X?

Question idiote: es-tu sûr de bien communiquer avec ta machine? Un M503 te liste les valeurs de l'eeprom?

Lien vers le commentaire
Partager sur d’autres sites

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
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...