DUET magnetic filament monitor; No calibration Data
-
Dear printing-friends.
I have an experimental 3d-printer.
The built is roughly:
- DUET 3 Mini 5+ @ 3.3 RC2
- CoreXY 120 mm x 120 mm x 120 mm
- Dualmotorised extruder
As the printer is meant to print brittle filament I installed the DUET magnetic filament sensor to monitor slipping in the extruder system as well as cloggings. It is the version without switch.
As far as I can judge the wiring seems to be fine. Communication to the DUET board works. No abnormal or awkward blinking. The agc-value is in the recommended range. While extruding, the sensor blinks and the blinking also reacts very sensitive when pulling slighly on the filament.
I used the following line in config.g
M591 D0 P3 C"io6.in" E0.5 L25.13 S1 R99:101
I do not get any sensor calibration data after or while printing.
When requesting M591 D0 I get the following message:Duet3D rotating magnet filament monitor v4 on pin io6.in, enabled, sensitivity 25.13mm/rev, allow 99% to 101%, check every 0.5mm, version 4, mag 132 agc 81, no calibration data
The print does not pause or stop. And in this case I know that the filament overextrudes.
In another scenario I started the print without any filament loaded and extruded 400 mm. The sensor needed nearly 200 mm until the print paused.
This was the result of M591 D0:Duet3D rotating magnet filament monitor v4 on pin io6.in, enabled, sensitivity 28.80mm/rev, allow 99% to 101%, check every 0.5mm, version 4, mag 130 agc 85, measured sensitivity infmm/rev, min 0% max 0% over 192.6mm
So I am confused right now what the fault is.
FourFive questions came into my mind:- Why do I get no calibration data?
- Why does the print not pause or stop when setting the limits to 99 % - 101%?
- Why does the sensor need 200 mm of filament to recognize there is a underextrusion?
- Why can L be set manually? I thought this represents the filament movement per revolution. Shouldn´t this value be fixed or well known by the wheel-diameter?
- What am I doing wrong?
I hope to get here help and some suggestions what might be wrong.
Here is my config.g:
; Configuration file for Duet 3 Mini 5+ (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Jul 05 2022 08:21:28 GMT+0200 (Mitteleuropäische Sommerzeit) ; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"MH-Professional" ; set printer name M669 K1 ; select CoreXY mode ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet M587 S"xxx" P"yyy" ; Wlan LoginDaten ; Drives M569 P0 S0 ; physical drive 0.0 goes forwards M569 P1 S0 ; physical drive 0.1 goes forwards M569 P2 S1 ; physical drive 0.2 goes forwards M569 P3 S0 ; physical drive 0.3 goes forwards M569 P4 S1 ; physical drive 0.4 goes forwards M584 X0 Y1 Z2 E3:4 ; set drive mapping M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation M92 X80 Y80 Z400 E163:163 ; set steps per mm M566 X900 Y900 Z60 E120:120 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z360 E1200:1200 ; set maximum speeds (mm/min) M201 X500 Y500 Z20 E250:250 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E1000:1000 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y-34 Z0 S1 ; set axis minima M208 X126 Y180 Z165 S0 ; set axis maxima ; Endstops M574 X2 S1 P"!io2.in" ; configure active-high endstop for low end on X via pin xstop M574 Y1 S1 P"!io3.in" ; configure active-high endstop for low end on Y via pin ystop ; Z-Probe M574 Z1 S2 ; Set endstops controlled by probe M558 P5 C"io4.in" H1.5 F300 S0.1 T12000 ; set Z probe type to switch and the dive height + speeds M557 X10:110 Y10:110 P4:4 ; define mesh grid M591 D0 P3 C"io6.in" E0.5 L25.13 S1 R99:101 ; filament monitor connected to IO_6 magnetic sensor P3; ; Fans ;M950 F1 C"out5" Q500 ; Lüftersteuerung Luftkühlung create fan 1 on pin out5 and set its frequency M950 F1 C"out3" Q500 ; Wasserkühlung-Steuerung M106 P1 C"Hotend" S1 H1 T50 ; set fan 1 name and value. Thermostatic control is turned on M950 F0 C"out6" Q500 ; create fan 0 on pin out6 and set its frequency M106 P0 C"Partcooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off ; Heaters ; Bed M308 S0 P"temp0" Y"thermistor" A"Plattenheizung" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 R0.961 C279.1 D5.93 S1.00 V24.2 ; PID-tuning bed M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 100C ; Hotend M302 S100 ; cold extrusion temperature to 100C M308 S1 P"temp1" Y"thermistor" A"Düsenheizung" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 R2.282 C279.9 D5.03 S1.00 V24.3 ; PID-tuning Phaetus Dragon watercooled M143 H1 S220 ; set temperature limit for heater 1 to 220C ; Tools M563 P0 D0:1 H1 F0 S"Hotend" ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C M568 P0 S0 ; enable mixing for tool 0 M567 P0 E0.5:0.5 ; set mixing ratios for tool 0 ;Paneldue M575 P1 S1 B57600 T0
If I should test or change something just let me know.
I don´t want to have the sensor as a decoration.I wish you a happy day and looking forward for some replies.
Greetings from Germany
koreandi -
@koreandi See the calibration section here: https://docs.duet3d.com/User_manual/Connecting_hardware/Sensors_filament#duet3d-rotating-magnet-filament-sensor
You need to send a simplified M591 command without R, E and L parameters so the firmware uses the defaults, then run a print and use the output of the calibration to tweak these.
Also, your using an old release candidate firmware:
DUET 3 Mini 5+ @ 3.3 RC2
Is there anything stopping you from updating to the latest release, 3.4.5?
Ian
-
Hi Ian,
thanks a lot for your advice.
Regarding the firmware.
As I said: this machine is used in an experimental phase and we want to keep everything as stable as possible. And since we did not recognise any advantage with a newer version we kept it as it was.About the filament sensor:
We just usedM591 D0 P3 C"io6.in" S1
in our config.g.
Then we started a small manual programm:
- homing
- move z to 50 mm
- extrude 200 mm filament
- end
Here are the results from the console in timed order:
18.7.2023, 09:56:29
M32 "0:/gcodes/Test extrusion filament sensor.gcode" File 0:/gcodes/Test extrusion filament sensor.gcode selected for printing
18.7.2023, 09:56:46
Duet3D rotating magnet filament monitor v4 on pin io6.in, enabled, sensitivity 28.80mm/rev, allow 60% to 160%, check every 3.0mm, version 4, mag 129 agc 82, no calibration data
18.7.2023, 09:57:51
Finished printing file 0:/gcodes/Test extrusion filament sensor.gcode, print time was 0h 1m
After typing M591 D0 into the console we got this message:
18.7.2023, 09:58:11
Duet3D rotating magnet filament monitor v4 on pin io6.in, enabled, sensitivity 28.80mm/rev, allow 60% to 160%, check every 3.0mm, version 4, mag 130 agc 82, no calibration data
Are there any further advices?
Anything that we can change and try.
The communication seems to work. But there must be any other mistake we did.
Or another possibility could be a faulty device/part.greetings
Andreas