Aller au contenu

GO Print

Geeetech GT2560A+ et 3Dtouch


RichardDern

Messages recommandés

Bonjour à tous,

Je sollicite votre aide pour faire fonctionner mon 3Dtouch.

Pour information, il a toujours fonctionné correctement, mais suite au remplacement d'un moteur, j'ai tout démonté et tout remonté, et depuis, le capteur a un comportement que je ne m'explique pas: le homing fonctionne parfaitement, mais le levelling rate dès le premier checkpoint. Le bras du capteur reste rétracté, et ne se déploie pas juste avant le premier checkpoint.

Le capteur en lui-même est celui de chez Geeetech, la board est une GT2560A+, donc celle avec le connecteur dédié. J'utilise Marlin 1.1.9 depuis sa sortie (et le capteur fonctionnait bien), mais quand j'ai tout démonté/remonté, n'ayant pas sauvegardé mon fichier de configuration, je suis reparti d'une base "vierge" (celle dans le dossier examples/geeetech/prusa i3 pro b/bltouch). Je pense donc que le problème est software et non hardware. Malgré tout, je vous joins quelques photos de mon installation.

Pour résumer, ce qui fonctionne:

  • À l'allumage, le capteur fait son self-test en se déployant/rétractant 2 fois
  • Homing X, Y et Z
  • Self test du capteur
  • Commande manuelle de rétraction et de déploiement

Ce qui ne fonctionne pas:

  • Le capteur ne se déploie pas juste avant le premier test de nivelage, et donc l'imprimante s'arrête avec le message "Probing failed"

Voici le journal avec debug activé (M111 S32). Il commence après homing manuel, quand je suis allé dans le menu pour lancer le bed leveling:

