PID problems
-
HI, I'm running firm ware 3.4.0 and trying to do a bed PID of M303 H0 S80. But it gets to phase 3 and just runs for hours not doing anything. I used a thermal gun on top of the bed and it shows 91C and the duet panel is showing 75C. I tried the new M303 T0 S80 but says no heater started. Not sure what the problem is. If the bed temp is wacky then probably my hemera extruder. This is a new hypercube build and the prints are not coming out very good quality. I'm thinking that true temperatures are not running. Please help! Larry
; Configuration file for Duet WiFi (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.10 on Thu Jan 27 2022 07:58:07 GMT-0800 (Pacific Standard Time); General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"EVO2" ; 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; Drives
M569 P0 S0 ; physical drive 0 goes forwards
M569 P1 S0 ; physical drive 1 goes forwards
M569 P2 S1 ; phys4cal drive 2 goes backwards
M569 P3 S0 ; physical drive 3 goes forwards
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
;M92 X81.41 Y81.41 Z394.7 E400 ; set steps per mm
M92 X79.85 Y79.85 Z400.04 E392.47 ; set steps per mm
M566 X900.00 Y900.00 Z12 E300 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z3000.00 E1000.00 ; set maximum speeds (mm/min)
M201 X300 Y300 Z250 E1500 ; set accelerations (mm/s^2)
M906 X850 Y850 Z650 E850 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limit
M208 X0 Y0 Z-10.0 S1 ; set axis minima
M208 X250 Y260 Z180 S0 ; set axis maxima; Endstops
M574 X1 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for low 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
;M574 X1 Y2 S1 ; X home to min. Y home to max. Normally Closed limit switches.
;M574 Z1 S2 ; Define Z to use Probe. Home to Min; Z-Probe
M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F500 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X7 Y-50 Z2.675 ; set Z probe trigger value, offset and trigger height
M557 X30:250 Y15:210 S20 ; define mesh grid;BLTouch Heater
M307 H7 A-1 C-1 D-1 ; Disable the 7th Heater to free up PWM channel 5 on the Duex board.; 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 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 S120 ; set temperature limit for heater 0 to 120C
M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.060000e-8 ; 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 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 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; Custom settings are not defined
; Miscellaneous
M912 P0 S-12.6
M501 ; load saved parameters from non-volatile memory
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss -
@blitzreg Make sure you have the correct B value for your bed thermister and check if it's getting the full voltage if it's a DC bed.
To use M303 T0 S80, which tunes T0, you need to select T0. It's recommended to put a T0 at the end of the config.g, so a tool is selected on start up.
-
@stephen6309 How do I know the B value my resister? For some reason when I try the M303 T0 S80 the extruder starts to tune instead of the bed and on the duet panel the extruder is showing T0.
-
@stephen6309 yes its a 24V bed
-
@stephen6309 I'm getting 24.2v from the PSU and I'm reading 23.4V on the heat bed side of the mosfet.
-
@stephen6309 I'm reading 23.66V on the bed connector on the duet wifi 2 board going to the mosfet
-
@blitzreg said in PID problems:
@stephen6309 How do I know the B value my resister? For some reason when I try the M303 T0 S80 the extruder starts to tune instead of the bed and on the duet panel the extruder is showing T0.
M303 T0 S80 is to tune the tool heater as a tool including the associated fan.
M303 H0 is correct for tuning heater 0 which you have assigned as the bed heater.
Can you send M122 and M98 P"config.g" in the gcode console and post the results here?
So you are using an external mosfet for the bed heater?
What does the temp graph look like during the tuning process? Can you snap a screen shot?
B4138
If your bed thermistor is bog standard the B value is probably 3950 instead.
-
@phaedrux Hi, ok I'll try that! This is my 2nd hypercube I have built and both have the same thermistor and bed in them. The first one has firmware 1.21 and M303 H0 S90 works good. Both machines are setup identical except firm ware version difference. Bellow is the working printers config.g
-
m122
5/5/2022, 2:20:12 PM m122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.0 (2022-03-15 18:58:31) running on Duet WiFi 1.02 or later
Board ID: 08DJM-9178L-L2MS8-6J1FL-3S06N-KBHGP
Used output buffers: 3 of 24 (13 max)
=== RTOS ===
Static ram: 23868
Dynamic ram: 74568 of which 40 recycled
Never used RAM 13604, free system stack 184 words
Tasks: NETWORK(ready,13.1%,236) HEAT(notifyWait,0.0%,332) Move(notifyWait,0.0%,364) MAIN(running,86.8%,440) IDLE(ready,0.0%,30), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 01:05:34 ago, cause: software
Last software reset at 2022-05-05 13:14, reason: User, GCodes spinning, available RAM 13604, slot 0
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 21.9, current 23.6, max 24.0
Supply voltage: min 24.1, current 24.2, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min n/a
Driver 1: standstill, SG min n/a
Driver 2: standstill, SG min n/a
Driver 3: standstill, SG min n/a
Driver 4: standstill, SG min n/a
Driver 5:
Driver 6:
Driver 7:
Driver 8:
Driver 9:
Driver 10:
Driver 11:
Date/time: 2022-05-05 14:20:10
Cache data hit count 4294967295
Slowest loop: 4.93ms; fastest: 0.18ms
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 3.6ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, 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, chamber heaters -1 -1 -1 -1, ordering errs 0
Heater 1 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
=== Network ===
Slowest loop: 15.75ms; 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 84:0d:8e:b2:1e:40
WiFi Vcc 3.42, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 25976
WiFi IP address 192.168.86.101
WiFi signal strength -47dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0
- WiFi -
-
@phaedrux said in PID problems:
M98 P"config.g"
5/5/2022, 2:21:34 PM M98 P"config.g"
HTTP is enabled on port 80
FTP is disabled
TELNET is disabled
Error: Heater 7 not found -
@phaedrux yes external mosfet
-
@phaedrux I'm running pid tune now on the bed. The bed with a IR gun is 10C higher then what the thermistor is showing
-
-
Yes, just looked up what I purchased and they are 3950. So , do I put B3950 ?
-
@blitzreg said in PID problems:
So , do I put B3950 ?
Yes.
M308 S0 P"bedtemp" Y"thermistor" T100000 B3950
-
@phaedrux hi so no C0 R4700 behind B3950? I'm running it now
-
@phaedrux right now the thermistor in phase 3 reads 84 and the IR gun shows 96. Makes me wonder if the thermistor is bad
-
Where is the thermistor positioned to get the reading?
Are you measuring with the IR temp gun in the same location?
-
@phaedrux no, I actually testing it all 4 corners and in the middle where the thermistor is located
-
@phaedrux Almost 1 hour on phase 3. My other hypercube has already tuned using firm ware 1.21. now I'm wondering when I tell the extruder to heat to 220C its actually 220C. My first prints off them looked like they got pretty hot. I am using the e3d hemeria w/volcano direct drive. I also have their REVO