Filament Runout Sensor Strange issue in Duet 3 MB 6HC
-
Hi all
Board - Duet 3 MB 6HC V1.02
Firmware Version - 3.4.5
The filament runout sensor (3 Pin end-stop switch with Enclosure) is connected to io5.
I tried with both Black and White sensors.
Tried enabling in config.g
M591 D0 P1 C"io5.in" S1Condition 1:
- If there is no filament also, the print starts without any warning
- When the print is running, Ii I insert the filament into the sensor and then remove it, it shows the filament is not present and pauses the print (I didn't enable any Filament-error. g)
- Then if I resume the print without loading the filament, the print continues.
When I enter, M591 D0 in the console, it is clearly showing whether the filament is present or not.
"Simple filament sensor on pin io5.in, enabled, output low when no filament, filament present: yes / no"I tried changing the config lines as below:
M591 D0 P1 C"io5.in" S1
M591 D0 P1 C"!^io5.in" S1 - Here the logic got inverted. But issue is same
M591 D0 P1 C"^io5.in" S1 - Same issueI tried a Tachometer-based switch also. Same issue
I installed the latest 3.5 beta version also. The same issue
-
-
-
-
@selva_tvi a filament error event will only be generated when there is a new filament error. I can look at changing this so that an error will also be generated when you start a new print and the sensor is reading out-of-filament. Meanwhile I suggest you add a check to your start.g file that filament is present. You could also create a filament-error.g file to handle the filament out condition during a print, using M25 to pause the print, ask the user to load filament, and then check that filament is present before resuming.
-
@dc42 Thank you. Previously with Duet 3 Mini 5, the Filament runout works flawlessly. Even at the start of the print, if the filament is not there, it wont start the print. (Without any special codes). It was with
firmware 3.4.0I tried the following code in start.g (Got from a thread):
if sensors.filamentMonitors[0].status = "sensorError"
echo "SensorError-0 Continuing to Print"if sensors.filamentMonitors[0].status != "sensorError"
M25
set global.beepbeep1 = 1
M591 D0
M118 P0 S"filament error" L2```It worked. When there is no filament at the start, it paused the print.
But when i resumed it without loading the filament, it continues (it means it is not continuously checking).I kept the same code in resume.g, but it didnt work.