Send: M111 S32
Recv: echo:DEBUG:LEVELING
Recv: ok
[...]
Recv: echo:enqueueing "G28"
Recv: echo:enqueueing "G29"
Recv: >>> G28
Recv: Machine Type: Cartesian
Recv: Probe: BLTOUCH
Recv: Probe Offset X:15 Y:53 Z:-1.80 (Right-Back & Below Nozzle)
Recv: Auto Bed Leveling: BILINEAR (disabled)
Recv: 
Recv: set_bltouch_deployed(0)
Recv:   current_position=(85.00, 52.00, 11.80) : setup_for_endstop_or_probe_move
Recv: > endstops.enable(true)
Recv: >>> homeaxis(X)
Recv: Home 1 Fast:
Recv: >>> do_homing_move(X, -336.00, [50.00])
Recv:   current_position=(0.00, 52.00, 11.80) : sync_plan_position
[...]
Recv: echo:busy: processing
Recv: <<< do_homing_move(X)
Recv: Move Away:
Recv: >>> do_homing_move(X, 5.00, [50.00])
Recv:   current_position=(0.00, 52.00, 11.80) : sync_plan_position
[...]
Recv: <<< do_homing_move(X)
Recv: Home 2 Slow:
Recv: >>> do_homing_move(X, -10.00, 25.00)
Recv:   current_position=(0.00, 52.00, 11.80) : sync_plan_position
Recv: <<< do_homing_move(X)
Recv: >>> set_axis_is_at_home(X)
Recv: For X axis:
Recv:  home_offset = 0.00
Recv:  position_shift = 0.00
Recv:  soft_endstop_min = -12.00
Recv:  soft_endstop_max = 212.00
Recv: > home_offset[X] = 0.00
Recv:   current_position=(-12.00, 52.00, 11.80) :
Recv: <<< set_axis_is_at_home(X)
Recv:   current_position=(-12.00, 52.00, 11.80) : sync_plan_position
Recv:   current_position=(-12.00, 52.00, 11.80) : > AFTER set_axis_is_at_home
Recv: <<< homeaxis(X)
Recv: >>> homeaxis(Y)
Recv: Home 1 Fast:
Recv: >>> do_homing_move(Y, -339.00, [50.00])
Recv:   current_position=(-12.00, 0.00, 11.80) : sync_plan_position
Recv: echo:busy: processing
Recv: <<< do_homing_move(Y)
Recv: Move Away:
Recv: >>> do_homing_move(Y, 5.00, [50.00])
Recv:   current_position=(-12.00, 0.00, 11.80) : sync_plan_position
Recv: <<< do_homing_move(Y)
Recv: Home 2 Slow:
Recv: >>> do_homing_move(Y, -10.00, 25.00)
Recv:   current_position=(-12.00, 0.00, 11.80) : sync_plan_position
[...]
Recv: <<< do_homing_move(Y)
Recv: >>> set_axis_is_at_home(Y)
Recv: For Y axis:
Recv:  home_offset = 0.00
Recv:  position_shift = 0.00
Recv:  soft_endstop_min = -8.00
Recv:  soft_endstop_max = 218.00
Recv: > home_offset[Y] = 0.00
Recv:   current_position=(-12.00, -8.00, 11.80) :
Recv: <<< set_axis_is_at_home(Y)
Recv:   current_position=(-12.00, -8.00, 11.80) : sync_plan_position
Recv:   current_position=(-12.00, -8.00, 11.80) : > AFTER set_axis_is_at_home
Recv: <<< homeaxis(Y)
Recv: Z_SAFE_HOMING >>>
Recv:   current_position=(-12.00, -8.00, 11.80) : sync_plan_position
Recv:   destination=(85.00, 52.00, 11.80) : Z_SAFE_HOMING
Recv: >>> do_blocking_move_to(85.00, 52.00, 11.80)
Recv: echo:busy: processing
Recv: <<< do_blocking_move_to
Recv: >>> homeaxis(Z)
Recv:   current_position=(85.00, 52.00, 11.80) : set_probe_deployed
Recv: deploy: 1
Recv: do_probe_raise(10.00)
Recv: >>> do_blocking_move_to(85.00, 52.00, 11.80)
Recv: <<< do_blocking_move_to
Recv: Home 1 Fast:
Recv: set_bltouch_deployed(1)
Recv: >>> do_homing_move(Z, -300.00, [4.00])
Recv:   current_position=(85.00, 52.00, 0.00) : sync_plan_position
[...]
Recv: echo:busy: processing
[...]
Recv: <<< do_homing_move(Z)
Recv: set_bltouch_deployed(0)
Recv: Move Away:
Recv: >>> do_homing_move(Z, 5.00, 20.00)
Recv:   current_position=(85.00, 52.00, 0.00) : sync_plan_position
Recv: echo:busy: processing
[...]
Recv: <<< do_homing_move(Z)
Recv: Home 2 Slow:
Recv: set_bltouch_deployed(1)
Recv: >>> do_homing_move(Z, -10.00, 10.00)
Recv:   current_position=(85.00, 52.00, 0.00) : sync_plan_position
Recv: echo:busy: processing
Recv: <<< do_homing_move(Z)
Recv: set_bltouch_deployed(0)
Recv: >>> set_axis_is_at_home(Z)
Recv: For Z axis:
Recv:  home_offset = 0.00
Recv:  position_shift = 0.00
Recv:  soft_endstop_min = 0.00
Recv:  soft_endstop_max = 200.00
Recv: *** Z HOMED WITH PROBE (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) ***
Recv: > zprobe_zoffset = -1.80
Recv: > home_offset[Z] = 0.00
Recv:   current_position=(85.00, 52.00, 1.80) :
Recv: <<< set_axis_is_at_home(Z)
Recv:   current_position=(85.00, 52.00, 1.80) : sync_plan_position
Recv:   current_position=(85.00, 52.00, 1.80) : > AFTER set_axis_is_at_home
Recv:   current_position=(85.00, 52.00, 1.80) : set_probe_deployed
Recv: deploy: 0
Recv: do_probe_raise(10.00)
Recv: >>> do_blocking_move_to(85.00, 52.00, 11.80)
[...]
Recv: echo:busy: processing
[...]
Recv: echo:busy: processing
Recv: <<< do_blocking_move_to
Recv: >>> do_blocking_move_to(85.00, 52.00, 11.80)
Recv: <<< do_blocking_move_to
Recv: <<< homeaxis(Z)
Recv: <<< Z_SAFE_HOMING
Recv:   current_position=(85.00, 52.00, 11.80) : sync_plan_position
Recv:   current_position=(85.00, 52.00, 11.80) : clean_up_after_endstop_or_probe_move
Recv: X:85.00 Y:52.00 Z:11.80 E:0.00 Count X:6678 Y:4094 Z:4720
Recv: <<< G28
Recv:   current_position=(85.00, 52.00, 11.80) : >>> G29
Recv: Machine Type: Cartesian
Recv: Probe: BLTOUCH
Recv: Probe Offset X:15 Y:53 Z:-1.80 (Right-Back & Below Nozzle)
Recv: Auto Bed Leveling: BILINEAR (disabled)
Recv: 
Recv:   current_position=(85.00, 52.00, 11.80) : set_probe_deployed
Recv: deploy: 1
Recv: do_probe_raise(10.00)
Recv: >>> do_blocking_move_to(85.00, 52.00, 11.80)
Recv: <<< do_blocking_move_to
Recv:   current_position=(85.00, 52.00, 11.80) : setup_for_endstop_or_probe_move
Recv: reset_bed_level
Recv: >>> probe_pt(10.00, 45.00, raise, 0, probe_relative)
Recv:   current_position=(85.00, 52.00, 11.80) :
Recv: >>> do_blocking_move_to(-5.00, -8.00, 11.80)
Recv: <<< do_blocking_move_to
Recv:   current_position=(-5.00, -8.00, 11.80) : set_probe_deployed
Recv: deploy: 1
Recv:   current_position=(-5.00, -8.00, 11.80) : >>> run_z_probe
Recv:   current_position=(-5.00, -8.00, 11.80) : >>> do_probe_move
Recv: set_bltouch_deployed(1)
Recv: >>> do_blocking_move_to(-5.00, -8.00, -0.20)
[...]
Recv: echo:busy: processing
[...]
Recv: echo:busy: processing
Recv: <<< do_blocking_move_to
Recv:   current_position=(-5.00, -8.00, -0.20) : sync_plan_position
Recv:   current_position=(-5.00, -8.00, -0.20) : <<< do_probe_move
Recv: FAST Probe fail!
Recv:   current_position=(-5.00, -8.00, -0.20) : <<< run_z_probe
Recv: >>> do_blocking_move_to(-5.00, -8.00, 4.80)
Recv: <<< do_blocking_move_to
Recv: Error:Probing failed
Recv: <<< probe_pt
Recv:   current_position=(-5.00, -8.00, 4.80) : set_probe_deployed
Recv: deploy: 0
Recv: do_probe_raise(10.00)
Recv: >>> do_blocking_move_to(-5.00, -8.00, 11.80)
[...]
Recv: echo:busy: processing
Recv: <<< do_blocking_move_to
Recv: >>> do_blocking_move_to(-5.00, -8.00, 11.80)
Recv: <<< do_blocking_move_to
Recv:   current_position=(-5.00, -8.00, 11.80) : > probing complete
Recv:   current_position=(-5.00, -8.00, 11.80) : clean_up_after_endstop_or_probe_move
Recv: <<< G29
Recv: X:-5.00 Y:-8.00 Z:11.80 E:0.00 Count X:-394 Y:-630 Z:4720

