Bonjour et merci pour mon adhesion

Bonjour , Je ne parle pas anglais, meme si google et ton "ami" si on peut dire.je me permet une petite vidéo explicative et aussi je souhaite savoir comment on supprime avec Octoprint le fait qu'a chaque print il me refait les 24 points avant chaque impression, comment je le desactive, sur l'imprimante je sais faire mais sur Octo ??
je pose aussi d'autre question dans cette vidéo qui est en français. Merci de votre aide

Bonjour, I do not speak English, even if google and your "friend" if we can say so. I allow myself a small explanatory video and also I would like to know how we eliminate with Octoprint the fact that each print he remakes me the 24 points before each print, how do I deactivate it, on the printer I can do it, but on Octo ??
I also ask another question in this video which is in French. Thank you for your help

To other : I'm speaking french with @christian69 in order to speed up the process and I'll make a summary at the end.

@Christian69 : salut !

Il manque pas mal d'informations dans ton post. Je vais faire une petite exception et répondre aux questions de ta vidéo, mais pour l'avenir je veux bien que tu pose les questions en texte, la vidéo c'est long à regarder (quoi que bien fait, félicitations :))

Question Text 1 : « Désactiver les 24 points »

Alors, pour cette question, c'est probablement dans CURA que ça se gère. Les 24 points que ton imprimante fait, c'est pour détecter le niveau du lit. Dans Cura, dans le menu des préférences, paramètres de l'imprimante, en bas à gauche de la fenêtre tu as une série de commandes (au format GCODE). L'une de ces commandes est probablement G29, qui est la commande pour déclencher la prise de niveau. Tu peux la supprimer de CURA, mais on a tendance à garder cette commande, comme ça avant chaque impression on reprends le niveau de ton lit pour être sûr que l'impression sera bien faite. En arrière plan, une fois les 24 points pris, ton imprimante calcul une dérive qui permet de simuler un plateau plat et de redresser les (petits) écarts que présente un plateau concave ou pas à niveau ;). 24 points c'est énorme, généralement on fait plutôt 9 (un à chaque angle plus une ligne de trois au milieu), mais c'est dans le micrologiciel de ton imprimante que c'est réglé ainsi et je ne pense pas qu'il y a ait une manière simple de changer ce nombre (bien que je ne connaisse pas parfaitement la CR10).

Question Vidéo 1 : « quand mécaniquement sur la CR10 je règle mon Bed, est-ce que ça se voit instantanéement dans le Bed Visiualizer »

La réponse est nom :). Ce que tu vois dans cet onglet c'est le résultat de la prise des 24 points, puis un petit calcul pour extrapoler la platitude de ton plateau (et son niveau). Ton but est d'avoir toutes les valeurs en vert. C'est pas très grave si c'est pas parfaitement nivelé, dans que c'est vert (limite bleu/vert) c'est que la distance est infime et presque négligeable pour le quotidien.

Note que ton plateau change constamment de forme et de niveau. La chaleur, la température ambiante et un tas de paramètres font varier la consistance des matériaux comme l'alu, le verre, la durêté de tes ressorts. C'est pour ça qu'en général on préfère laisser la prise de points avant une impression car suivant la météo, ton imprimante peut vite changer de profil physique !

Question Vidéo 2 : « imprimante bloquée pendant l'impression »

Je te déconseille vivement ce genre de manips pendant une impression. En effet, une imprimante 3D fonctionne à moitié en absolu (« aller à un point X / Y /Z et déposer du fil ») mais aussi et beaucoup en relatif (« remonter de 3mm par rapport à la position initiale »). C'est pourquoi, pendant l'impression, les paramètres sont fixés, de sorte que l'imprimante connaisse toujours à temps constant sa position absolue, sans défaut.

