M567 mixing ratio limit/check
-
Created a Pull Request at GitHub that implements a check whether the sum exceeds 1. including a new parameter
M567 Pnnn S0
to disable this check on a per-tool-basis. -
@wilriker thanks
@deckingman do you think a warning by default if its <1 is a good idea? (the warning would alos be disabled if the all ratios that do not add up to 1 switch is set.
-
Ratios that add up to less than 1 will lead to under extrusion. So possibly ruined prints but otherwise safe. I leave it for the community to decide if a warning would be appropriate.
As I've said before, I personally don't really care because I know the risks and implications of getting it wrong.
I'm only trying to help others - especially you Duet guys who are the ones who would ultimately take the flak in a worse case scenario. -
@wilriker Fancy doing another spread sheet? What I have in mind in something that people can input the number of extruders. Then for each extruder, they input the mixing amount as a number. Initially, extruder 1 will accept values up to 100. Then extruder 2 would only accept values of 100 minus the extruder 1 value. And so on for the other extruders. Any unused extruders would default to zero. The output would be a cell containing the string (M567 I think - not sure as I'm just using my phone) followed by the extruder values separated by colons. The user could then copy and paste this string into config.g or the DWC console. It might help mitigate "fat finger syndrome".
-
@deckingman said in M567 mixing ratio limit/check:
It's not really for me to say but personally, I'd put it in the category as the recent implementation of not being able to move axes unless they have been homed. Presumably that was done for safety reasons and this is also for safety reasons. So by default, don't allow mixing ratios that don't add up to unity but have a command that people can use in their config g or elsewhere that will override that behaviour.
I don't see it as a safety feature. It's no different from setting the extruder steps/mm to high, or using M221 to turn the extrusion factor up to 300%. Whereas not allowing motion before homing is a safety feature for CNC machines in particular, where incorrect motion can do a lot of damage.
I can see some point in having an option to normalise the mixing ratio so that it totals 1 when a mixing extruder is being used.
At the very least, I would suggest that the documentation be updated with a big warning in bold letters stating the dangers of setting non unity mixing ratios. That might be a reasonable defence in the event of any action bought about by some sharp American lawyer acting for a client who's hot end exploded.
I think it's much more likely that the extruder will grind through the filament. But I'll add a warning to the documentation. [Edit: somebody else already did.]
-
@dc42 It's a lot different because on a normal hot end, there is only one extruder pushing the filament in, whereas on a mixing hot end, there could be 5, so 5 times the pressure. Ref your last paragraph, it has already happened. A hot nozzle was reportedly blown out when a reported pressure of 3000 psi suddenly let go. Fortunately no one was injured.
I really don't understand why I've ended up having this argument. I was just trying to help you guys out as ever. It's bad enough getting flak and verbal abuse from other users when I support you guys.
So as of now, it ends here. -
Ian, I have so many requests for new features that I have to be selective about which ones I implement. Even when somebody else implements it and submits a pull request, I have to consider the feature carefully in case it has unforeseen consequences. It's very easy to say "such and such shouldn't be allowed", but all too easily users hit a new limitation; then some of them won't notice the error message and will complain on the forum that the printer didn't do what they expected. Or they won't understand the error message and ask for support.
Did the incident of a nozzle being blown out happen on an ordinary FDM printer such as the types we build, or on an industrial type machine?
-
@deckingman said in M567 mixing ratio limit/check:
@wilriker Fancy doing another spread sheet? What I have in mind in something that people can input the number of extruders. Then for each extruder, they input the mixing amount as a number. Initially, extruder 1 will accept values up to 100. Then extruder 2 would only accept values of 100 minus the extruder 1 value. And so on for the other extruders. Any unused extruders would default to zero. The output would be a cell containing the string (M567 I think - not sure as I'm just using my phone) followed by the extruder values separated by colons. The user could then copy and paste this string into config.g or the DWC console. It might help mitigate "fat finger syndrome".
Nearly done. I will need to add the (optional but enabled by default) enforcing of a total of 100% tomorrow. Did it as a website again due to its ability to "auto-upgrade".
-
@dc42 said in M567 mixing ratio limit/check:
Even when somebody else implements it and submits a pull request [...]
I just want to say that I will occasionally be this somebody - just as I was in case of this thread - but please never hesitate to reject my pull requests of you don't feel like adding it to the source. I won't take it personal. I am happy to offer my coding abilities but in the end you decide what gets added to RRF.
On the other hand, if you need someone to outsource some implementation tasks I also offer my help hereby.
-
Given that mixing hotends running Duet electronics are about to become more widespread via M3D and the Crane printer and Quad Fusion head, perhaps this warrants further discussion with them? I think the feature has merit and would likely be better implemented before the hardware becomes widespread so that it doesn't become a jarring change at a later date. Just my 2 cents.
-
@phaedrux said in M567 mixing ratio limit/check:
Given that mixing hotends running Duet electronics are about to become more widespread via M3D and the Crane printer and Quad Fusion head, perhaps this warrants further discussion with them? I think the feature has merit and would likely be better implemented before the hardware becomes widespread so that it doesn't become a jarring change at a later date. Just my 2 cents.
Good idea!
-
I don't want to mention the name of the printer or extruder here on these forums as I consider it to be at the prototype stage and don't want want the makers to suffer bad press. Let's just say that the name of the printer that experienced the issue has been mentioned but I won't say what it is and you didn't hear it from me. I think you'll find that any discussion you have about this issue with makers of mixing hot ends will be met with approval.
-
@dc42 said in M567 mixing ratio limit/check:
Did the incident of a nozzle being blown out happen on an ordinary FDM printer such as the types we build, or on an industrial type machine?
Definitely consumer FDM.
-
OK, you've persuaded me that some sort of protection is worth having. What I'm not convinced about is that the right sort of protection is a global limit, because it raises the following issues:
-
What should the firmware do if the limit is exceeded? Refuse the command with/without stopping the print (which would be certain to lead to support posts)? Scale all the values down so that the total is equal to the limit? Something else?
-
This doesn't address the safety issue on IDEX machines, if it is necessary to disable the limit on those machines.
-
Does it make more sense to normalise the mixing ratio to a specified total? So that a mix of 1:1:1 with the default total of 1 would mean the same as 0.333:0.333:0.333.
My current thinking is that the firmware should always normalise the mixing sum to a specified total. That total should be tool-specific and therefore configured in the M563 command, with a default value of 1. Perhaps those of you who are lucky enough to have mixing extruders could give this some thought and reply with your comments.
-
-
@dc42 I don't mind if it throws an error and stops the print or normalises it down to 1, as long as there is a switch in M567 to override this functionality for IDEX printers or other use cases (such as testing filament monitors)
-
@deckingman First version of the M567 Generator is ready. You can select the number of extruders (up to 20) the tool no. and on how many percent total you want to cap it.
It will provide you with the appropriate
M567
command or a message that you exceeded your set cap. I will implement an automatic approach where it reduces the ratio of the previous extruder at a later time. -
@dc42 As soon as the specs are clear I can adjust my PR to reflect that.