Control printheads individually
-
I have 2 print heads, both are displayed in the console. However, if I activate one of them, the second one is automatically activated as well. How can I control the heads individually?
; Heaters
M308 S0 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin e1temp
M950 H0 C"e1heat" T0 ; create nozzle heater output on e1heat and map it to sensor 0
M307 H0 R1.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
M143 H0 S250 ; set temperature limit for heater 0 to 250C
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.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S250 ; set temperature limit for heater 1 to 250C
M308 S2 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin bedtemp
M950 H2 C"bedheat" T2 ; create bed heater output on bedheat and map it to sensor 2
M307 H2 R0.283 K0.463:0.000 D7.17 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H2 ; map heated bed to heater 2
M143 H2 S280 ; set temperature limit for heater 2 to 280C -
@axiom post your whole config
-
@axiom As @jay_s_uk said, we really need to see your entire config.g file. From the limited section you posted, it looks like you've created two tool heaters, H0 and H1. The screen shot shows two tools tool 0 and tool 1. But both tools appear to use Heater 1. So my best guess is that you've made a mistake in your tool definitions (M563) and mapped the same heater to both tools.
But that's just a guess with the limited information provided.
-
@deckingman Hello, thanks for the execution. Here is the whole code:
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 Wed Aug 24 2022 12:56:11 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"DUKA1300" ; set printer name; Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S1 ; physical drive 2 goes forwards
M569 P3 S1 ; physical drive 3 goes forwards
M569 P4 S1 ; physical drive 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.00 Y80.00 Z400.00 E420.00:420.00 ; set steps per mm
M566 X900.00 Y900.00 Z120.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z30.00 E250.00:250.00 ; set accelerations (mm/s^2)
M906 X1800 Y1680 Z1800 E1800:1800 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 X500 Y500 Z700 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 Z2 S1 P"zstop" ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin zstop; Z-Probe
M558 P1 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
G31 P500 X20 Y20 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X15:215 Y15:195 S20 ; define mesh grid; Heaters
M308 S0 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin e1temp
M950 H0 C"e1heat" T0 ; create nozzle heater output on e1heat and map it to sensor 0
M307 H0 R1.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
M143 H0 S250 ; set temperature limit for heater 0 to 250C
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.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S250 ; set temperature limit for heater 1 to 250C
M308 S2 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin bedtemp
M950 H2 C"bedheat" T2 ; create bed heater output on bedheat and map it to sensor 2
M307 H2 R0.283 K0.463:0.000 D7.17 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H2 ; map heated bed to heater 2
M143 H2 S280 ; set temperature limit for heater 2 to 280C; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
;M106 P0 S1 H0 T45 ; set fan 0 value. Thermostatic control is turned on
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
M563 P1 D1 H1 F0 ; define tool 1
G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C; Custom settings are not defined
; Miscellaneous
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss -
@axiom It is as I suspected. You have configured it such that both print heads (tools) use the same heater (H1). So if you change the temperature of one, the other will change also.
-
@deckingman How can I change that in the code?
-
@axiom additionally you have configured the heater1 with sensor0, and heater0 with sensor1!
Not sure if this is correct (depending of your installation and wiring)EDIT: To change the heater for your tool, change one of your tools to heater0 (H0) with the M563 command
e.g.; Tools M563 P0 D0 H0 F0 ; define tool 0
-
@cosmowave It works! Thanks, that was the solution!