Spurious Sensor Errors
-
I have two printers that are randomly having Sensor errors randomly during prints. Both are Duet 2 wifi's. One of the machines uses what i believe is a V1 mfm (its 3 years old and is remotely mounted away from the gantry and stepper motor) and the other a new V2 that i had to print the housing for myself (its mounted at the gantry, above the stepper, wiring details later). I'm mostly going to focus on the machine with the V2 MFM since its the one that runs 20+ hour long prints.
Here is the M122 from that printer after it had its last sensor error.. which i woke up to with the printer paused and no "sensor error" message on the paneldue.
As for how this machine is setup. I'm running all of the sensor, stepper, fans, etc through a pair of cat6 ethernet cables between the Duet boards and the gantry. The MFM, Precision Peizo and hotend Fan run through one ethernet cable, while the parts fans, X endstop and stepper wiring runs through the other.
Running Firmware 3.4.1
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 3 of 26 (25 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8040, free system stack 88 words Tasks: NETWORK(ready,57.7%,211) HEAT(notifyWait,0.9%,308) Move(notifyWait,50.5%,268) DUEX(notifyWait,0.0%,24) MAIN(running,185.5%,460) IDLE(ready,1.1%,30), total 295.6% Owned mutexes: === Platform === Last reset 12:06:13 ago, cause: power up Last software reset at 2022-09-16 10:06, reason: User, GCodes spinning, available RAM 8616, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x18 Aux0 errors 0,1,0 Step timer max interval 0 MCU temperature: min 26.3, current 33.3, max 34.8 Supply voltage: min 23.7, current 24.3, max 24.7, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/24/24, gc cycles 0 Events: 3 queued, 3 completed Driver 0: standstill, SG min 0 Driver 1: standstill, SG min 0 Driver 2: standstill, SG min 0 Driver 3: standstill, SG min 0 Driver 4: standstill, SG min n/a Driver 5: standstill, SG min 0 Driver 6: standstill, SG min 0 Driver 7: standstill, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-17 06:43:48 Cache data hit count 4294967295 Slowest loop: 113.81ms; fastest: 0.12ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 2.1ms, write time 383.9ms, max retries 0 === Move === DMs created 83, segments created 35, maxWait 2690947ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 728417, completed 728417, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 Heater 1 is on, I-accum = 0.5 === GCodes === Segments left: 0 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0: pos 148.01, errs: frame 9 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 1, 0.00 reads/min === Network === Slowest loop: 385.93ms; fastest: 0.00ms Responder states: HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.40, reset reason Turned on by main processor WiFi flash size 4194304, free heap 24672 WiFi IP address 192.168.254.188 WiFi signal strength -65dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 4 0 0 0 0 0 0 0
The M591 D0. This shows Disabled as i had to do so in order to complete the print. I also readjusted the Sensitivity already since this was the first print after sanding down the housing a bit to get the AGC down. Which seems to reduce in value every time i do a print.
M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, disabled, sensitivity 28.46mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 130 agc 67, measured sensitivity 26.17mm/rev, min 79% max 106% over 86600.8mm
Config.G:
; Configuration file for Duet WiFi (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.12 on Mon Sep 05 2022 15:52:17 GMT-0400 (Eastern Daylight Time) ; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Big3DPrinter" ; set printer name M669 K1 ; select CoreXY mode ; Network M552 S1 ; enable network ; Drives M569 P0 S0 ; physical drive 0 goes forwards- (X axis pins) M569 P1 S0 ; physical drive 1 goes forwards- (Y Axis pins) M569 P2 S0 ; physical drive 2 goes forwards- (Z Axis pins) - Left Rear Ballscrew M569 P3 S1 ; physical drive 3 goes backwards- (Extruder0) M569 P4 S0 ; physical drive 4 goes forwards- (Extruder1 pins) - unused M569 P5 S0 ; physical drive 5 goes forwards- (E2 pins, DueX5) - Left Front Ballscrew M569 P6 S1 ; physical drive 6 goes backwards- (E3 pins, DueX5) - Right Front Ballscrew M569 P7 S1 ; physical drive 7 goes backwards- (E4 pins, DueX5) - Right Rear Ballscrew M569 P8 S0 ; physical drive 8 goes forwards- (E5 pins, DueX5) - unused M569 P9 S0 ; physical drive 9 goes forwards- (E6 pins, DueX5) - unused M584 X0 Y1 Z5:6:7:2 E3:4:8:9 ; set drive mapping M671 X40:480:480:40 Y-47.62:-47.62:601.6:601.6 S5 ; leadscrews locations in drive map order, 5mm max deviation correction M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X78.57 Y78.57 Z12544.91 E415.00 ; set steps per mm M566 X900.00 Y900.00 Z40 E1200.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z200 E1200.00 ; set maximum speeds (mm/min) M201 X15000.00 Y15000.00 Z100 E15000.00 ; set accelerations (mm/s^2) M906 X1800 Y1800 Z2200 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X555 Y500 Z600 S0 ; set axis maxima ; Endstops M574 X2 S1 P"!xstop" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop M574 Z1 S2 ; configure Z-probe endstop for low end on Z M591 D0 P3 C"e0_stop" S1 R60:120 E10.0 A0 L26.17 ; Duet3D rotating magnet sensor for extruder drive 0 is connected to E0 endstop input, ; filament monitoring enabled, 60% to 120% tolerance, 10mm detection length, only ; check extruder,sensitivity 25.63mm/rev ; motion of printing moves (moves with both movement and forward extrusion) ; Z-Probe M558 P5 C"!zprobe.in" H5 R1.2 F600 T6000 ; set Z probe type to unmodulated and the dive height + speeds G31 P500 X0 Y0 Z0.0 ; set Z probe trigger value, offset and trigger height M557 X0:555 Y10:490 S80 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 R0.599 K0.296:0.000 D8.19 E1.35 S1.00 B0 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 R1.946 K0.350:0.077 D4.61 E1.35 S1.00 B0 V24.2 ; disable bang-bang mode for heater and set PWM limit M143 H1 S270 ; set temperature limit for heater 1 to 270C ; Sensors M308 S2 Y"drivers" A"DRIVERS" ; configure sensor 2 as temperature warning and overheat flags on the TMC2660 on Duet M308 S3 Y"mcu-temp" A"MCU" ; configure sensor 3 as on-chip MCU temperature sensor ; Fans M950 F0 C"fan0" Q250 ; create fan 0 on pin fan0 and set its frequency M106 P0 C"Part Cooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"fan1" Q250 ; create fan 1 on pin fan1 and set its frequency M106 P1 C"Hotend" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on M950 F2 C"fan2" Q250 ; creat fan 2 on pin fan2 and set its frequency M106 P2 C"Case FanIn" S1 H2:3 T40 ; set fan 2 name and value, thermostatic control is turned on M950 F3 C"duex.fan8" Q250 ; create fan 3 on duex fan8 and set its frequency M106 P3 C"Case FanOut" S1 H2:3 T25:40 ; set fan 3 name and value, MCU/driver thermostatic control is on ; Tools M563 P0 S"Extruder" D0 H1 F0 ; 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 ; Custom settings are not defined ; Miscellaneous T0 ; select first tool M911 S21.0 R23.0 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Power save M572 D0 S0.025 ; Pressure Advance Setting M501
-
I just started a new print and within the first layer, i've had the printer pause 4 times due to "to little movement". Between the sensor error's and the to little movement, the sensor is basically worthless.
First pause Info:
M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, enabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 131 agc 65, measured sensitivity 26.88mm/rev, min 47% max 104% over 1538.4mm
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 4 of 26 (17 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8088, free system stack 112 words Tasks: NETWORK(ready,13.2%,229) HEAT(notifyWait,0.0%,333) Move(notifyWait,0.7%,274) DUEX(notifyWait,0.0%,24) MAIN(running,85.9%,421) IDLE(ready,0.2%,30), total 100.0% Owned mutexes: === Platform === Last reset 00:08:38 ago, cause: software Last software reset at 2022-09-17 07:42, reason: User, GCodes spinning, available RAM 8088, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x08 Aux0 errors 0,1,0 Step timer max interval 0 MCU temperature: min 31.3, current 33.9, max 34.7 Supply voltage: min 23.7, current 24.1, max 24.8, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/12/0, gc cycles 0 Events: 2 queued, 2 completed Driver 0: stalled, SG min 0 Driver 1: standstill, SG min 0 Driver 2: ok, SG min 0 Driver 3: stalled, SG min 0 Driver 4: standstill, SG min n/a Driver 5: ok, SG min 0 Driver 6: ok, SG min 0 Driver 7: ok, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-17 07:50:55 Cache data hit count 4294967295 Slowest loop: 146.57ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.4ms, write time 2.1ms, max retries 0 === Move === DMs created 83, segments created 33, maxWait 56201ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 1223, completed 1219, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 6], CDDA state 3 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 Heater 1 is on, I-accum = 0.6 === GCodes === Segments left: 1 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is doing "G1 X165.326 Y251.529 E0.2990" in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0: pos 41.84, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 1, 0.12 reads/min === Network === Slowest loop: 162.98ms; fastest: 0.00ms Responder states: HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.40, reset reason Turned on by main processor WiFi flash size 4194304, free heap 25040 WiFi IP address 192.168.254.188 WiFi signal strength -62dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 2 4 0 0 0 0 0 0
Second pause i missed getting the above for.
Third pause (i forgot the M591 data)
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 3 of 26 (26 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8088, free system stack 112 words Tasks: NETWORK(ready,13.9%,229) HEAT(notifyWait,0.0%,333) Move(notifyWait,1.1%,274) DUEX(notifyWait,0.0%,24) MAIN(running,84.9%,421) IDLE(ready,0.1%,30), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:08:54 ago, cause: software Last software reset at 2022-09-17 07:42, reason: User, GCodes spinning, available RAM 8088, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x08 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 33.5, current 33.9, max 34.2 Supply voltage: min 24.0, current 24.1, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/12/0, gc cycles 0 Events: 3 queued, 2 completed Driver 0: ok, SG min 0 Driver 1: ok, SG min 0 Driver 2: ok, SG min 0 Driver 3: standstill, SG min 0 Driver 4: standstill, SG min n/a Driver 5: ok, SG min 0 Driver 6: ok, SG min 0 Driver 7: ok, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-17 07:51:11 Cache data hit count 4294967295 Slowest loop: 23.47ms; fastest: 0.20ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 8 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 0.7ms, write time 1.9ms, max retries 0 === Move === DMs created 83, segments created 33, maxWait 4816ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 1233, completed 1230, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 Heater 1 is on, I-accum = 0.7 === GCodes === Segments left: 0 Movement lock held by Autopause HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is doing "T-1[0x09][0x09][0x09][0x09][0x09]" in state(s) 0 28, running macro Code queue is empty === Filament sensors === Extruder 0: pos 167.34, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 0, 0.00 reads/min === Network === Slowest loop: 201.94ms; fastest: 0.08ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 1 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.39, reset reason Turned on by main processor WiFi flash size 4194304, free heap 25040 WiFi IP address 192.168.254.188 WiFi signal strength -63dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
Fourth Pause, after this i just disabled the sensor.
M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, enabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 129 agc 67, measured sensitivity 28.03mm/rev, min 56% max 106% over 184.5mm
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 3 of 26 (26 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8088, free system stack 112 words Tasks: NETWORK(ready,13.1%,229) HEAT(notifyWait,0.0%,333) Move(notifyWait,1.0%,274) DUEX(notifyWait,0.0%,24) MAIN(running,85.8%,421) IDLE(ready,0.0%,30), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:12:44 ago, cause: software Last software reset at 2022-09-17 07:42, reason: User, GCodes spinning, available RAM 8088, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x08 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 33.3, current 33.4, max 34.2 Supply voltage: min 23.9, current 24.1, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/12/0, gc cycles 0 Events: 4 queued, 4 completed Driver 0: stalled, SG min 0 Driver 1: standstill, SG min 0 Driver 2: ok, SG min 0 Driver 3: stalled, SG min 0 Driver 4: standstill, SG min n/a Driver 5: ok, SG min 0 Driver 6: ok, SG min 0 Driver 7: ok, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-17 07:55:01 Cache data hit count 4294967295 Slowest loop: 23.39ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 0.7ms, write time 1.9ms, max retries 0 === Move === DMs created 83, segments created 33, maxWait 20533ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 1458, completed 1455, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 Heater 1 is on, I-accum = 0.7 === GCodes === Segments left: 1 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 3 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0: pos 234.84, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 0, 0.00 reads/min === Network === Slowest loop: 203.04ms; fastest: 0.08ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 2 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.40, reset reason Turned on by main processor WiFi flash size 4194304, free heap 26504 WiFi IP address 192.168.254.188 WiFi signal strength -64dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
-
I'm running all of the sensor, stepper, fans, etc through a pair of cat6 ethernet cables between the Duet boards and the gantry. The MFM, Precision Peizo and hotend Fan run through one ethernet cable, while the parts fans, X endstop and stepper wiring runs through the other.
You forgot to mention your hotend (heater and thermistor) - where did you put these, are they cat6, too?
I just started a new print and within the first layer, i've had the printer pause 4 times due to "to little movement". Between the sensor error's and the to little movement, the sensor is basically worthless.
The sensor is fine and works pretty well with the Duet 2, but with the original housing, they suffer from mechanical issues. I suggest you to try @lo-fi’s design instead. redesigned-the-mfm-housing
-
@infiniteloop said in Spurious Sensor Errors:
I'm running all of the sensor, stepper, fans, etc through a pair of cat6 ethernet cables between the Duet boards and the gantry. The MFM, Precision Peizo and hotend Fan run through one ethernet cable, while the parts fans, X endstop and stepper wiring runs through the other.
You forgot to mention your hotend (heater and thermistor) - where did you put these, are they cat6, too?
I just started a new print and within the first layer, i've had the printer pause 4 times due to "to little movement". Between the sensor error's and the to little movement, the sensor is basically worthless.
The sensor is fine and works pretty well with the Duet 2, but with the original housing, they suffer from mechanical issues. I suggest you to try @lo-fi’s design instead. redesigned-the-mfm-housing
Hotend is an E3D Volcano w/ a 1.2mm CHT nozzle. Its a direct drive setup with a BMG extruder.
Heater and Thermistor are not cat 6, they are separated in a shielded cable.
I tried printing Lo-fi's case a couple dozen times yesterday and never had any success, that may be bc i was trying to use silk pla. i'll retry later today with some abs. I do have a resin printer and am printing the original housing currently.. but even the MFM i have on my other printer with the printed supplied housing with it has the same problems.
-
One thing i have noticed with this MFM sensor is the mm per rev's are very spontaneous between prints and power cycles of the printer. It'll be in the mid 20's one time, then the next time i go to use the printer it will be in the mid 30's, i've even seen as high as 12,000 once before.
9/17/2022, 9:04:08 AM M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, disabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 130 agc 65, measured sensitivity 36.76mm/rev, min -4% max 140% over 9338.1mm 9/17/2022, 9:08:19 AM M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, disabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 133 agc 67, measured sensitivity 35.39mm/rev, min -4% max 138% over 11639.3mm 9/17/2022, 9:08:26 AM M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, disabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 132 agc 67, measured sensitivity 35.49mm/rev, min -4% max 138% over 11704.1mm 9/17/2022, 9:11:49 AM M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, disabled, sensitivity 26.17mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 132 agc 67, measured sensitivity 38.88mm/rev, min -4% max 151% over 13606.2mm
-
@invertmast said in Spurious Sensor Errors:
I tried printing Lo-fi's case a couple dozen times yesterday and never had any success
You might have a hard time trying this with a 1.2 mm nozzle.
@invertmast said in Spurious Sensor Errors:
I do have a resin printer and am printing the original housing currently
This should resolve the mechanical problems. On the electrical side, you can try to route the fan with lines separate from the cat6, that will improve the mfm's signal quality.
@invertmast said in Spurious Sensor Errors:
the mm per rev's are very spontaneous between prints
In most cases, this indicates mechanical issues.
-
@infiniteloop said in Spurious Sensor Errors:
@invertmast said in Spurious Sensor Errors:
I tried printing Lo-fi's case a couple dozen times yesterday and never had any success
You might have a hard time trying this with a 1.2 mm nozzle.
@invertmast said in Spurious Sensor Errors:
I do have a resin printer and am printing the original housing currently
This should resolve the mechanical problems. On the electrical side, you can try to route the fan with lines separate from the cat6, that will improve the mfm's signal quality.
@invertmast said in Spurious Sensor Errors:
the mm per rev's are very spontaneous between prints
In most cases, this indicates mechanical issues.
sorry, i tried printing the case on my other printer with a .4mm nozzle and .1mm layers. none came out well enough once it got to the standoffs that the circuit board mounts too.
-
@invertmast said in Spurious Sensor Errors:
none came out well enough once it got to the standoffs that the circuit board mounts to …
… which affects the distance between magnet (on the hobbed assembly) and sensor. Printing the housing with a FDM printer, two other areas can be problematic: the filament path and the function of the idler (both free movement of the idler bearing and the corps of the idler).
-
Finally got a decent housing printed out, assembled and a print going. Only to get a "sensor error" a little over an hour into this print.
M591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, enabled, sensitivity 27.50mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 133 agc 51, measured sensitivity 27.25mm/rev, min 86% max 105% over 44253.9mm
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 3 of 26 (17 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8544, free system stack 104 words Tasks: NETWORK(ready,41.9%,211) HEAT(notifyWait,0.2%,308) Move(notifyWait,5.5%,294) DUEX(notifyWait,0.0%,24) MAIN(running,52.3%,448) IDLE(ready,0.2%,30), total 100.0% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 01:48:25 ago, cause: software Last software reset at 2022-09-17 18:39, reason: User, GCodes spinning, available RAM 8064, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Step timer max interval 0 MCU temperature: min 33.6, current 34.8, max 36.3 Supply voltage: min 23.7, current 24.2, max 24.7, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/12/0, gc cycles 0 Events: 1 queued, 1 completed Driver 0: standstill, SG min 0 Driver 1: standstill, SG min 0 Driver 2: standstill, SG min 0 Driver 3: standstill, SG min 0 Driver 4: standstill, SG min n/a Driver 5: standstill, SG min 0 Driver 6: standstill, SG min 0 Driver 7: standstill, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-17 20:28:20 Cache data hit count 4294967295 Slowest loop: 81.53ms; fastest: 0.15ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.6ms, write time 1.9ms, max retries 0 === Move === DMs created 83, segments created 14, maxWait 586279ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 34273, completed 34273, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 === GCodes === Segments left: 0 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0: pos 237.30, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 1, 0.01 reads/min === Network === Slowest loop: 169.04ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.40, reset reason Turned on by main processor WiFi flash size 4194304, free heap 25192 WiFi IP address 192.168.254.188 WiFi signal strength -61dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
-
Only to get a "sensor error" a little over an hour into this print.
Usually, this indicates an electrical problem: overtalking or interference with other lines. to rule this out, keep the sensor's lines separate from all others and keep them (relatively) short.
Finally got a decent housing printed out …
Congrats! Is it a resin print?
-
@infiniteloop said in Spurious Sensor Errors:
Only to get a "sensor error" a little over an hour into this print.
Usually, this indicates an electrical problem: overtalking or interference with other lines. to rule this out, keep the sensor's lines separate from all others and keep them (relatively) short.
Finally got a decent housing printed out …
Congrats! Is it a resin print?
I have since re-routed all of the fan/stepper wires away from the sensor wiring. I have a print going now to see if that will work.
not a resin print, just a ffm print of lofi's case.
-
Sensor Error's still continue.
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.1 (2022-06-01 21:05:28) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-956GU-DJ3SJ-6J9DD-3SD6S-9UPZH Used output buffers: 3 of 26 (17 max) === RTOS === Static ram: 23860 Dynamic ram: 76472 of which 12 recycled Never used RAM 8088, free system stack 100 words Tasks: NETWORK(ready,115.4%,229) HEAT(notifyWait,0.4%,308) Move(notifyWait,16.7%,295) DUEX(notifyWait,0.0%,24) MAIN(running,358.7%,440) IDLE(ready,0.5%,30), total 491.7% Owned mutexes: WiFi(NETWORK) === Platform === Last reset 02:52:12 ago, cause: power up Last software reset at 2022-09-17 18:39, reason: User, GCodes spinning, available RAM 8064, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x08 Aux0 errors 0,1,0 Step timer max interval 0 MCU temperature: min 26.5, current 32.5, max 33.9 Supply voltage: min 23.7, current 24.2, max 24.7, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/12/0, gc cycles 0 Events: 2 queued, 2 completed Driver 0: standstill, SG min 0 Driver 1: standstill, SG min 0 Driver 2: standstill, SG min 0 Driver 3: standstill, SG min 0 Driver 4: standstill, SG min n/a Driver 5: standstill, SG min 0 Driver 6: standstill, SG min 0 Driver 7: standstill, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2022-09-18 10:26:41 Cache data hit count 4294967295 Slowest loop: 144.69ms; fastest: 0.12ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 1.7ms, write time 59.9ms, max retries 0 === Move === DMs created 83, segments created 33, maxWait 128221ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 98460, completed 98460, hiccups 0, stepErrors 0, LaErrors 0, Underruns [1, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.0 === GCodes === Segments left: 0 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0: pos 268.95, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === DueX === Read count 1, 0.01 reads/min === Network === Slowest loop: 162.93ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions HTTP sessions: 1 of 8 - WiFi - Network state is active WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.26 WiFi MAC address 5c:cf:7f:76:63:7a WiFi Vcc 3.40, reset reason Turned on by main processor WiFi flash size 4194304, free heap 25352 WiFi IP address 192.168.254.188 WiFi signal strength -59dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 4 0 0 0 0 0 0 0 m591 D0 Duet3D rotating magnet filament monitor v4 on pin e0stop, enabled, sensitivity 27.50mm/rev, allow 60% to 120%, check printing moves every 10.0mm, version 4, mag 132 agc 47, measured sensitivity 27.15mm/rev, min 69% max 106% over 72205.7mm
-
Sensor Error's still continue.
The best advice I can give at this stage is to use another cable for the MFM lines - simply throw some wires in to test the efficiency of that measure.
min 69% max 106% over 72205.7mm
The max value of 106% is fine, however, the min value reported looks a bit low to me: I'm not sure, but this might indicate a mechanical issue. Can you post a photo of how you've attached the MFM to your extruder?
-
Sensor is rigidly mounted via the short piece of bowden tube and via a bracket.
[
For comparison, my other printer has the MFM remotely mounted from the extruder gantry and its wiring is completely seperate from anything else until it gets within the electronics enclosure. It has the same problems even with using shielded 3 conductor wiring.
edit-1 At this point,
the sensor errors have gotten slightly better, but not much*Edit2,3,4 - they have not. I literally just had Six back to back within 5 minutes. They have gotten significantly worse in that the printer can't even get through a single layer now without a sensor error posting.I’m at the point where i would rather just set up a macro where if it comes as as sensor error that it would just restart the print on its own.
-
I’m at the point where i would rather just set up a macro where if it comes as as sensor error that it would just restart the print on its own.
Try that.
not a resin print, just a ffm print of lofi's case.
Looking at the rather low "min" values reported, you might want to file a bit to smoothen operation of the idler and to widen the filament path (really just a little bit). It should be possible to limit deviation on the low side to far less than 10%. However, this does not affect the rate of "sensor error" messages.
EDIT: Thanks for the photo. I wanted to have a look at the filament path, but you've built it just fine
-
@infiniteloop said in Spurious Sensor Errors:
I’m at the point where i would rather just set up a macro where if it comes as as sensor error that it would just restart the print on its own.
Try that.
not a resin print, just a ffm print of lofi's case.
Looking at the rather low "min" values reported, you might want to file a bit to smoothen operation of the idler and to widen the filament path (really just a little bit). It should be possible to limit deviation on the low side to far less than 10%. However, this does not affect the rate of "sensor error" messages.
EDIT: Thanks for the photo. I wanted to have a look at the filament path, but you've built it just fine
i did clean up the idler path a bit by scraping some of the layer line texture away with an Xacto knife blade.. it felt pretty smooth, but i can recheck after this print completes. As for the filament path, i'll give it a cleaning with a small drill bit.
-
@infiniteloop said in Spurious Sensor Errors:
I’m at the point where i would rather just set up a macro where if it comes as as sensor error that it would just restart the print on its own.
Try that.
not a resin print, just a ffm print of lofi's case.
Looking at the rather low "min" values reported, you might want to file a bit to smoothen operation of the idler and to widen the filament path (really just a little bit). It should be possible to limit deviation on the low side to far less than 10%. However, this does not affect the rate of "sensor error" messages.
EDIT: Thanks for the photo. I wanted to have a look at the filament path, but you've built it just fine
Thanks for the help the past few days. Still haven't figured out what is causing the sensor error's, even with running a separate 3 conductor shielded cable to the sensor outside of the drag chain from everything else. But, with the filament-error.g set to just ignore sensor error's, i've got mostly one entire print without an unnecessary pause.
-
Still haven't figured out what is causing the sensor error's, even with running a separate 3 conductor shielded cable to the sensor outside of the drag chain from everything else.
Sorry to hear that. I have no further idea of potential reasons, although reading the forum quite intensely.
With the filament-error.g set to just ignore sensor error's, i've got mostly one entire print without an unnecessary pause.
Great! I’ll try that myself, especially as I just encountered some of those sensor errors during my latest print. Among them, there was a single nozzle jam reported, so I still think the MFM is an invaluable tool as it saved my 22-hour print.