Si tu as un problème d'altitude, c'est probablement que ton plateau est trop bas (même si la vidéo semble montrer un bed tout en vert) ou que tes paramètres d'impression sont pas les bons. Typiquement, j''imagine que tu as eu le problème de la tête qui s'est déplacée entraînant avec elle un fil qui était supposé être collé. Alors, peut-être jouer avec la température de la tête et/ou celle du plateau. 200° pour le fil et 60° pour le plateau sont des valeurs bonnes pour la plupart des filaments du commerce. Aussi, tu peux demander à CURA, dans les paramètres de découpe, de réduire largement la vitesse de la tête d'impression pendant la première couche (10mm/s par exemple, ça ira lentement mais a laissera le temps à la gravité de faire son œuvre).

Enfin, autre théorie, il est possible que ton capteur de distance soit mal réglé. Est-ce que le Z-Offset de ton imprimante est bon ? Typiquement, pour vérifier, tu demandes à ton imprimante de faire un « autohome »; puis, tu demande sur l'écran de l'imprimante à descendre l'axe Z à zéro. Normalement, tu devrais alors pouvoir glisser une feuille dessous la tête d'impression, ça devrait gratter (mais pas bloquer la tête, juste gratter légèrement).

To english readers : Christian had 3 questions. The first one, is it possible to avoid the bed levelling at the beginning of the print (answer : you can in CURA but you probably don't want to; 24 poitns of control is huge but probably in the firmware and hard to change). Second question was about Bed Visualizator, to know if mecanichal adjustments (made with springs) is seen instantaly on the plugin (answer is no, hence the G29 commands). Last, it was about the move commands of the printer being locked (grey'ed) during printing (answer : the printer has to know its relative and absolute position, and changing position of the head during printing is a dangerous game).

K.

4 Likes

Je te remercie pour toutes ses réponses qui m'aide bien. Je ne suis pas trop débutant en 3D mais avec Octoprint si.

Dans ta réponse la seule chose qui me géne c'est, apparement l'impossibilité quand tu imprime via Octoprint, de régler la hauteur de tête.
En effet quand tu utilise la carte SD tu a l'écran de ta machine et tu peux dans les options demander a la tête de monter ou descendre, selon comment se passe le print et refaire un réglage de bed une fois le print fini.
Apparement quand tu lance un print avec Cura via Octoprint tu ne peux plus rien faire, est-ce que j'ai bien compris ???

Merci

C'est exact. Néanmoins, je suis pas un grand expert de l'impression 3d (mais informaticien et expert de logiciels comme Octoprint) donc ce que je te propose c'est que je dise (en anglais) aux autres que leur aide est souhaitable pour vérifier ce point, et tu gardes ma réponse en attendant ?

To English speakers !
I'm not sure about the answer I gave to Christian about the ability to move the hotend manually during a print. Chris' answer is that he can do that during a print with the onboard controler, to adjust Z's height during a print (and re-level the bed after the print). Christian is using a CR10.

I'm not sure if this is a standard thing or not ? Maybe someone has a clue ? For now, my answer remains "no, you can't move the head during a print with Cura/Octopi without making a pause in the print". But if you have opinion, please share it :wink: (in English; I think Christian can read but not speak; I'll translate if needed).

K.

1 Like

Ok j'attend des confirmations ou pas sur ce point merci beaucoup de votre aide.

1 Like

This is correct, the firmware does not disallow it, OctoPrint/Cura generally stops the user from doing this. Protects people from themselves :wink:.

There is no way this can be changed at the moment, and I don't think this will change in the future. It is better to have it disabled, so people don't break their prints.

And, @koreth you're doing an outstanding job of translating so the rest of the community can follow along. Thank you!

2 Likes

Bonjour et encore merci de votre aide. Je suis un peu confus avec vos réponses.
Koreth dit : que je ne peux le faire sans mettre le logiciel en PAUSE, Chalie Powell dit que non.
En fait j’avais essayé, en mettant en pause et effectivement les fonctions sont devenues accessibles, mais quand j’ai cliqué sur la flèche du bas de mon Z, bien en dessous aucun chiffre ne changeait et quand j’ai repris l’impression le problème resté le même, tête trop haute. Oui je sais je n’ai qu’a faire un réglage de bed correcte, seulement je ne connais personne qui le réussissent a chaque fois correctement. Donc pourquoi quand j’ai fait cette pause les chiffres du Z n’ont pas changé ?
Ou alors on ne peut vraiment rien faire quand un print et lancé avec Octoprint, ce que je trouverai dommage pour un tel logiciel très sympa, mais qui sera encore plus limité dans ses fonctions qu’une CR10s Pro..... Merci de vos réponses
cordialement

PS: j'ai essayer de mettre mon texte traduit en anglais via Google mais le systeme ne me l'a pas affiché.

Hello and thank you again for your help. I am a little confused with your answers.
Koreth says I can't do this without putting the software on PAUSE, Chalie Powell says no.
In fact I had tried, by pausing and indeed the functions became accessible, but when I clicked on the down arrow of my Z, well below no number changed and when I resumed printing the problem remained the same, head too high. Yes I know I only have to make the correct bed setting, only I don't know anyone who gets it right every time. So why when I took this break the Z numbers haven't changed?
Or there is really nothing we can do when a print and launched with Octoprint, which I would find a shame for such a very nice software, but which will be even more limited in its functions than a CR10s Pro ..... Thank you for your responses
cordially

In addition to the USB port that OctoPrint requires, many printers have a directly attached file storage device (SD card) and many also have a screen with controls attached. The firmware in the printer is responsible for interfacing with the storage device, the screen with controls, and the USB port. This firmware also determines which or how many of these interfaces it will respond to at the same time.

OctoPrint's connection to the printer is through the firmware in the printer. With a few exceptions, the language of this communication is gcode. By design, when OctoPrint is sending gcode commands from a file, it does not allow gcode commands from the user interface (web page). Allowing gcode commands to be sent from both sources would usually result in a failed print.

My printer, a LulzBot TAZ 6, has an LCD screen and one of its menu choices is Tune with a submenu of Z-offset. The Marlin firmware in my printer allows me to use this submenu while a print is active (from the USB port) to fine tune the Z position.

I can also use the Marlin gcode command M851 to set this offset initially. It is saved in the EEPROM of the printer. The Marlin commands M206 and M428 have similar uses.

I believe the answer to one of @Christian69's questions is that while a stream of gcode is actively being sent to the printer (and I believe this is true for files printed from the SD card as well), manual adjustments to the nozzle position are only available through the screen and controls on the printer, and only if the firmware in the printer allows it.

The stream of gcode can include commands which will pause the stream and allow other sources of input including a command to resume streaming. Depending on what commands are issued from these other sources, the physical position of the nozzle could be altered causing the commands in the resumed stream to be displaced (which may or may not cause the print to fail).

Ok B morgan, merci pour cette réponse et la réponse et donc non. Je trouve cela dommage de ne pouvoir piloter l'imprimante a partir D'octoprint. Ce logiciel doit faire encore un tas de choses que je ne connais pas, mais il me semble qu'une chose basique comme la commande de la hauteur de la buse pendant l'impression devrait existé sur un tel logiciel. C'est dommage, je vais essayer de m'y pencher encore mais cela me "refroidis un peu" ce manque de fonction, cela peut paraitre bete hein mais c'est vrai que je trouve trés pratique de pouvoir avoir une action sur l'imprimante avce le logiciel que l'on emploi. Cura le fait, Simplify aussi, pourquoi pas Octoprint.......mystére peut-etre pas grave merci à vous toutes et tous.

I don't understand this statement. Can you explain what Cura can do (that OctoPrint can not) with regard to controlling the nozzle height while printing?

Bonjour, B-Morgan, Bonjour tous le monde, il doit y a avoir une chose que je n'ai pas comprise.

De ce que je lis, on m'explique que quand le print et lançé avec Octoprint, je ne peux regler la hauteur de la buse si j'en ai besoin. J'ai explqiué les manipulations que j'ai faite, et d'aprés ce que je lis il en ressort toujours qu'a part mettre en paude Octoprint la fonction ne marche pas. J'explique aussi que même en pause, et même si les fonction des 3 axes sont devenue accessibles, j'ai cliqué a plusieurs reprises sur la fleche du bas et que le chiffre correspondant a cette colonne ou tout autre chiffre n'a pas changé, pour m'indiquer par exemple qu'aprés mes quelques clic sur le bouton la tête aura été descendu de (exemple 0.10 ou 0.15). Donc je me dis au vu des explications des uns et des autres que octoprint ne gere pas cette fonction. Avec mes imprimantes (Cr10sPRO V2 et Ender 5 plus) cette fonction et active et fonctionne des que je passe dans les options et cela sans mettre l'imprimante en pause.....

Alors qu'est-ce que j'ai loupé dans vos explication et surtout si je me trompe pouvez vous m'expliquer le cheminement (il faut cliquez ici et la etc) pour que pendant le print avec Octoprint je puisse faire la même chose...

Merci

Hey :slight_smile:

English : That's the limit of the "real-time translation" system, I'm sorry I was away from the computer. I'm going to have a french message here, get on point with Christian and in a few messages, I'll give you an english summary :slight_smile:

@Christian69, en français : Hello ! Désolé de t'avoir "abandonné" pendant une jour ou deux ;). Tout d'abord, tu as bien compris ce que voulaient nous dire les autres. En résumé : bouger la tête en hauteur (Z) n'est pas bloqué à proprement parlé par l'imprimante (son firmware, micrologiciel en français). C'est une fonction qui est bloquée par les outils d'impression, donc dans ton cas, Octoprint et Cura. Si tu mets en pause, tu peux faire bouger la tête de place. @b-morgan ajoute un point intéressant : quand tu imprime depuis l'extérieur (c'est à dire pas directement depuis l'imprimante et sa carte SD), le firmware peut bloquer certaines interventions, pour des raisons de sécurité. Selon lui, une réponse possible c'est que dans ton cas, l'ajustement de la hauteur de tête tel que tu le fait n'est probablement possible (pendant l'impression) que sur l'écran de l'imprimante si celle-ci le permet, et potentiellement seulement quand tu imprimes depuis la carte SD.

English: that's just a summary of the current situation in the thread (w/ translation)

Question 1 : Là où nous avons tous un doute, c'est quand tu dis : « Cura le fait, Simplify aussi, pourquoi pas Octoprint ». Cura et Simplify sont des logiciels de découpe. Ils n'impriment pas, à proprement parler. Tout ce que fait Cura, c'est dire à Octoprint : "voici un fichier, imprime-le". Octoprint et Cura savent discuter entre eux, ce qui fait (on le voit sur ta vidéo) que tu peux "suivre" l'impression dans Cura. Mais, techniquement, Cura créé un fichier (gcode) et l'envoie à Octoprint.
Donc, dans ta phrase "Cura et Simplify savent le faire", vu qu'ils n'impriment pas, on comprends mal comment Cura peut bouger la tête.

English : question 1, we don't understand what you mean by "Cura / Simplify can do it", can you explain further ?

Question 2 : Moi, j'ai une autre question, pour toi, peut-être idiote :p. Tu parles des nombres "en dessous du bouton Z". Je pense que tu parles des 0.1, 1, 10, 100 ? Quand tu dis "ils ne changent pas", tu veux dire que tu t'attends à ce que les valeurs changent, ou alors à ce que les boutons deviennent actifs ? Je viens de faire un test en direct, j'ai pausé l'impression depuis Cura et j'ai tous les boutons actifs ("je peux cliquer dessus"). La valeur ne change pas mais c'est normal, les nombre ("0.1", "1", "10" et "100") sont les valeurs du pas (en millimètre). Donc si tu clique sur 100 puis la flèche du haut, tu fais monter ta buse de 100mm. C'est normal que la valeur ne change pas. Est-ce qu'on est raccords sur ce point ?

English : question 2, are you aware that numbers (0.1,1,10,100) behind the Z-axis controls are step, not relative or absolute altitude ?

Question 3 : j'ai pas l'impression (pour l'instant) que tu utilises (humainement) Octoprint. Dans ta vidéo, tu utilises Cura. Est-ce que, dans ton cheminement d'impression, tu vas sur l'interface de Octoprint (avec ton navigateur internet, sur ton ordinateur ou une tablette / téléphone mobile) ?

English : question 3, are you using octoprint or only "octoprint via Cura ?"

Question 4 : pour en revenir au problème de base, i.e. bouger la tête verticalement, c'est un truc compliqué, et si tu veux bien je tente une explication. Quand tu le fait depuis le panneau de l'imprimante, elle enregistre le déplacement que tu as manuellement demandé et elle le soustrait (ou l'ajoute) à toutes les futurs commandes d'altitude. Effectivement, Octoprint ne gère pas du tout un tel comportement. Tout simplement parce que ce n'est pas souhaitable "conceptuellement", c'est à dire que ce n'est pas sensé être une solution (même si certains utilisateurs dont toi y trouvent là leur compte !). Il faut, c'est important, régler le problème source. Ça peut être la hauteur de ton plateau, ça peut-être la température de chauffe (qui fait que le matériaux ne colle pas). Ça peut être des intérférences éléctromagnétiques (je viens de passer 3 semaines à régler un tel problème ;)). Est-ce que je peux te demander quels sont les symptomes exactement que tu tente de corriger ?

English: question 4, let's work on the root cause, "why do you want to move the head during a print". Can you describe the issue that makes you want to do this ?

Si tu peux me dire, à quelle question tu réponds, je suis preneur :wink:

Merci !
K.

Just to clarify this from my end (at the risk of stating what has already been communicated in french :sweat_smile:), manual movement is disabled in OctoPrint while a print is active due to the reasons pointed out by @Charlie_Powell. Additionally, GCODE is usually sliced with absolute coordinates whereas the only way control from a serial host can be implemented in a sensible way is relative movement, which means that IF we allowed movement of the axis why a print is ongoing, it would only cause a short print disruption due to a wonky coordinate somewhere and then everything would stay as is as the absolute coordinates from the GCODE file would simply make any kind of relative temporary changes null and void.

However, it is possible to define your own custom controls to achieve z live adjust as requested here, via Marlin's M290, see https://docs.octoprint.org/en/master/features/custom_controls.html

1 Like

I discovered from my experiments locally that pausing, jogging with controls, and resuming were quickly overridden by the absolute coordinates of the gcode file. I am, however, intrigued by the custom control suggestion but it does generate a question: does the gcode stream have to be paused for the M290 command to be sent?

1 Like

I believe we are getting close to the state where we all understand the need and how the available features of OctoPrint and Cura (on its Monitor screen) actually work. I believe we also understand how the printer's firmware may or may not contribute.

With regards to the labels on the jogging controls in OctoPrint, Cura, etc. They represent the amount of movement (i.e. relative to the current position). They are not a representation of the current position. These controls also just modify the current position and if the gcode stream is in absolute coordinates, the effect of using these controls will be erased very shortly after the gcode stream is resumed.

As Gina has pointed out, while the jogging controls are not useful for fine tuning the nozzle's position while a stream is active, there are gcode commands that could be executed manually (or with custom controls) that could be used to fine tune the nozzle's position without using the LCD screen on the printer.

I think we also understand that using the LCD screen on the printer to accomplish this fine tuning may or may not work depending on the firmware in the printer.

Have I missed anything?

1 Like

Ahah you rock ! I expected a french discussion before I can get back to you with a translation but it seems like everybody here can understand French :D. I added quick translations under the 4 questions in my original answer to be 100% that nothing is lost.

@foosel : thanks for the insights about rel/absolute moves. A question for me (sorry for hijacking Christian's thread) : do I understand that Octopi has to translate gcode commands from Cura before sending it to the printer (to go from absolute to relative) ? Or maybe only a subset of commands ?

@b-morgan : fantastic summary. We have a grip on what Christian wants, and thanks to @foosel's inputs we know why it doesn't work that way, using a serial line.

K.

No. OctoPrint will just stream whatever is in the GCODE file that's been uploaded. But usually (YMMV) those are absolute coordinates. The printer will understand those just fine, as at the start of a GCODE file there's usually also an explicit command to tell the printer to switch to absolute coordinates (if not already set to that anyhow). OctoPrint's jog controls on the other hand run in relative mode (otherwise I'd have to query the position first, calculate the offset, then set the absolute coordinates from that... it's way easier to do a three command "set relative positioning, do relative moves, reset absolute positioning" dance for various reasons).

The absolute coordinates in the file also contain the Z coordinates. Trying to do live adjustments on Z with regular (relative) movement commands will just temporarily move Z and then the next absolute movement with a Z coordinate will override that again. Not really helpful. Live adjustment in OctoPrint by e.g. remembering the relative adjustment and rewriting all coordinates accordingly before they are sent to the printer is a recipe for disaster, due to rounding errors and processing overhead. Instead, the goal is to tell the firmware to adjust any received absolute coordinates by an offset. That's what M290 is for, and I'm pretty sure that the firmware calls the same function internally that is also called when the user does live z adjustment on the display.

In short, this can be summarized as "the jog controls in OctoPrint are not what you want for live adjustments during an ongoing print, you need to use other controls for that". And if the next question is why those controls are not built in: firmware support for M290 is still spotty (too many printers out there ship with vendor forks of established firmware variants that then never see an update again) and last time I checked (which has been a while though) there was no way for me to detect, e.g. from the capability report, whether that command is supported or not, so I can't ship controls for it by default.

1 Like

Totally forgot to answer that one: No, it doesn't. The GCODE stream also doesn't need to be paused for any other kind of command. For the firmware a G1 that came from your file and a G1 that you injected via a jog control or terminal or whatever are exactly the same thing and it will execute it. There's no way to even tell the printer "hey, this is from the job" vs "this isn't". The limitation to not allow jog control usage in OctoPrint while a print is active is because it simply doesn't make sense to enable them, due to the relative vs absolute positioning stuff I outlined above - they would not have any positive effect, they might only screw up the print.

1 Like

@foosel : That food for mind is pure gold. I'm glad I asked, even more that you answered !

I'm trying a small summary in french (it will not be as shining as the original version but I do my best) !

@Christian69, est-ce que tu arrives à retrouver tes petits dans ces nombreuses informations ? En résumé, ton imprimante utilise, en interne, une commande pour "décaler" l'altitude (offset); une fois cette commande reçue, comme je m'y attendais, toutes les commandes futures sur l'altitudes sont décalées. Néanmoins, c'est impossible de réaliser ça depuis Octoprint, pour plusieurs raison. La raison 1, c'est parce que les commandes sortant de Octoprint sont envoyées en grand nombre et traitées ensuite par ton imprimante (c'est pour ça qu'il se passe du temps entre le moment où tu met "pause" et celui où l'imprimante se met effectivement en pause"). Du coup, il faudrait de toutes façon obligatoirement que tu passe par la commande "pause". Ça c'est pour le "non" conceptuel. Mais en plus, Octoprint se veut compatible avec toutes les imprimantes; or, la fonction d'offset dont je parle ci-dessus (le code M290) n'est compatible qu'avec très peu d'imprimantes. C'est pour ça que dans Octoprint, même si tu fais une pause, tu peux bouger la tête mais dès la commande de position absolue suivante, ton changement sera perdu, car ces commandes ne changent pas l'offset, elles changent la position courante. C'est une fonctionnalité offerte par nos imprimantes (chez Ender), mais pas encore vraiment standard.

Cheers !
K.

Google translate understands French well enough for me to muddle through :grinning:. It just doesn't do videos :crazy_face:.

3 Likes