Concernant les photos:

  • La première est un détail du connecteur sur le capteur avec mon câble qui part vers le haut
  • La seconde est un détail du connecteur sur la GT2560A+

Le fil brun correspond à la masse, le rouge puis le brun/blanc au +5V, le orange au capteur. Le couple vert/blanc va sur le connecteur Z-min de la carte.

Je joins également mon Configuration.h.

IMG_0241.JPG

IMG_0242.JPG

Configuration.h

Lien vers le commentaire
Partager sur d’autres sites

SALUT Richard

j'ai moi aussi une geeetech avec la GT 2560 A+ la version marlin que j'utilise et la 1.0.1  mon bltouch pas encore monté

pour moi ton problème viendrai du soft a tu pensé le réinitialiser

il ne faut surtout pas oublier de faire une copie du soft pour les éventuels perte de mémoire 

ma geeetech je l'est beaucoup modifié sur  plein de détailles

Lien vers le commentaire
Partager sur d’autres sites

Par "réinitialiser le soft", je suppose que tu veux dire que j'ai modifié Marlin et uploader le firmware ? Bien sûr, plusieurs fois même, à chaque modification, c'est-à-dire plusieurs fois par jour depuis des semaines 😁

Et si j'avais pensé à faire une copie, je n'en serai pas là aujourd'hui 😅

Lien vers le commentaire
Partager sur d’autres sites

SALUT

 en faisant des erreurs ça nous apprend a éviter le pire pour la suite 

chaque fois que je fais une modif sur mon marlin je le nomme pour en faire une copie après ça j'ai toujours une copie d'origine de ma version du marlin 

la en ce moment je suit entrain de faire un chariot support pour l'extrudeur pour l'avoir le plus léger possible cela auras pour effet de diminuer la masse en mouvement 

