Notifications
Clear all

Suggestion Box  

Page 2 / 2
  RSS
cwbullet
(@cwbullet)
Member
Gcode

Isn’t that the truth.  We always focus on the printer being the problem, but there are two other variables that cause a lot of errors (the slicer and the person sitting in front of the mouse and keyboard).  

--------------------
Chuck H
3D Printer Review Blog

Posted : 20/08/2021 4:14 pm
3DALHEMIJA
(@3dalhemija)
Estimable Member
laser (lidar?) buildplate monitoring

I'd suggest Prusa development of budget laser 3D scan live "terrain" monitoring (often used for AI arduino projects known as LIDAR). Its meant to be live monitoring printed layer paths, comparing to CAD/Gcode file, on-time detecting and preventing potential irregularities during process that usually lead to issues (deatached parts, bird nest, warping, bad extrusion etc.). 

This could help :

1. Detecting and excluding bad parts from printing

2. Pausing whole print before our manual response

or 3.  "Adaptive manufacturing" (more advanced Markedforged innovation) - in-process part accuracy detection AND correction of irregularities (adjusting temperature, extrusion etc.)

Posted : 20/08/2021 7:08 pm
Ringarn67
(@ringarn67)
Reputable Member
Didn't work

😣

Posted by: @ringarn67

@nicolaskypreos

Hardened Nozzle Temp Offset

Would great if we could select hardened nozzle from the HW menu and it automatically ads 10C (or a settable amount) to the print nozzle temperature. 

VERY good, totally agree 👍 
And you made me think of some small changes in "Start up g-code" and "Before layer change G-code" to achieve just that.
It IS achievable, I just don't know how at the moment... 

Didn't work as I intended....
For a start, english is Not my native language! My idea was not "to achieve just that"
More of "achieve somewhat what he asked for".
For Me, my idea was great, I VERY rarely reuse old g-code, I save the 3mf and generate code when I want to print same thing again.
That means I do not have old g-code sliced for brass nozzle, a couple of weeks later I change my nozzle to hardened steel and want to reuse the same g-code.
So I have no need to change temp on printer! YMMV

My thought was this: Save new print setting and name it "Whateveryouwant Hardened", Change start g-code to this
cutout
M104 S{first_layer_temperature[0]+10} ; set extruder temp +10 for Hardened Nozzle
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M109 S{first_layer_temperature[0]+10} ; wait for extruder temp +10 for Hardened Nozzle
cutout

Change "Before Layer Change" to this:
;BEFORE_LAYER_CHANGE
{if layer_num==1}M109 S{temperature[0]+10}{endif} ;+10 for hardened nozzle
;ADJUST;[layer_num]
G92 E0.0

It worked, sort of.
Problem is that I did not know the order PS process g-code when changing layer.
First PS process "before layer change g-code", then wipe and retract
After that PS process "after layer change g-code", I tested it there too
And now the problem, after all of this PS puts in "M104 S[first_layer_temperature]" (from filament settings) just before it starts to print layer 2. 

So, I think this was a great idea in my head, but in reality not so great.... (It is not the first time, and I am afraid not the last time either 🙄 )

@bobstro

Yes, printers are dumb. They just do what they been told to do. But not always, I noticed.... Bigger CNC-machines are a bit smarter...

I recall someone noticed that gcode placeholders are not consistently expanded in PrusaSlicer. IIRC, lines that worked in start gcode didn't always work as layer change gcode. This may have been fixed in recent releases.

I read that thread to. Seems a bit strange that PS process them differently. Hope they fix it soon.

Prusa i3 MK3S+ FW 3.11.0 (kit dec -20), PrusaSlicer 2.5.0+win64, Fusion 360, Windows 10

Posted : 20/08/2021 7:42 pm
Ringarn67
(@ringarn67)
Reputable Member

@swiss_cheese

Posted by: @swiss_cheese

@ringarn67

 

It IS achievable, I just don't know how at the moment... 

 

I would have liked this 10 times if the forum would let me, that quote sums up how I make my living.

 

