Passage au firmware Marlin 2.0.5.3 Hephestos 2

Améliorations spécifiques à l'Hephestos 2 BQ et rien d'autre
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Bonjour à tous,
Utilisant mon Hephestos depuis environ deux ans uniquement avec les firmwares proposé par BQ, je trouve que mes lancement d'impression sont très fastidieux au niveau du réglage du Z.
Et je ne peux qu'imprimer via la carte SD, j'aime bien utilisé Repetier avec Slicer, mais à chaque impression, aléatoirement l'imprimante se met à aller en bordure de zone faisant claquer mes couroies et décalant ainsi le reste de mon impression :(

Donc, hier j'ai franchi le pas et je l'ai flashé en Marlin 2.0.5.3, le tout dernier, avec Arduino 1.8.12 sous Mac OS.

J'ai pris le fichier config de l'Hephestos 2, tout s'est passé comme une lettre à la poste, enfin quoi que en ce moment :cheese:
J'ai bidouillé la librairie U8glib pour régler mon LCD, grace au forum, merci :ymapplause: , tout va bien.
Les déplacements sont étonnamment bien moins bruyant et Repetier communique très bien.
Mais il y a un mais, et de taille, je me suis arraché les cheveux toute la nuit, impossible de faire fonctionné correctement le capteur inductif :letmethink:
J'ai fait les inversions dans le config.h, il s'allume bien à l'approche du plateau et la commande M119 le donne bien TRIGGERED quand il est allumé et open quand il ne l'est pas.
Le soucis, c'est que quand je Home le Z, les moteurs ne s'arrêtent pas malgré le Z prob TRIGGERED, le Zmin quand à lui reste toujours open et ce bien que j'ai précisé que le prob était branché sur le Zmin pin.
Du coup la buse s'enfonce dans le plateau, arrêt d'urgence et impossible de faire autre chose puisque le Z n'est pas Home :nope:
Y'a un truc que je ne pige pas là...
Je précise que mon imprimante n'a subit aucune modif, elle est montée suivant la doc BQ et tout fonctionnait sans défaut juste avant.
Quel est donc le paramètre mystère pour moi qui permet de lié Z_prob et Z_min pour que le Z s'arrête bien comme avant à la détection du plateau ?
Merci de votre aide, j'ai parcouru pas mal de forum cette nuit en français et en anglais mais pas trouver ma réponse, ou alors je suis passé à côté :waiting:
Avatar de l’utilisateur
Jacques
Site Admin
Messages : 5616
Inscription : jeu. oct. 23, 2014 3:02 pm
Imprimante 3D : Witbox, Witbox 2 et Hephestos
Localisation : Aix en Provence
Contact :

Le détecteur inductif (89) n'est pas placé sur la même broche que le switch Z (46).
C'est probablement là qu'est votre problème, il y a confusion lors de certaines lectures du Z.
Vous pouvez modifier le fichier pins.h pour faire concorder les broches
L'autre solution (bricolage) serait de câbler le signal du détecteur comme il est mais aussi sur l'entrée switch Z de la carte ZUM.

La dernière solution
Utilisez le Marlin Hephestos 2 dernière version BQ 2.5.1 il règle différents problèmes comme le bruit par exemple
https://github.com/bq/Marlin/blob/maste ... ilation.md
Des idées d'améliorations https://www.thingiverse.com/Premium/designs
Une question, une précision, un manque de pièces détachées, posez vos questions ici même.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Merci Jacques :goodguy:
Je ne m'attendais pas à une réponse aussi rapide.
Je vais tester cela pour voir si ça règle le problème.
Je publierais le résultat si ça peut aider comme pour le LCD.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Juste une petite question, quel est le fichier pin à modifier, il semble y en avoir un bon paquet ?
là je regarde dans le répertoire mega vu que dans Arduino j'utilise mega 2560.
Merci.
Avatar de l’utilisateur
Jacques
Site Admin
Messages : 5616
Inscription : jeu. oct. 23, 2014 3:02 pm
Imprimante 3D : Witbox, Witbox 2 et Hephestos
Localisation : Aix en Provence
Contact :

pins_BQ_ZUM_MEGA_3D.h
C'est le fichier à utiliser
Normalement ce fichier est celui à définir dans votre Marlin comme étant votre électronique

Code : Tout sélectionner

#ifdef LEVEL_SENSOR
 #define Z_MIN_PIN          19
 #define Z_MAX_PIN          18
#else
 #define Z_MIN_PIN          18
 #define Z_MAX_PIN          19
#endif
Le signal de la sonde est ici

Code : Tout sélectionner

PK	, // PK 0 ** 62 ** A8	
Des idées d'améliorations https://www.thingiverse.com/Premium/designs
Une question, une précision, un manque de pièces détachées, posez vos questions ici même.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Top, je vais vérifier ça.
Je débute mais j’apprends vite ;)
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Encore moi,
Pour être bien sûre, comment définit-on ce fichier pour spécifier l’électronique à utiliser dans le Marlin ?
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Trouver dans le config.h tout simplement :saturdaynight:
Avatar de l’utilisateur
Jacques
Site Admin
Messages : 5616
Inscription : jeu. oct. 23, 2014 3:02 pm
Imprimante 3D : Witbox, Witbox 2 et Hephestos
Localisation : Aix en Provence
Contact :

Dans le fichier configuration.h à la ligne Motherboard mettez 43

Code : Tout sélectionner

#define MOTHERBOARD 43
C'est ce qui définira à Marlin quelle broche sert à quoi
Des idées d'améliorations https://www.thingiverse.com/Premium/designs
Une question, une précision, un manque de pièces détachées, posez vos questions ici même.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Yes, ça marche, j'ai juste ajouté deux lignes dans le fichier pin pour coupler Z_min et Z_Probe.
La détection et l'arrêt fonctionnent parfaitement maintenant, on avance :urock:

Juste ça :
// Z Probe (when not Z_MIN_PIN)
//
#undef Z_MIN_PROBE_PIN

//************* ICI *******************************
#undef Z_MIN_PIN
//*************************************************

#define Z_MIN_PROBE_PIN 19 // IND_S_5V

//************* ICI *******************************
#define Z_MIN_PIN 19
//*************************************************

#undef Z_ENABLE_PIN
#define Z_ENABLE_PIN 77 // 62

Etape suivante, le BED_LEVELING, ça commence bien avec un Error:Probing Failed.
Le leveling démarre proprement le long de l'avant du plateau puis au milieu de la deuxième ligne de sondage, craque.

Pour le moment tout est en config par défaut donc en BLINEAR.
Je vais passer en 3 Points pour débuter.

Au pire, pas de leveling pour tester l'impression rapidement.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Bon, là je cale un peu sur le homing du Z.
Je change des paramètres dans la rubrique Z probe option mais rien n'y fait, quand le capteur se déclanche il met Z à zero, pas moyen d'offsetter cette valeur pour que ça fasse comme dans l'ancien Firware, en gros quand le capteur se déclanche, on sait que Z est à x mm du plateau.
Avatar de l’utilisateur
Jacques
Site Admin
Messages : 5616
Inscription : jeu. oct. 23, 2014 3:02 pm
Imprimante 3D : Witbox, Witbox 2 et Hephestos
Localisation : Aix en Provence
Contact :

La logique du capteur est effectivement différente du switch mécanique, outre la mesure des points, il doit intégrer la notion d'offset et sa gestion.
L'autoleveling peut se désactiver au panneau mais doit être configuré au niveau du firmware
Des idées d'améliorations https://www.thingiverse.com/Premium/designs
Une question, une précision, un manque de pièces détachées, posez vos questions ici même.
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

J'ai pu faire des tests d'impression.
Pour le moment la manœuvre me semble vraiment bénéfique.
A paramètres égaux, l'impression semble bien meilleur, plus fine et surtout plus de bug, enfin je croise les doigts sous Repetier.
Une fois le homing fait, je cale simplement mon Z au niveau du plateau et zou c'est parti.

Donc pour résumer la procédure :
- Télécharger Marlin firmware 2.0.5.3
- Installer Arduino et le configurer avec Arduino Mega ou Mega 2560.
- Toujours dans Arduino télécharger/installer la librairie U8glib, actuellement 1.19.1, menu Outils/Gérer les bibliothèques
- Pour le problème d'affichage du LCD décalé, ça se passe dans le fichier ultralcd_st7920_u8glib_rrd_AVR.h
Il faut dé commenté trois lignes, ça donne ça (J'ai mis le 400 d'après l’exemple du forum et ça a fonctionné directement):

#define ST7920_DELAY_1 DELAY_NS(0)
#define ST7920_DELAY_2 DELAY_NS(400)
#define ST7920_DELAY_3 DELAY_NS(0)

- Reste juste à régler le problème du Z_Probe, voici juste ce que j'ai modifier :
-> pour les ENDSTOPPULLUPS dans config.h

// Enable pullup for all endstops to prevent a floating state
//#define ENDSTOPPULLUPS
#if DISABLED(ENDSTOPPULLUPS)
// Disable ENDSTOPPULLUPS to set pullups individually
//#define ENDSTOPPULLUP_XMAX
//#define ENDSTOPPULLUP_YMAX
//#define ENDSTOPPULLUP_ZMAX
#define ENDSTOPPULLUP_XMIN
#define ENDSTOPPULLUP_YMIN
//#define ENDSTOPPULLUP_ZMIN
#define ENDSTOPPULLUP_ZMIN_PROBE
#endif

-> pour les inversions, j'ai ça dans config.h:
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
#define X_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
#define Y_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
#define Z_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // Set to true to invert the logic of the probe.

-> pour les pins ça dans le fichier pins_BQ_ZUM_MEGA_3D.h:

// Z Probe (when not Z_MIN_PIN)
//
#undef Z_MIN_PROBE_PIN

//************* ICI *******************************
#undef Z_MIN_PIN
//*************************************************

#define Z_MIN_PROBE_PIN 19 // IND_S_5V

//************* ICI *******************************
#define Z_MIN_PIN 19
//*************************************************

#undef Z_ENABLE_PIN
#define Z_ENABLE_PIN 77 // 62

Voilà, c'est à priori tout pour le gros oeuvre, j'ai fait quelques autres tests mais visiblement sans incidence.
Si ça peut en aider d'autres, merci à Jacques pour les conseils.

Pour le moment je suis ravis et bluffé, je redécouvre mon Hephestos 2 sous un jour nouveau, stable, silencieuse et efficace, fini les travels dans tous les sens :goodguy:

Semaine prochaine installation d'Octoprint sur un Pi 4 avec cette nouvelle config :saturdaynight:
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

Trop bon, jamais je n’ai réussi à imprimer cette figurine :cheese:
Le résultat est incroyable...
Pièces jointes
B59B2E29-E08A-42C5-A9D9-64FB09725351.jpeg
Titof2
Membre actif
Messages : 24
Inscription : sam. avr. 18, 2020 11:25 am
Imprimante 3D : BQ Hephestos 2

:nononono: :yeaaaaaaah:
Pièces jointes
4D543275-C11F-45C0-B8F0-A3EC52E01F97.jpeg
4D543275-C11F-45C0-B8F0-A3EC52E01F97.jpeg (60.84 Kio) Consulté 9695 fois
Répondre