j'ai déjà modifiés les écrous en bronze qui s'use très vites et remplacer par un écrou-manchon de 30 mm de haut (j'ai imprimer un nouveaux support)

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Si certains préfère utiliser un firmware avec les sécu désactivées, faut pas les brusquer 😄

En effet vu ce qui fonctionne et ce qui ne fonctionne pas, ça a l'air software, tu peux mettre a disposition ton "configuration.h" que l'on regarde ça. Éventuellement ton "configuration_adv" si tu utilises une des fonctionnalités.

Lien vers le commentaire
Partager sur d’autres sites

Salut et merci de ton intérêt pour mon problème.

Le Configuration.h ci-dessous. Je n'ai rien changé au _adv. Edit: je l'avais déjà inséré dans le premier post, mais j'ai fais des essais depuis, sans résultat positif.

Pour info, c'est simplement le fichier d'exemple fourni avec les sources de Marlin 1.1.9, pour la Geeetech Prusa i3 Pro B avec BlTouch, tweaké selon ce que je pense être mes besoins 😁

C'est-à-dire que j'ai surtout changé la position du capteur par rapport à la buse, et 2-3 bricoles qui n'ont rien à voir avec le capteur (enfin, je ne crois pas...)

Le changement le plus important que j'ai dû faire c'est activer Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN (et du coup, désactiver Z_MIN_PROBE_ENDSTOP), faute de quoi, même le homing ne fonctionne pas. Je rappelle que j'ai bien une GT2560 Rev A+ avec le connecteur 3-pins BlTouch intégré, en haut à gauche, les deux autres fils étant branchés sur le Z-min.

Configuration.h

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

Désolé je n'avais pas vu ta config dans ton premier post.

J'ai regardé ta conf sans rien y trouver de pertinent a part peut être l'utilisation de USE_ZMAX_PLUG mais c'est surement lié a tes tests.

J'ai refais un fichier de configuration from scratch avec une config pour BLtouch avec un AUTO_BED_LEVELING_LINEAR.

J'y ai repris tes offsets :

#define X_PROBE_OFFSET_FROM_EXTRUDER 30  // X offset: -left  +right  [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER -9  // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -2.90  // Z offset: -below +above  [the nozzle]

et la config de tes moteurs :

#define X_DRIVER_TYPE  TMC2208_STANDALONE
#define Y_DRIVER_TYPE  TMC2208_STANDALONE
#define Z_DRIVER_TYPE  A4988
//#define X2_DRIVER_TYPE A4988
//#define Y2_DRIVER_TYPE A4988
//#define Z2_DRIVER_TYPE A4988
#define E0_DRIVER_TYPE A4988
//#define E1_DRIVER_TYPE A4988
//#define E2_DRIVER_TYPE A4988
//#define E3_DRIVER_TYPE A4988
//#define E4_DRIVER_TYPE A4988

J'ai un doute sur le sens de tes moteurs mais ca reste un detail :

#define INVERT_X_DIR true
#define INVERT_Y_DIR false
#define INVERT_Z_DIR false

 

Il est en pièce jointe, dis moi ce qu'il en ressort 😉

Pour info, je suis parti du principe que tu n'as pas touché au fichiers de conf des pins non plus.

Configuration.h

Lien vers le commentaire
Partager sur d’autres sites

#define X_PROBE_OFFSET_FROM_EXTRUDER 30  // X offset: -left  +right  [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER -9  // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -2.90  // Z offset: -below +above  [the nozzle]

Cas valeurs ont l'air complètement fausses quand on regarde ta video. Avec ces paramètres, quand tu te places devant ton imprimante, ton bltouch serait placé devant a droite de ta buse, quasi collé même avec -9 (mm) en Y. 

Lien vers le commentaire
Partager sur d’autres sites

Tu vois où ces valeurs ? Dans mes fichiers de configuration j'ai:

#define X_PROBE_OFFSET_FROM_EXTRUDER 15    // X offset: -left  +right  [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER 53   // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.8  // Z offset: -below +above  [the nozzle]

Ce qui place le capteur à l'arrière de la buse, si je ne m'abuse 😁

Edit: je précise que pour essayer ton fichier de config, j'avais modifié ces variables pour correspondre à mon cas ci-dessus.

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

J'ai confondu mes valeurs avec les tiennes, autant pour moi 😁

tu peux également essayer ca mais reste a coté, prêt a l’arrêter si ça foire.

#define Z_PROBE_LOW_POINT          -10

 

 

 

Tu peux tenter de flasher avec un 1.1.8 que j'avais mis a dispo autrefois, lui je sais qu'il fonctionne en l'etat Geee-i3proB_Marlin-1.1.8-3DTouch-20180121.zip

Les quesques parametres a changer sont indiqués dans le post

Lien vers le commentaire
Partager sur d’autres sites

J'ai essayé ton firmware en 1.1.8, en ne changeant que la position du capteur par rapport à la buse. Toujours le même comportement.

Pour info, en parallèle, je discute avec les gars de chez Geeetech, au cas où ce serait un problème hardware. Mais ils ont l'air aussi perdus que moi... À ce point, j'ignore toujours si c'est hard ou soft, et si c'est hard, si je peux m'en faire renvoyer un nouveau...

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

ouep c'est pas le résultat que j'attendais 😥

et un M119 ça donne quoi ?

 

Est ce que le bltouch répond bien au M401 et M402 ? je demande ca car dans tes logs on voit bien set_bltouch_deployed(1) mais aucune action dans ta video

Modifié (le) par hidius
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...