Filament-change.g
-
M600 is intended for use in GCode files, for doing manual colour changes. It is not run automatically when a filament monitor registers a filament problem.
-
Okay, so i assume that in RRF2, it was a bug that it was also running when a runout occurred ? So by the way, is there an object model for the filament runout ? So i can do a bit of code to add at my pause.g to run filament change on filament error
-
@Krohm-Koala @noisettetbou
AFAIK, it's not intended to automatically change filament if the filament runs out. A filament sensor defined by M591 runs pause.g when filament runs out. You could put M600 in pause.g, but then it would do a filament change every time you paused the print!You could change the setup of your filament sensor switch, so it triggers a macro that calls M600. Use M581 https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M581_Configure_external_trigger instead of M591.
Ian
-
@droftarts What you're advising isn't really required, as now we have object model and meta code that can give So much possibilities. If there's an object model for filament runout, it's "easy" to put a bit of code in pause.g to check that and run filament change only if a runout occurred
-
@Krohm-Koala Sure, but not everyone is comfortable with programming, and not everyone is running release-candidate/beta firmware! Current release firmware is 2.05.1 or 3.0, which doesn't have those options.
Not sure why it worked in RRF2 when filament runout was detected, but now doesn't. Unfortunately don't have the skill to check the code.
Ian
-
For filament monitors that provide a "filament runout" indication (i.e. simple switch, or laser + switch, or magnetic + switch) there is a "filamentPresent" object model property. Send M409 K"sensors.filamentMonitors" to see it.
-
@droftarts Yes, for sure, i maybe doesn't have much or maybe less skill than you to check code x) I just try some things ^^ and as my bro is really good at programming, he help me sometimes ^^
@dc42 Thanks ! I'm working on my code, if it work, i'll be posting it here and share it with my FB group It's so amazing to be able to do as much with meta code, possibilities are almost infinite now
-
@dc42 I ran through a problem,in my pause.g, I made a code to call filament-change.g, at this point everything's okay, but in my filament-change.g, I call another macro to purge, here is the problem, at the moment I want to call my purge macro, the print resume, at the height of the pause height, and block the card as it's still saying in the interface that the print is paused, but it's running, can't pause or anything, just emergency stop... I think it's unusual to call macro in macro in macro but maybe it's the problem ^^
-
So you have pause.g calling filament-change.g, and filament-change.g calls purge.g, but instead of running purge.g at that point the print resumes. Is that what you are saying?
-
@dc42 exactly, do you want me to give you all the gcodes and meta of these ?
-
Yes please. Also, please confirm you are running firmware 3.01-RC6.
-
@dc42 Sure I'm running the 3.01-RC6. So there are the files
pause.g
filament-change.g
Purge.g -
@dc42 Hi, have you got a bit of a time to look at it ?
-
Yes. Please try 3.01-RC7. I made a change in that version which I think will fix it.
-
@dc42 So i tested it again on 3.01RC7, exactly the same result, it'll be easy to get around with the new M291 in 3.02 as i will be able to integrate the purge macro in the filament-change.g
-
3.01-RC8 still react the same
-
Thanks, added to my list of things to investigate.
-
@dc42 Thanks, i'll overcome this when 3.02 will be here, if you need me to test it another time later, don't hesitate
-
@Krohm-Koala, please can you try release 3.01-RC10 and see if the problem is still present.
-
@dc42 i just tested it, so, it's still here, still resume and launch the macro at the same time, blocking everything.