Compilation firmware Hephestos

Cette rubrique concerne les questions technique que vous aimeriez soumettre.
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Bonjour
Maintenant que la machine à fonctionner, j'ai voulu me lancer dans la compilation de son logiciel.
Je suis assez habitué à l'environnement Arduino, programmant régulièrement sur l'Arduino UNO.
J'ai pris, pour commencer, la version Marlin 1.3.1 qui est sur le CD, histoire de passer ma machine en français. L'interface Arduino.exe a immédiatement proposé de passer à la version "à jour" (1.6.4), ce que j'ai accepté.
Cette version continue à compiler mes propres modules, ce qui est un minimum (mais on ne sait jamais ..)
En essayant de compiler Marlin, après avoir changé de processeur (Arduino Maga or Mega 2560), rien, nada : au bout de quelques secondes, le programme fait mine de travailler mais il est bloqué. Et n'en sort pas tout seul.
Quelqu'un a une idée ?
J'en ai juste une que je n'ai pu vérifier (mais qui n'est pas vraie pour UNO) : je n'ai pas branché la carte de la Prusa sur mon ordinateur, pour éviter tout risque de déprogrammer par erreur.
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

J'ai, par acquis de conscience, essayé de compiler aussi la version (1.4 ?) trouvée sur le net, déconseillée par jacques. Et ça compile.
Où puis-je trouver les sources - qui marchent - de la version livrée sur ma machine (elle affiche Hephestos 1.3.1 et a été achetée sur Maker Faire à Paris) ?
maccoa
Membre actif
Messages : 29
Inscription : mar. mars 10, 2015 6:23 pm
Imprimante 3D : prusa I3 hephestos

si tu veut les vrai sources marlin c'est ici que ça se passe

https://github.com/MarlinFirmware/Marli ... evelopment Marlin 1.03dev

attention il faut tout configurer mais c'est que du bonheur par rapport au marlin de BQ
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Ouah ! c'est du lourd : la configuration des fichiers est assez différente de celle des fichiers du CD (je pense à config.h) donc trouver les bons paramètres va être serré. Je vois qu'ils ont tout repris depuis le début. Aucun fichier ne semble avoir été repris en l'état.
Avec mes Arduino, je n'ai jamais essayé de sauver la config chargée pour revenir en arrière en cas de souci puisque j'avais les sources (avec le programmateur sur ISP ?).
As-tu gardé la trace des fichiers que tu as modifiés ? Ca pourra m'être utile si nous avons bien la même machine (Prusa i3 Hephestos, firmware 1.3.1, vendue par Premium).
Je pense que ce n'est pas utile d'essayer de compiler tel quel sans quelques setups.
Quid des avertissements de jacques sur la v1.4 ?

Merci d'avance
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

J'ai consulté aussi le configurateur livré dans ces sources.
C'est certainement passionnant, bien que difficile à comprendre comment on l'utilise, mais si nous ne donnons pas des copies d'écran de ce que nous avons programmé, ceux qui liront notre prose ne seront pas plus avancés ...
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Désolé, j'écris plus vite que ne réfléchis : les paramètres Hephestos sont fournis dans les exemples.
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Mais attention : le dual stepper pour Z n'y est pas validé : ça parait bien dangereux ! J'ai changé (ligne 138 de configuration_adv.h)
Et le choix du langage n'est pas non plus proposé (ligne 610 de configuration.h)

Et ça compile sans problème.
Merci maccoa pour cette info utile.

Reste qu'il faut tester sans détruire quelque chose qui fonctionne.
maccoa
Membre actif
Messages : 29
Inscription : mar. mars 10, 2015 6:23 pm
Imprimante 3D : prusa I3 hephestos

j'ai une prusa i3 hephestos de chez BQ donc la même.
le firmware marlin est rester 2j dessus .

bon j'avoue je prend encore le configuration .H et .adv de la hephestos . mais plus je comprend et plus je tente de garder les fichiers originaux.

dans les fichiers y'a pas grand chose à modifier.


je mets :

Code : Tout sélectionner

#define TEMP_SENSOR_0 13
j'ai changé mon extrudeur pour une AIO

Code : Tout sélectionner

#define TEMP_SENSOR_BED 1
j'ai un bed

Code : Tout sélectionner

// Hephestos (i3)
    #define  DEFAULT_Kp 11.18
    #define  DEFAULT_Ki 0.42
    #define  DEFAULT_Kd 75.01
resulta d'un autopid et quand je demande 193 j''ai 193 tout le temps

Code : Tout sélectionner

#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS 205
#define Y_MAX_POS 205
#define Z_MAX_POS 180
mes valeurs sans que le bed bute ou ne commence à dévié

Code : Tout sélectionner

#define MANUAL_BED_LEVELING  // Add display menu option for bed leveling
#define MESH_BED_LEVELING    // Enable mesh bed leveling
très efficace en attendant ma Zprob

Code : Tout sélectionner

#define EEPROM_SETTINGS
pour activer les modif sous repetier , vitesse acceleration ....

et dans le configuration.adv

Code : Tout sélectionner

#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
voila les modif à faire pour que ça print , apré c'est du finetune pour optimiser tout ca .

si tu veut repartir sur un marlin BQ
https://github.com/bq/Marlin/tree/marlin/Marlin

et pour le language en FR je n'aime pas du tout , je n'y comprend rien :mrgreen:
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Merci, tout ceci est une excellente contribution selon moi.
Cependant, je ne comprends pas tout :

// Hephestos (i3)
#define DEFAULT_Kp 11.18
#define DEFAULT_Ki 0.42
#define DEFAULT_Kd 75.01
resultat d'un autopid et quand je demande 193 j''ai 193 tout le temps

C'est quoi l'autopid ? J'imagine que ça permet d'optimiser l'amortissement descinématiques, mais est-ce que le réglage de tension n'est pas un élément important de cette régulation ?


#define MANUAL_BED_LEVELING // Add display menu option for bed leveling
#define MESH_BED_LEVELING // Enable mesh bed leveling
très efficace en attendant ma Zprob

je ne sais pas ce qu'est une Zprob

#define EEPROM_SETTINGS
pour activer les modif sous repetier , vitesse acceleration ....

j'utilise Cura ; utile ? ou peut-être "au cas où, sans danger" ?

#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing

je ne vois pas pourquoi paramétrer ça.

En attendant, je commence par ce que Marlin a prévu pour Hephestos, au paramétrage de la surface utile près.
maccoa
Membre actif
Messages : 29
Inscription : mar. mars 10, 2015 6:23 pm
Imprimante 3D : prusa I3 hephestos

l'autopid :
c'est pour maintenire la T°C constante, plus de fluctuation.

tu la lance avec la commande :M303 E0 S200 C8

le resulta:
bias: 92 d: 92 min: 196.56 max: 203.75
Ku: 32.59 Tu: 54.92
Clasic PID
Kp: 19.56
Ki: 0.71
Kd: 134.26
PID Autotune finished ! Place the Kp, Ki and Kd constants in the configuration.h
tu n'a plus qu'a renseigner T'ES resultas dans marlin.

une Z prob c'est pour faire un palpage du plateau si jamais il n'est pas parfaitement régler et permet de coriger cette erreur.

#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing

sans ça chez moi j'imprime dans le vide.

le reste si tu change rien sous repetier se n'est pas dangereux
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Merci je vais regarder tout ça à tête reposée
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Pour ceux qui chercheraient encore, pour ce qui suit, il suffit de connecter son PC sur la machine, utiliser un programme comme putty (en mode serial, à 115000 bauds).

J'ai fait 2 essais, l'un à 200°, l'autre à 215° (celle que j'utilise normalement).

