Filament run out sensors for dual extrusion setups


New Member
Hey everyone, I'm trying to determine if the board on the gMax 1.5XT+ can handle 2 separate filament run out sensors I.E. using 2 separate sets of pins?
I'm thinking the alternative method would be to splice the cables into 1 set of pins to keep the desired effect. Any thoughts or comments on a proper implementation?
I found the firmware to be unreliable with filament sensors in the first place (frequent false positives), plus it only supports one sensor. You can wire two sensors in series, but the firmware only knows how to resume the print using the primary extruder--i.e., if the secondary runs out of filament and you fix that, the resumed print will be shifted 34mm. Our solution was to use OctoPrint and the Enclosure Plugin. Easiest & cheapest path to this IMHO is OctoPi, and it's still very non-trivial, but you didn't have anything better to do with your time, right?

Once you get OctoPrint running, with your filament sensors all wired & the Enclosure Plugin settings, configure the filament sensor on the primary extruder to trigger a "Filament Change" action (also check under the "advanced options" for this plugin, and be sure the filament change GCODE is just "M600;"). Configure the sensor on the secondary extruder to trigger a "Printer Pause" action. Then, in the OctoPrint "GCODE Scripts" settings, set the "After print job is paused" script to:

G91 ; change to relative mode
G1 Z15 ; move Z up 15mm

And set the "Before print job is resumed" script to:

G91 ; change to relative mode
G1 Z-15 ; move Z down 15mm
G90 ; change to absolute mode

It's not perfect, but it works. In fact, using OctoPrint solves (or at least works around) a lot of other irritating issues with the gMax, so it's probably worth setting it up anyway.