Swiss_Cheese

Paint it on a wall at work 😉   (post a picture if you do)

Prusa i3 MK3S+ FW 3.11.0 (kit dec -20), PrusaSlicer 2.5.0+win64, Fusion 360, Windows 10

Posted : 20/08/2021 7:47 pm
Swiss_Cheese
(@swiss_cheese)
Noble Member

I'm the CEO, I could have it put there, but some how I think it's meaning would be lost on some of the engineers. it's best if there are exposed to the idea in it's working form. Me 😉

The Filament Whisperer

Posted : 20/08/2021 8:59 pm
Ringarn67 liked
bobstro
(@bobstro)
Illustrious Member
Fun with gcode
Posted by: @ringarn67

Didn't work as I intended....
For a start, english is Not my native language! My idea was not "to achieve just that"
More of "achieve somewhat what he asked for".

Understood. Most of my tinkering starts out the same way.

[...] My thought was this: Save new print setting and name it "Whateveryouwant Hardened", Change start g-code to this [...] 

I think you're close to having it working. The hard part is making it any easier to use, much less automatic.

I looked through a gcode file, and PrusaSlicer does handle temperature changes in a straightforward manner:

  • The 1st layer temp is set to the 1st layer temp with M104 & M109 in the start gcode before mesh bed leveling.
  • If the temperature for the 1st layer is different than the higher layers, the new temperature is set with M104 (with no M109) on the 1st after layer change.

There are no other nozzle temp changes, at least with a basic printer setup and simple print.

[...]

Change "Before Layer Change" to this:
;BEFORE_LAYER_CHANGE
{if layer_num==1}M109 S{temperature[0]+10}{endif} ;+10 for hardened nozzle
;ADJUST;[layer_num]
G92 E0.0

Just wanted to point out that you've got a M109 there, not M104.

It worked, sort of.
Problem is that I did not know the order PS process g-code when changing layer.
First PS process "before layer change g-code", then wipe and retract
After that PS process "after layer change g-code", I tested it there too
And now the problem, after all of this PS puts in "M104 S[first_layer_temperature]" (from filament settings) just before it starts to print layer 2. 

That's what I'm seeing as well. Your custom after layer change gcode is inserted before PrusaSlicer inserts its own.

You could fix that fairly easily with a post-processing script, but again, that's not going to be "simple" or "automatic" in any way. I'd personally rather just adjust the filament profile, either temporarily or permanently.

Now... if I were running a print farm and this was a pervasive problem, I think OctoPrint could handle this. Again, you'd have to write a script, but you could embed something in the gcode, even in a comment, and simply replace the temperatures specified in M104 & M109 commands. Or simply set a flag in OctoPrint whenever you swap nozzles and have it do temp adjustments as it streams the gcode to the printer.

So, I think this was a great idea in my head, but in reality not so great.... (It is not the first time, and I am afraid not the last time either 🙄 )

Oh, don't get me wrong. It's a great idea and there are some clever approaches. I just don't think they're at the level of simplicity or automation that the original suggestion was hoping for.

[...] Yes, printers are dumb. They just do what they been told to do. But not always, I noticed.... Bigger CNC-machines are a bit smarter...

Sometimes that works better. I bought a Monoprice Cadet, one of those little box printers, out of curiosity. The "automatic bed leveling" was always a joke and the probe simply died. I contacted "support" and they just suggested sending it to Amazon... after waiting for days so I had missed the return window.

I wound up stripping out all of the bed leveling code out of the PrusaSlicer start gcode and have OctoPrint insert a routine to home the nozzle, then manually reset the Z height to a specific value sort of like a poor man's Live-Z. It is a pain to adjust that value often, but I only have to update it in OctoPrint, not every slicer preset. The printer's stupidity works in my favor.

I read that thread to. Seems a bit strange that PS process them differently. Hope they fix it soon.

I'm not sure if they changed something, but I get an error now:

My notes and disclaimers on 3D printing

and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan

Posted : 20/08/2021 9:13 pm
Ringarn67
(@ringarn67)
Reputable Member
Fun with G-code

