vap38 Posté(e) samedi à 07:49 Posté(e) samedi à 07:49 (modifié) Bonjour, @fran6p je souhaite imprimer avec la QIDI plus 4 un logo en deux couleurs avec QIDISTUDIO 2.3.0.70. j'utilise la bonne méthode pour insérer un changement de filament sans la BOX. Le changement de filament ne fonctionne pas ! j'ai une grosse purge de filament au dessus du logo pourquoi ? Sur la capture d'écran la méthode est correcte sauf qu'au changement de filament l'extrudeur est immobilisé et réalise une purge sur le logo sans se déplacer vers le puit de purge bizarre !! La seule méthode qui fonctionne c'est d'insérer une pause au changement de couleur et il faut couper manuellement le filament et ensuite charger le nouveau filament. J'ai essayé avec QIDISlicer le problème est identique de même que ORCA qui est aussi impacté! Question peut on imaginer que la macro comporte une erreur dans le Gcode changement de filament sans la BOX ? Pouvons nous attribuer cette erreur à la mise à jour de QIDI studio pour l'utilisation de la BOX ? Avez-vous rencontré ce problème si oui avec la BOX çà fonctionne ? Citation {if max_layer_z < 12} G1 Z15 F1200 {else} G1 Z{max_layer_z + 3.0} F1200 {endif} TOOL_CHANGE_START F=[current_extruder] T=[next_extruder] DISABLE_ALL_SENSOR {if long_retractions_when_cut[previous_extruder]} MOVE_TO_TRASH G1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate} M400 {else} G1 E-5 F{old_filament_e_feedrate} {endif} CUT_FILAMENT T=[current_extruder] MOVE_TO_TRASH M400 {if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]} M104 S{nozzle_temperature_range_high[current_extruder]} {else} M104 S{nozzle_temperature_range_high[next_extruder]} {endif} M106 S0 M106 P2 S0 UNLOAD_T[current_extruder] G92 E0 M83 G1 E2 F50 T[next_extruder] {if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[current_extruder]} WAIT=1 {else} SET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[next_extruder]} WAIT=1 {endif} {if long_retractions_when_cut[previous_extruder]} G1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate} {endif} M400 M106 S60 ; FLUSH_START G1 E1 F50 G1 E{65.5 * 0.58} F{old_filament_e_feedrate} G1 E{65.5 * 0.02} F50 G1 E{65.5 * 0.18} F{old_filament_e_feedrate} G1 E{65.5 * 0.02} F50 G1 E{65.5 * 0.18} F{old_filament_e_feedrate} G1 E{65.5 * 0.02} F50 G1 E-[old_retract_length_toolchange] F1800 ; FLUSH_END {if flush_length_1 > 1} M400 M106 S255 G91 G1 X-5 F60 G1 X5 F60 G90 CLEAR_FLUSH M400 M106 S60 ; FLUSH_START G1 E[old_retract_length_toolchange] F300 G1 E{flush_length_1 * 0.58} F{new_filament_e_feedrate} G1 E{flush_length_1 * 0.02} F50 G1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_1 * 0.02} F50 G1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_1 * 0.02} F50 G1 E-[old_retract_length_toolchange] F1800 ; FLUSH_END {endif} {if flush_length_2 > 1} M400 M106 S255 G91 G1 X-5 F60 G1 X5 F60 G90 CLEAR_FLUSH M400 M106 S60 ; FLUSH_START G1 E[old_retract_length_toolchange] F300 G1 E{flush_length_2 * 0.58} F{new_filament_e_feedrate} G1 E{flush_length_2 * 0.02} F50 G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_2 * 0.02} F50 G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_2 * 0.02} F50 G1 E-[new_retract_length_toolchange] F1800 ; FLUSH_END {endif} {if flush_length_3 > 1} M400 M106 S255 G91 G1 X-5 F60 G1 X5 F60 G90 CLEAR_FLUSH M400 M106 S60 ; FLUSH_START G1 E[new_retract_length_toolchange] F300 G1 E{flush_length_3 * 0.58} F{new_filament_e_feedrate} G1 E{flush_length_3 * 0.02} F50 G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_3 * 0.02} F50 G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_3 * 0.02} F50 G1 E-[new_retract_length_toolchange] F1800 ; FLUSH_END {endif} {if flush_length_4 > 1} M400 M106 S255 G91 G1 X-5 F60 G1 X5 F60 G90 CLEAR_FLUSH M400 M106 S60 ; FLUSH_START G1 E[new_retract_length_toolchange] F300 G1 E{flush_length_4 * 0.58} F{new_filament_e_feedrate} G1 E{flush_length_4 * 0.02} F50 G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_4 * 0.02} F50 G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate} G1 E{flush_length_4 * 0.02} F50 G1 E-[new_retract_length_toolchange] F1800 ; FLUSH_END {endif} M104 S[new_filament_temp] M400 M106 S255 G91 G1 X-5 F60 G1 X5 F60 G90 M109 S[new_filament_temp] G92 E0 M400 CLEAR_FLUSH CLEAR_OOZE M400 M106 S0 TOOL_CHANGE_END G1 Y305 F9000 ENABLE_ALL_SENSOR Modifié (le) samedi à 14:30 par fran6p 1
fran6p Posté(e) samedi à 15:02 Posté(e) samedi à 15:02 (modifié) Il y a 7 heures, vap38 a dit : avec la BOX çà fonctionne ? Avec la Q2 ET la Box, ça fonctionne (clic droit sur la couche, changement de filament, choix du filament). Sans Box, à mon avis, il faut utiliser l'insertion d'une pause comme expliqué dans ce guide, car les lignes de commandes de la macro, elles, utilisent des changements d'outil ( T(x) ) qui sans Box risquent de perturber l'imprimante. Je n'ai pas trouvé sur le Github de Qidistudio d'un tel «bug». PS: je me suis permis d'insérer ton bloc de macro dans une section Citation . Modifié (le) samedi à 15:03 par fran6p
vap38 Posté(e) samedi à 15:21 Auteur Posté(e) samedi à 15:21 (modifié) merci @fran6p OK si le changement de filament fonctionne avec la BOX c'est super Evidemment la pause fonctionne sans soucis pour le changement de filament. J'ai essayé de placer une macro M600 dans printer.cfg hélas cela ne fonctionne pas l'extrudeur se met en home et stationne pour dire que le filament est trop froid. J'ai compris que le Gcode pour le changement de filament est spécifique à la BOX pour QIDIStudio si joint la macro [pause_resume] [gcode_macro M600] gcode: {% set X = params.X|default(50)|float %} {% set Y = params.Y|default(0)|float %} {% set Z = params.Z|default(10)|float %} SAVE_GCODE_STATE NAME=M600_state PAUSE G91 G1 E-.8 F2700 G1 Z{Z} G90 G1 X{X} Y{Y} F3000 G91 G1 E-50 F1000 RESTORE_GCODE_STATE NAME=M600_state Modifié (le) samedi à 15:24 par vap38
fran6p Posté(e) hier à 11:38 Posté(e) hier à 11:38 Avec la Q2, je n'ai aucune macro M600 . Avec la Plus4, c'est une macro fournie par Qidi ? Dans la macro Qidi avec la Q2, gcode_macro.cfg, une macro M603 décharge le filament, une M604 charge le filament (Box ou pas Box), PAUSE (ou M0, M25) parque la tête en dehors de la surface d'impression. Si une Box est connectée et détectée, le déchargement du filament utilise une autre macro UNLOAD_FILAMENT : [gcode_macro UNLOAD_FILAMENT] gcode : {% if printer.save_variables.variables.enable_box == 1 %} {% set T = params.T|int %} CUT_FILAMENT T={T} MOVE_TO_TRASH UNLOAD_T{T} G1 E25 F300 M104 S0 CLEAR_OOZE CLEAR_FLUSH {% endif %} Malheureusement, cette macro appelle une macro UNLOAD_T dont on ne sait pas exactement ce qu'elle fait : elle doit être intégrée dans un des fichiers Python obfusqué sous forme d'une bibliothèque (box.so). Pour le moment (et ça risque de durer), je n'ai pas découvert comment décompiler ces bibliothèques en .so .
vap38 Posté(e) hier à 11:56 Auteur Posté(e) hier à 11:56 le code M600 est issue de GitHub avec différents exemples. Curieux j'ai vu un article concernant les fichiers .SO Tout ce que vous devez savoir sur les fichiers .so. Gcodes.txt 1
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant