topic_solved strange message when PID tuning
I've swapped to the new Biqu H2 extruder and have been getting an error when heating the hotend ' slower than expected 3.9 degrees sec'
So I've run M303 T0 S240 to retune the PID.
at the end of the tunine I get this popup message;
when I go into the console I dont see any error?
Is this a problem? Looks like the tune completes OK?
@nick9one1 The notification message is just saying it can't fit the whole message in a pop up, so you need to look at the console, which you did! Sending M122 does the same thing.
Yes, looks like the tuning completed successfully. Put the M307 result in your config.g, replacing any existing M307 H1 command.
for some reason I still get the same error when heating. Triggered at about 80C
If I clear the error it usually happens again, then on the third try It gets to temp OK.
I PID tuned next to the bed and the part cooling fan kicks in during the second half of the tune.
; Heaters M308 S0 P"bedtemp" Y"thermistor" T101302.1408 B3950 C0 R4700 A"Bed Temp" ; 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 M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 100C M307 H0 R0.278 C1408.5 D27.03 S1.00 ; Set PID for bed values M308 S1 P"e0temp" Y"thermistor" T96774.19355 B3950 C0 R4700 A"Hotend Temp" ; 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 M143 H1 S265 ; set temperature limit for heater 1 M307 H1 R3.461 C147.8:85.5 D7.80 S1.00 V23.9 ; Set PID for hotend values
You can see M307 in config.g matches the tuning result in my first post.
I've run the tune 4 times, each PID was very slightly different but all trigger the Error.
@nick9one1 You have reset the Duet since changing config.g? Send
M307 H1to check what settings are actually being used. It's possible that you have a config_override.g file that is using a different (old) value, too.
@nick9one1 Are you running the print cooling fan when heating up? If so, turn it off. Was the heated bed already hot when you did the M303 tuning (might have a small effect on results)? Did you tune the heater with the nozzle close to the bed (which simulates the conditions when printing)?
Yep I did all that. nozzle at Y0, bed was cold. part cooling fan is off when the error happens.
I wonder if the thermisistor that came with the Biqu H2 is differnt to what I have specified.
M308 S1 P"e0temp" Y"thermistor" T96774.19355 B3950 C0 R4700 A"Hotend Temp" ; configure sensor 1 as thermistor on pin e0temp
the H2 product page doesn't list any data on the supplied thermistor
but they do seem to sell (what I imagine) is the the same thermistor separately
three isn't much information other than its a HT-NTC100K
I've changed M308 to reflect more 'default' settings, re-tuned, but still get the same error...
M308 S1 P"e0temp" Y"thermistor" T100000 B3950 A"Hotend Temp"
After doing the tuning can you try sending M500 to save the result to config-override.g. Then you don't have to manually copy anything over. As long as you have M501 at the end of config.g to load those settings it should then take effect at boot up.
Thanks. I'll try that
I had to add M501 at the end of config.g (as I dont usually use config-override.g)
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sat Sep 05 2020 23:57:30 GMT+0100 (British Summer Time) ; General preferences M80 ; Turns on the ATX power supply G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"BLV MGN Cube" ; set printer name M669 K1 ; select CoreXY mode ; Network M552 S1 ; enable network M587 S"your_wifi_name" P"your_password" ; Configure access point. You can delete this line once connected M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes backwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S0 ; physical drive 3 goes backwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200.00 Y200.00 Z3200.00 E932.00 ; set steps per mm M566 X820.00 Y820.00 Z70.00 E500.00 ; set maximum instantaneous speed changes (mm/min) M203 X20000.00 Y20000.00 Z500.00 E2000.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z150.00 E5000.00 ; set accelerations (mm/s^2) M906 X1100 Y1100 Z1100 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Pressure advance M572 D0 S0.1 ; Axis Limits M208 X-30 Y0 Z0 S1 ; set axis minima M208 X305 Y329 Z950 S0 ; set axis maxima ; Endstops M564 H0 ; allow jog without homing M574 X1 S1 P"xstop" ; M574 Y2 S1 P"ystop" ; M574 Z1 S1 P"zstop" ; configure Z-probe endstop for low end on Z ; Z-Probe M558 P1 H5 C"^zprobe.in" H5 F250 T9000 R0.5 T7200 ; set Z probe type to switch and the dive height + speeds G31 P500 X0 Y25 Z1.97 ; set Z probe trigger value, offset and trigger height M557 X10:280 Y25:278 P5 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 C0 A"Bed Temp" ; 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 M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 100C ;M307 H0 A340.0 C445.4 D27.6 S1.00 V23.9 B0 ; Set PID for heated bed values M307 H0 R0.278 C1408.5 D27.03 S1.00 ; Set PID for bed values M308 S1 P"e0temp" Y"thermistor" T100000 B3950 A"Hotend Temp" ; 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 M143 H1 S265 ; set temperature limit for heater 1 M307 H1 R3.349 C228.7:133.4 D7.83 S1.00 V23.9 ; Set PID for hotend values ; Fans M950 F0 C"Fan2" Q50 ; create fan 0 on pin 2 and set its frequency M106 P0 S0 H-1 X204 ; set fan 0 value. Thermostatic control is turned off ;M950 F0 C"Fan0" Q100 ; create fan 2 on pin fan2 and set its frequency ;M106 P0 S1 H1 T45 ; set fan 2 value. Thermostatic control is turned on ; Tools M563 P0 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 ; Screen M575 P1 B57600 S1 M501
; config-override.g file generated in response to M500 at 2021-03-21 01:19 ; This is a system-generated file - do not edit ; Heater model parameters M307 H0 R0.278 C1408.500:1408.500 D27.03 S1.00 V0.0 B1 M307 H1 R3.445 C219.932:130.532 D7.80 S1.00 V23.9 B0 ; Workplace coordinates G10 L2 P1 X0.00 Y0.00 Z0.00 G10 L2 P2 X0.00 Y0.00 Z0.00 G10 L2 P3 X0.00 Y0.00 Z0.00 G10 L2 P4 X0.00 Y0.00 Z0.00 G10 L2 P5 X0.00 Y0.00 Z0.00 G10 L2 P6 X0.00 Y0.00 Z0.00 G10 L2 P7 X0.00 Y0.00 Z0.00 G10 L2 P8 X0.00 Y0.00 Z0.00 G10 L2 P9 X0.00 Y0.00 Z0.00 M486 S-1
Unfortunately I get exactly the same..
SJI last edited by SJI
I've also been experiencing this also. Once it's at temp all is good
edit: Firmware 3.2.2 Duet 3 6HC
Can we see some photos of the hotend assembly?
A couple of stock images, then three of my setup.
It way be worth mentioning the whole assembly is aluminium.. The block, gears, extruder housing, tensioning arm.
Its fairly similar to the E3d Hermera, although smaller and lighter.
Is the heat block making contact with the cold side? Can't quite tell from the photo of the underside.
what does your heater graph look like during the tuning?
3mm-4mm gap between heat block and cold side.
There's quite a lot of thermal mass with the complete extruder assembly being 100% metal. My initial thoughts were this was the reason for the error. But the pid tuning should take account of this? (tuning was done from cold).
Thanks for the feedback on the new algorithm. Will see if DC42 has any tuning suggestions.
update - after making a few changes the hotend is now heating without the error.
The all metal throat is secured by two grub screws to the body/heatsink. Although properly secured, I think the throat was heating up, expanding slightly and making better contact with the heatsink, causing it to dump heat a bit quicker and triggering the error.
I've added some thermal compound to the throat/heatsink, re-tuned and can now heat from cold without any issues.