M303 E0 S200 C8

j'ai obtenu :
bias: 85 d: 85 min: 196.93 max: 203.30
Ku: 34.00 Tu: 24.51
Clasic PID
Kp: 20.40
Ki: 1.66
Kd: 62.50

et pour 215°

M303 E0 S215 C8

j'ai obtenu :
bias: 93 d: 93 min: 211.80 max: 218.91
Ku: 33.31 Tu: 23.85
Clasic PID
Kp: 19.99
Ki: 1.68
Kd: 59.60

Ce sont des valeurs sensiblement différentes des tiennes.
Ma machine n'a actuellement aucun flanc (à venir) et il fait environ 20° dans la pièce.

Je reporte dans le code les valeurs obtenues avec 215

Je n'ai toujours pas trouvé comment récupérer par sécurité le code actuellement dans le Mega2560.
Je crois comprendre, d'après les documents glanés ici et là que le connecteur 2 rangées de l'afficheur serait l'interface SPI (ISP) qui est utilisé pour la SD CARD. Je vais d'abord faire un essai sur une autre carte Arduino avec mon interface AVRISP mkII que je n'ai pas utilisée depuis longtemps.
A moins que quelqu'un d'autre ait une idée ?
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 :

Petite précision

La version 1.4.0 comprenait une erreur qui a été corrigée par la suite ver 1.4.1 et 1.4.2
Le source se trouve ici https://github.com/bq/Marlin/tree/v1.4_hephestos
J'ai vérifié, cette version remet en fonction le blower de la buse.

On peut donc utiliser cette version que l'on peut mosifier et compiler puis downloader ou utiliser simplement le code entier avec Cura (à prendre sur les liens BQ)
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.
LeLampiste
Contributeur
Messages : 61
Inscription : sam. mai 02, 2015 6:49 pm
Imprimante 3D : Prusa i3 Hephestos

Merci pour ce lien.
Je viens de le compiler avec succès, au contraire de celui qui est sur le CD.
Si je comprends bien, je le charge sur mon imprimante, ça fonctionne du premier coup sans aucune modification, ça me donne une base solide à laquelle je peux revenir si les essais ultérieurs sont inefficaces. Et j'oublie mes difficultés à trouver un moyen de récupérer le binaire actuellement en place.
C'est bien ça ?
Si oui, c'est parfait.
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 :

Oui, c'est exactement ca, il n'y a aucun risque, cette version est configuré pour l'Hephestos sinon celle du CD doit fonctionner à condition de bien configurer le port de communication avec l'imprimante.
Plus simple encore pour ceux qui ne veulent rien modifier, il suffit de télécharger la version que l'on veut depuis BQ mais avec Cura cette fois-ci.
Il n'y a absolument aucun risque de perdre ce qui est dans l'imprimante.
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.
Répondre