Sure is 😀
Been operating CNC-machines for 30+ years now. And the manual coding and scripting is the most fun part.

M109 is "set and wait", that was what I wanted, probably not needed in hindsight, but that was my intention.

With many ideas comes a bunch of bad ideas 😀 

 

If you try this it works, "M104 S{temperature[0]+10}" (and M104 instead of M140)
I don't really understand the difference of them {}[]() all the when's and why's, I figure them out by trial and error 🤣 
Do you know of any manual about it somewhere?

Prusa i3 MK3S+ FW 3.11.0 (kit dec -20), PrusaSlicer 2.5.0+win64, Fusion 360, Windows 10

Posted : 20/08/2021 9:54 pm
bobstro
(@bobstro)
Illustrious Member
Slic3r roots
Posted by: @ringarn67

[...] If you try this it works, "M104 S{temperature[0]+10}" (and M104 instead of M140)

Ah, the scalars. Seems PrusaSlicer will accept without them in some locations but wants them in others. Perhaps when doing evaluations in the curly braces? I tried using M117 at first, so just put in another command, and tried with and without expanding it in comments.

I don't really understand the difference of them {}[]() all the when's and why's, I figure them out by trial and error 🤣 
Do you know of any manual about it somewhere?

There's a bit of info in the Slic3r docs, but not much. As I recall, anything to be evaluated appears in curly braces. If a placeholder is inside curly braces it should not be enclosed in square brackets. Otherwise, placeholder names should be in square brackets to be expanded.

I'll see if I can find the page with those notes.

My notes and disclaimers on 3D printing

and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan

Posted : 20/08/2021 10:07 pm
Ringarn67 liked
Saleh
(@saleh)
New Member
Contest suggestion

I feel like it would be cool to have a contest on printables.com for Kitchen accessories/gadgets. it would be like any kind of kitchen gadget/accessory that's made for helping you do something faster/better/easier. 

Posted : 10/06/2023 12:12 am
Vittorio
(@vittorio)
Member
RE: Suggestion Box

Hi there,

Let me just add two ideas.

  • Auto switch-off after successful printing completion. I have already read about third-party solutions by Tasmota, Octoprint, etc., but it is seriously something that is missing in any Prusa firmware.
  • A modular spool holder with auto-rewind and WEIGHT SPOOL FILAMENT SENSOR. There are many third-party solutions on AliExpress and many others on printable or other online resources. Sincerely, some are very cool but for a serious purpose, they are incomplete projects and honestly, I didn’t buy an Mk4 to spend time printing Prusa extensions or mods.

    Here you can look at some online products to understand what I mean, and honestly, the prices are really high!
    https://www.printer-box.com/product/spool-tank-black-edition/
    https://www.printables.com/model/551828-unoriginal-prusa-drybox

    Anyway, my suggestion is regarding an all-in-one solution. The box should be modular (a person can extend the box with others) with 5 spools and auto-rewind, but the most interesting part of each spool could be a weight sensor. This allows you to load a filament and basically understand the percentage of usage before and during each printing. This means that we can know if we have enough filament to complete the printing session before starting. We could decide what to do, override and start, change the filament, or alert with a notification at a specific percentage when we are close to finishing the filament, etc. With MMU, it could also be possible to decide to swap and continue with another one, etc.

    If you ask about how to calculate the spool empty weight or the filament weight, there are many easy approaches and this is not a problem at all. Even a percentage of error of 10 grams could be good enough or in most cases, perfect.

    Let me tell you something about filament and why this feature could be very interesting. When you are at the end of a filament, in most of my cases using different brands, the end part is blocked by a patch or attached to the spool. So basically, this producer behavior can cause a very large mess if you are a serious printer.

    Even, it is really nice to be notified and predict at which time you need to change the filament if you don’t have an MMU, or if you have an MMU and you want to avoid end filament mess.

Aloha 😉
Vic

Posted : 05/01/2024 4:17 pm
Page 2 / 2
Share: