Heater 1 fault: monitor 0 was triggered
-
I decided to treat my Railcore to an upgrade, and installed both a Toolboard 1.2 & Hemera Revo upgrade kit at the weekend. All seemed to go well, but I seem to have misconfigured something.
No problem PID tuning the hotend, with a normal looking graph:
But the moment I tell it to heat it throws this error. I have tried re-tuning a few times, but I can't seem to get rid of it.
I'd appreciate it if anyone can point out where I've gone wrong!
Thanks,
Kaos
config.g:
; Configuration file for My Printer ; Communication and general M550 P"Duet 3" ; Machine name and Netbios name (can be anything you like) ;M551 XXXXX ; Machine password (used for FTP) G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Axis and motor configuration M669 K1 ;set CoreXY mode G4 S2 ; wait for expansion boards to start M584 X0 Y1 Z2:3:4 E121.0 ; Map Z to drivers 2, 3, 4. X to 0, Y to 1 & E to expansion CAN 121.0 M569 P0 S0 ; (X) physical drive 0 goes backwards M569 P1 S1 ; (Y) physical drive 1 goes forwards M569 P2 S1 ; (Z1) physical drive 2 goes forwards Front left M569 P3 S0 ; (Z2) physical drive 3 goes backwards Back left M569 P4 S0 ; (Z3) physical drive 4 goes backwards Right M569 P121.0 S0 ; (E0) physical drive (on tool board) 5 goes backwards ;Leadscrew locations M671 X-60:-60:330 Y35:270:170 S7.5 ;Front left, Rear Left, Right S7.5 is the max correction - measure your own offsets, to the bolt for the yoke of each leadscrew M350 X16 Y16 Z16 E16 I1 ; set 16x microstepping for axes& extruder, with interpolation M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200.00 Y200.00 Z1600.00 E409.00 ; set steps per mm M566 X950.00 Y950.00 Z66.00 E1000.00 ; set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z540.00 E3600.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z66.00 E1500.00 ; set accelerations (mm/s^2) M906 X1100 Y1100 Z1000 E900 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 X290 Y280 Z330 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io2.in" ; configure active-high endstop for low end on X via pin io2.in ;M574 Y1 S1 P"io1.in" ; configure active-high endstop for low end on Y via pin io1.in CHANGE TO TOOL BOARD! M574 Y1 S1 P"121.io1.in" ;configure active-high endstop for low end on X via pin io1.in on tool board B121 ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" Q10 T0 ; create bed heater output on out0 and map it to sensor 0 - added pwm frequency for bed 06032022 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S115 ; set temperature limit for heater 0 to 115C ;M308 S1 P"spi.cs0" Y"rtd-max31865" ; configure sensor 1 as (incorrect, but appears assigned tocorrect type)thermocouple via CS pin spi.cs0 M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.060000e-8 ;T100000 B4138 ;thermistor on tool board M950 H1 C"121.out0" T1 ; create nozzle heater output on toolboard and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit ;M307 H1 A366.5 C148.7 D3.2 S1.0 V24.0 B0 ; values from PID tune 100% 24/10/2020 -needs repearing now new revo heater on toolboard 19mar22 ;M307 H0 A357.2 C715.6 D15.6 V24.0 B0 ; values from PID tune 70% fan 2/7/2020 M307 H0 R0.350 K0.158:0.000 D31.25 E1.35 S1.00 B0 ;values from PID tune 21Mar22 ;M307 H1 R4.923 K0.549:0.924 D1.22 E1.35 S1.00 B0 V23.8 ;new PID tune 19Mar22, revo heater on toolboard ;M307 H1 R4.869 K0.552:0.850 D1.23 E1.35 S1.00 B0 V23.8 ;repeated 19mar22 ;M307 H1 R4.863 K0.559:0.949 D1.15 E1.35 S1.00 B0 V23.8 ;repeated 0.5mm from tool 19mar22 M307 H1 R4.800 K0.546:0.000 D1.38 E1.35 S1.00 B0 V23.8 ;repeated 21mar22 M570 S360 ; Hot end may be a little slow to heat up so allow it 180 seconds M570 H1 P4 T15 ; An anomaly on heater 1 must persist for 4 seconds, and must be greater or less than 15C from the setpoint, to raise a heater fault (added to try and stop faults 19mar22) M143 H1 S300 Set temp limit for heater 1 ;electronics temperatures M308 S3 Y"drivers" A"DRIVERS" ; configure sensor 3 as temperature warning and overheat flags on the TMC2660 on Duet M308 S4 Y"mcu-temp" A"MCU" ; configure sensor 4 as thermistor on pin e1temp for left stepper ; Fans M950 F0 C"121.out2" Q500 ; create fan 0 on pin out2 on toolboard and set its frequency M106 P0 S1 H1 T45 ; set fan 0 value. Thermostatic control is turned on M950 F1 C"121.out1" ; create fan 1 on pin out1 on toolboard (blower) M106 P1 S0 H-1 ; set fan 1 value. Thermostatic control is turned off M950 F2 C"out6" ; create fan 2 on pin out6 M106 P2 S0.3 H3:4 L0.15 X1 B0.3 T30 ; set fan 2 value. link to MCU/Drivers temps ; Tools M563 P0 D0 H1 F1 ; 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 ;M591 D0 P3 C"io3.in" S1 R30:130 L24.66 E4.0 ; Duet3D rotating magnet sensor for extruder drive 0 is connected to io3.in, enabled, sensitivity 24.8mm.rev, 70% to 130% tolerance, 3mm detection length ;M591 D0 S0 ;disable filament monitor - doesn't work properly with SBC :-( m591 D0 P2 C"121.io2.in" S1 ;simple trianglelabs filament sensor on toolboard IO2 ; Z-Probe M950 S0 C"121.io0.out" ; create servo pin 0 for BLTouch M558 P9 C"121.io0.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds removed ^ from io7.in G31 P500 X45 Y-40 Z1.40 ; set Z probe trigger value, offset and trigger height (increase z number to move nozzle closer to bed) ;M557 X50:243 Y50:230 S20 ; define mesh grid - removed to see if cause ;mcu temp offset M912 P0 S-2.7 ; 2.7C offset from PT100 at RT 4/7/2020 M572 D0 S0.020 ;set pressure advance T0 ; select first hot end M568 A0 ;set tool heater to off (added 19Mar22 to try and stop faults)
-
What firmware did you update to?
Can you share the results of sending M122 and M122 B121 and M98 P"config.g"?
Did you use M500 to save the tuned results?
-
Thanks for the reply.
Running 3.4 on both the Duet 3 & Toolboard.
I copied the results to config.g as opposed to saving with M500
m122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.4.0 (2022-03-15 18:57:24) running on Duet 3 MB6HC v1.01 or later (SBC mode) Board ID: 08DJM-956L2-G43S8-6J1FL-3S46L-1S2AD Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 151000 Dynamic ram: 65900 of which 292 recycled Never used RAM 133480, free system stack 200 words Tasks: SBC(ready,0.5%,467) HEAT(notifyWait,0.0%,149) Move(notifyWait,0.0%,352) CanReceiv(notifyWait,0.0%,772) CanSender(notifyWait,0.0%,374) CanClock(delaying,0.0%,339) TMC(notifyWait,7.8%,92) MAIN(running,91.6%,923) IDLE(ready,0.0%,30), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 01:11:04 ago, cause: software Last software reset at 2022-03-21 20:46, reason: User, GCodes spinning, available RAM 133480, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 Step timer max interval 134 MCU temperature: min 28.8, current 29.1, max 32.5 Supply voltage: min 24.0, current 24.1, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 11.9, current 12.0, max 12.1, under voltage events: 0 Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 2 queued, 2 completed Driver 0: standstill, SG min 0, mspos 904, reads 20206, writes 15 timeouts 0 Driver 1: standstill, SG min 0, mspos 680, reads 20207, writes 15 timeouts 0 Driver 2: standstill, SG min 0, mspos 872, reads 20207, writes 15 timeouts 0 Driver 3: standstill, SG min 0, mspos 536, reads 20207, writes 15 timeouts 0 Driver 4: standstill, SG min 0, mspos 872, reads 20207, writes 15 timeouts 0 Driver 5: standstill, SG min 0, mspos 8, reads 20211, writes 11 timeouts 0 Date/time: 2022-03-21 21:57:25 Slowest loop: 28.01ms; fastest: 0.03ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 37.5MBytes/sec SD card longest read time 0.0ms, write time 0.0ms, max retries 0 === Move === DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed 0, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "M122" 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 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === Filament sensors === Extruder 0 sensor: ok === CAN === Messages queued 38394, received 87404, lost 0, boc 0 Longest wait 3ms for reply type 6053, peak Tx sync delay 277, free buffers 49 (min 48), ts 21323/21322/0 Tx timeouts 0,0,0,0,0,0 === SBC interface === Transfer state: 4, failed transfers: 0, checksum errors: 0 RX/TX seq numbers: 35829/35829 SPI underruns 0, overruns 0 State: 5, disconnects: 0, timeouts: 0, IAP RAM available 0x2b880 Buffer RX/TX: 0/0-0, open files: 0 === Duet Control Server === Duet Control Server v3.4.0 Code buffer space: 4096 Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0 Full transfers per second: 39.16, max time between full transfers: 65.1ms, max pin wait times: 39.6ms/9.7ms Codes per second: 0.02 Maximum length of RX/TX data transfers: 2988/584
M122 b121 Diagnostics for board 121: Duet TOOL1LC rev 1.1 or later firmware version 3.4.0 (2022-03-15 09:00:04) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) All averaging filters OK Never used RAM 2556, free system stack 88 words Tasks: Move(notifyWait,0.0%,153) HEAT(notifyWait,0.2%,61) CanAsync(notifyWait,0.0%,65) CanRecv(notifyWait,0.0%,76) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(notifyWait,3.0%,57) MAIN(running,91.9%,351) IDLE(ready,0.0%,26) AIN(delaying,4.9%,142), total 100.0% Last reset 01:11:44 ago, cause: software Last software reset data not available Driver 0: pos 0, 409.0 steps/mm,standstill, SG min 0, read errors 0, write errors 1, ifcnt 42, reads 55071, writes 12, timeouts 1, DMA errors 0, CC errors 0, failedOp 0x01, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 4/9, peak Rx sync delay 214, resyncs 0/0, no step interrupt scheduled VIN voltage: min 23.7, current 24.1, max 24.1 MCU temperature: min 36.6C, current 39.0C, max 44.1C Last sensors broadcast 0x00000002 found 1 18 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 88247, send timeouts 0, received 38761, lost 0, free buffers 37, min 37, error reg 0 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 Accelerometer: LIS3DH, status: 00 I2C bus errors 0, naks 3, other errors 0 === Filament sensors === Interrupt 5726621 to 0us, poll 4 to 1236us Driver 0: ok
-
-
Error: unterminated string
That would seem to indicate that you're missing a quote mark somewhere in your config.g which may be causing chaos.
-
I can't spot it, maybe you see it?
but your config is a bit messy. I suggest you make a backup of it, and then create a fresh config using the online tool and manually adjust it to match your config leaving it as organized and clean as possible. Then let's see if we can be rid of the string error.
https://configtool.reprapfirmware.org/Start
Even just having a basic config for testing here would be helpful even if it didn't get updated completely for your setup.
-
@phaedrux Thanks for the pointer - I'll try that tomorrow and see if it fixes it (& let you know).
I can't see a missing ", but not easy to spot!
-
@general_kaos said in Heater 1 fault: monitor 0 was triggered:
I can't see a missing ", but not easy to spot!
It could also be a case of a bad character. Or a command that was expecting a quoted string and not getting it.
That makes me think that perhaps your PID values aren't actually getting executed.
-
@phaedrux I realise it's probably just because I mistyped the command first time! Missing " in the console entry of M98 - the repeat above is green.
-
-
@general_kaos There are a bunch of M307 commands in your config.g. Most are commented out with a semicolon except the last one which I assume is the active one. However, while it does not have the semicolon, it is indented. So I'm wondering if it's the indentation that is causing the problem? Or perhaps there is a hidden character showing as an indent?
-
@general_kaos said in Heater 1 fault: monitor 0 was triggered:
@phaedrux I realise it's probably just because I mistyped the command first time! Missing " in the console entry of M98 - the repeat above is green.
Ah yes, of course, now it's obvious.
Can you send M307 H0 and M307 H1 and compare the results it shows to what you have entered in your config.g to confirm they are actually being applied?
My recommendation to start with a clean config still stands.
-
@deckingman Thanks Ian - I tried that, but removing the indent did not fix it. New Config G does though.
-
M307 showed the values being loaded:
22/03/2022, 17:48:35: M307 h0: Heater 0: heating rate 0.350, cooling rate 0.158, dead time 31.25, max PWM 1.00, mode PID
Predicted max temperature rise 180°C
PID parameters: heating P16.3 I0.110 D357.0, steady P16.3 I0.211 D357.0
22/03/2022, 17:48:38: M307 h1: Heater 1: heating rate 4.800, cooling rate 0.546, dead time 1.38, max PWM 1.00, mode PID, calibrated at 23.8V
Predicted max temperature rise 500°C
PID parameters: heating P26.9 I1.612 D26.0, steady P26.9 I4.921 D26.0So onto a new config via the configurator, which worked and still works after copying across all the specific settings for my printer.
I am at a loss what was wrong, but it seems to work now. Thanks for your help.
; Configuration file for Duet 3 (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:23:42 GMT+0000 (Greenwich Mean Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode ; Drives M569 P0.0 S0 ; physical drive 0.0 goes backwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S0 ; physical drive 0.3 goes backwards M569 P0.4 S0 ; physical drive 0.4 goes backwards M569 P121.0 S0 ; physical drive 121.0 goes backwards M584 X0.0 Y0.1 Z0.2:0.3:0.4 E121.0 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200.00 Y200.00 Z1600.00 E397.00 ; set steps per mm M566 X950.00 Y950.00 Z66.00 E1000.00 ; set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z540.00 E3600.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z66.00 E1500.00 ; set accelerations (mm/s^2) M906 X1100 Y1100 Z1000 E900 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ;Leadscrew locations M671 X-60:-60:330 Y35:270:170 S7.5 ;Front left, Rear Left, Right S7.5 is the max correction ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X290 Y280 Z330 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io2.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io2.in M574 Y1 S1 P"121.io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin 121.io1.in ;M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M950 S0 C"121.io0.out" ; create servo pin 0 for BLTouch M558 P9 C"121.io0.in" H10 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X45 Y-40 Z1.4 ; set Z probe trigger value, offset and trigger height M557 X50:250 Y50:250 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" 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 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S115 ; set temperature limit for heater 0 to 115C M307 H0 R0.350 K0.158:0.000 D31.25 E1.35 S1.00 B0 ;PID tune bed heater 21mar22 M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.060000e-8 ;e3D thermistor settings M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; set temperature limit for heater 1 to 300C M307 H1 R4.880 K0.553:0.843 D1.23 E1.35 S1.00 B0 V23.8 ;PID tune w/ e£D thermistor set 23Mar22 M308 S3 Y"drivers" A"DRIVERS" ; configure sensor 3 as temperature warning and overheat flags on the TMC2660 on Duet M308 S4 Y"mcu-temp" A"MCU" ; configure sensor 4 as thermistor on pin e1temp for left stepper M912 P0 S-2.7 ; 2.7C offset from PT100 at RT 4/7/2020 ; Fans M950 F0 C"121.out2" Q500 ; create fan 0 on pin 121.out2 and set its frequency M106 P0 S0 H1 T45 ; set fan 0 value. Thermostatic control is turned on M950 F1 C"121.out1" ; create fan 1 on pin 121.out1 and set its frequency M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off M950 F2 C"out6" Q500 ; create fan 2 on pin out6 and set its frequency ;M106 P2 S0.25 H1 T30 ; set fan 2 value. Thermostatic control is turned on M106 P2 S0.3 H3:4 L0.15 X1 B0.3 T30 ;electronics fan linked to MCU/drivers ;filament sensor M591 D0 P2 C"121.io2.in" S1 ;simple trianglelabs filament sensor on toolboard IO2 ; Tools M563 P0 D0 H1 F1 ; 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 M572 D0 S0.020 ;set pressure advance ; Miscellaneous T0 ; select first tool
-