Duet 2 WiFi - Extruder and Heater Complications
Hello to whoever reads this!
I've currently managed to setup my Duet to self calibrate itself pre/post-printing, but now, I'm working on aligning the extruders and heaters at the tools list. I've had a browse online but I've only got bits of information that were useful to me.
My setup is a CoreXY Printer, with 4 Z-Axis via 4 leadscrews on all corners, along with 4 separate extruders and 4 heaters/nozzles, for whoever may be reading that has a similar build.
I'm using a double-stacked PT100 Thermal Sensor, and, from what I have obtained online, they use the channels X200 to X207.
My problem is that I cannot get Heater 1 to work (shows 2000ºC). 2, 3 and 4 are currently assigned to X200, X201 and X202, leaving me with 203-207 for Heater 1. I have tried using trial-and-error with X203 to X207, yet the sensor still detects 2000ºC. Heaters 2, 3 and 4 are working, along with their desired temperature values. May I have some help on how I may be able to solve this on the software side? Still unfortunately very new to this.
Here are sections of my config.g for how my tools are configured. The Bed isn't configured as of yet.
M569 P0 S1 ; Drive 0 goes forwards - X Motor
M569 P1 S1 ; Drive 1 goes forwards - Y Motor
M569 P2 S1 ; Drive 2 goes forwards - Z4 Motor
M569 P3 S1 ; Drive 3 goes forwards - E0
M569 P4 S1 ; Drive 4 goes forwards - E1
M569 P5 S1 ; Drive 5 goes forwards - E2
M569 P6 S1 ; Drive 6 goes forwards - E3
M569 P7 S1 ; Drive 7 goes forwards - Z3 Motor
M569 P8 S1 ; Drive 8 goes forwards - Z2 Motor
M569 P9 S1 ; Drive 9 goes forwards - Z1 Motor
M584 X0 Y1 Z2:7:8:9 U9 V8 W7 A2 E3:4:5:6 P10 ; Driver 0 For X, 1 for Y, Z=2:7:8:9 A=2 U=7 V=8 W=9, Extruder 3-6
M305 P0 T100000 B4138 X0 ;R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S120 ; Set temperature limit for heater 0 to 120C
M303 H0 S120
M305 P1 T100000 B4138 X203 ;R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
M303 H1 S280
M305 P2 T100000 B4138 X200 ;R4700 ; Set thermistor + ADC parameters for heater 2
M143 H2 S280 ; Set temperature limit for heater 2 to 280C
M303 H2 S280
M305 P3 T100000 B4138 X201 ;R4700 ; Set thermistor + ADC parameters for heater 3
M143 H3 S280 ; Set temperature limit for heater 3 to 280C
M303 H3 S280
M305 P4 T100000 B4138 X202 ;R4700 ; Set thermistor + ADC parameters for heater 4
M143 H4 S280 ; Set temperature limit for heater 4 to 280C
M303 H4 S280
;M563 P0 D0 H0 F0 ; Define tool 0 ; Commented because I thought that Tool 0 would be assigned to the Bed, since the bed is Heater 0
;G10 P0 X10 Y10 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 X-10 Y10 Z0 ; Set tool 1 axis offsets
G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C
M563 P2 D2 H2 F0 ; Define tool 2
G10 P2 X10 Y-10 Z0 ; Set tool 2 axis offsets
G10 P21 R0 S0 ; Set initial tool 2 active and standby temperatures to 0C
M563 P3 D3 H3 F0 ; Define tool 3
G10 P3 X-10 Y-10 Z0 ; Set tool 3 axis offsets
G10 P3 R0 S0 ; Set initial tool 3 active and standby temperatures to 0C
M563 P4 D0 H4 F0 ; Define tool 4
G10 P0 X10 Y-10 Z0 ; Set tool 4 axis offsets
G10 P0 R0 S0 ; Set initial tool 4 active and standby temperatures to 0C
deckingman last edited by
@tec_bamm Hmmm, well looking at your config, it should sort of work but there are a few things that might mess it up.
Can you confirm that you use PT100s for the 4 hot end heaters and a "normal" thermistor for the bed?
As you rightly say, the bed heater by default is H0. If you are using a normal thermistor, then you need the R4700 but you have a semi-colon before it which will effectively comment it out. Having said that, R4700 may be the default value though so it may not matter.
Channels X200 and 201 are the first two channels on the first PT100 daughter board. Channels 202 and 203 are the two channels on the second daughter board. So what you have defined ought to work (but with caveats - see below). IIRC channels 204 to 207 are only if you have additional daughter boards plugged in to a Duex 2 or Duex 5 expansion board. So with 2 daughter boards, the available channels are X200, 201, 202 and 203.
Now the caveats.
You don't need T and B parameters when using PT100s. So simply using M305 P1 X203 should work. I don't think it matters that you have included T and B parameters as I assume they will simply be ignored, but it might make a difference.
M303 is for running heater tuning as a "stand alone" command. It definitely should not be in your config.g. Those commands might well bugger something up.
I define all my tools starting with the first tool as tool 0. So not having a tool 0 might or might not cause a problem. You can assign any heater to any tool. So start with tool 0 but use heater 1 (as heater 0 is the bed heater). So use
M563 P0 D0 H1
M563 P1 D1 H2
M563 P2 D2 H3
M563 P3 D3 H4
...and whatever fan you want to use but the default is fan 0.
Then in your tool definitions, you have a few typos
For tool 2 you have G10 P21 R0 S0 which should be G10 P2 R0 S0
And under tool 4 you use G10 P0 instead of P4 for both the offsets and the active/standby temperatures. So in effect you haven't set the offsets or active and standby temperatures for tool 4. I don't know what the defaults are likely to be - probably all zero so for the active and standby temperatures, it may not matter (but for the X and Y offsets, it certainly will matter).
So in summary, take out the M303 commands and correct the typos. Then I suggest you first try the PT100 you are using for the 4th tool in a different channel, just to rule out it being a faulty sensor. If that doesn't work, try defining the tools from T0 to T3 rather than T1 to T4.
@deckingman Thank you for giving me suggestions.
I'm currently not working on the 3D Printer until thursday, but I'll try to respond to what I can on your previous message.
I use the PT100s for 4 hot end heaters, yes, but the bed doesn't exist yet, so there's no thermistor installed regarding that.
Anyways, I see! I understand that X200-X203 are for the PT100. I do have a Duex5 board with it, but I was unclear on what the X204-X207 channels were.
I'll hopefully respond back on thursday for updates on your suggestion. Thank you very much!
A few more suggestions:
- if you are using 2-wire connections, make sure the 2 jumpers are in place
- connect the 100 ohm resistor supplied with the sensor to the non-working input (203) with the jumpers in place. It should give a reading of close to 0degC.
- try plugging the second daughter board into the DueX5 instead of stacking it on top of the first one, and address it as channels 204 and 205
- check that all 10 pins of both connectors have all pins soldered. The socket on the underside has to be hand soldered from the top, so it's not impossible for a pin to be missed
- swap the 2 boards over and see if the problem stays with the board (so it moves to channel 201) or stays with the channel number
- if none of that gets the second channel on that working, and the problem stays with the board (not the channel number) when you swap the boards, ask for the faulty board to be replaced.
tec_bamm last edited by
@deckingman Hello there!
I've now done some of your suggestions. Here is what I found:
- Commenting/Removing the T and B parameters made the sensors read at 2000ºC, so I needed to keep it afterwards
- R4700 didn't do anything from what I've seen
- Commenting/Removing M303 also did nothing from what I do, so I kept it commented afterwards
- From before, I had Tool 1 assigned to Heater 1, and so on, up until Tool 4 with Heater 4. Now, from the suggestions you've made, Tools 1-3 are now associated with Heaters 2-4, and are having the correct readings, leaving me with Tool 0 and Heater 1. Tools 1-3 are visible on the Web Server, whereas Tool 0 doesn't exist on there. Adding it manually through the Tools tab, associating Drive 0 with Heater 1, just creates a new tool with 2000ºC, which I think means it's not working - At least we're already 75% of the way there, excluding the bed!
Also thank you for pointing out that Tool 2 mistype. I completely missed that.
Same with the Tool 4 shenanigans.
I do agree with you that I should define the tools from T0 to T3, instead of T1 to T4. I only did the T1 to T4 because I wanted the numbers to match, initially, so I know that they belong to each other, but I've gotten used to it now where 0 = 1, etc.
Now time to check dc42's suggestions.
Completely forgot to uncomment Tool 0. Tool 0 is back on the Web Server.
@dc42 Hello there!
- The 2-wire connections already have jumpers in place (soldered)
- Unfortunately, I don't think I've been supplied a 100Ω resistor with my sensor. We may have been, but my colleague who has assembled it may have placed it somewhere, and I don't know where it is. All we have supplied are two 1kΩ resistors. I'll try to see what I can do to source/find this 100Ω resistor, then perform the suggestion you have given.
- Putting the second daughter board onto the Duex5 resulted to channels X200-X201 to still work, but X202-X207 to no longer work (all reads 2000ºC). All 10 pins are soldered, from what I can see on the other PT100 on the Duex. On the other hand, swapping the PT100 boards from the Duex5 to the main board, and vice versa, resulted to X200, X204 and X205 to work, somehow.
From my configuration:
- X200 = Heater 4
- X201 = Unknown (Which it should technically be Heater 1)
- X204 = Heater 2
- X205 = Heater 3
On my Duet's LCD Screen, I can see that Heater 1 is also on 2000ºC, meaning that the thermistor is not found on that channel. I have checked the wiring of the PT100, and they are all fine. I believe that there may be a wiring fault on the heater end, but I cannot touch that until my colleague comes back in over a week's time.
At least another thing is that the working heaters are able to function along with the correct extruder motors, which are all assigned on Tool 0 to 3 anyways. I guess Tool 0 will also work once Heater 1's channel also works.
Are you sure they are 1K resistors? They should be 100 ohm.
I think one of your PT100 boards has a faulty channel. Please ask your supplier to replace it.
tec_bamm last edited by
@dc42 They are 1K resistors, yes. It's a common colour code, but I checked it via the Anmeter anyways.
Ok, I shall see what I can do to replace the PT100. Thank you very much!