Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Duet 2 Wifi 3 Heater control using bed output + messed up tools

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    40
    1.4k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • mikep91undefined
      mikep91 @Phaedrux
      last edited by mikep91

      @Phaedrux

      No - not controlled off the DUET - duet is only supposed to be controlling 3 heaters in one hotend

      Elaborated in answer above

      1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator @mikep91
        last edited by

        @mikep91 said in Duet 2 Wifi 3 Heater control using bed output + messed up tools:

        Am not using heated bed - so I know I should do a H-1 to turn it off. but the mapping seems to go on that tool

        If you're not using a bed heater you can use the output for your 3rd extruder heater, then you don't need to use the expansion headers, which aren't really intended to be used directly by a heater.

        If you don't define a bed heater you don't need a H-1 to disable it.

        Z-Bot CoreXY Build | Thingiverse Profile

        mikep91undefined 1 Reply Last reply Reply Quote 0
        • mikep91undefined
          mikep91 @Phaedrux
          last edited by

          @Phaedrux

          Makes sense and would be alot better as the connections on the expansion is quite poor compared to the bed and extruder connections.

          How would the M command look for mapping the 3rd heater to the bed instead of the expansion?

          M308 S1 P"spi.cs3" Y"rtd-max31865" ;
          M950 H1 C"bedheat" T0 ;
          M307 H1 B0 S1.00 ;
          M143 H1 S280 ;

          Something like this - whilst not using H-1 to cancel it out?

          1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator
            last edited by

            So if I understand your setup, and I'm not sure that I do, you'd have something like this for a single tool, using 3 heaters together, and no bed heater, with PT100 temp sensors.

            ; Heaters
            M140 H-1                                ; disable heated bed (overrides default heater mapping)
            M308 S0 P"spi.cs1" Y"rtd-max31865"      ; configure sensor 0 as PT100 on pin spi.cs1
            M950 H0 C"bedheat" T0                   ; create nozzle heater output on bedheat and map it to sensor 0
            M307 H0 B0 S1.00                        ; disable bang-bang mode for heater  and set PWM limit
            M143 H0 S280                            ; set temperature limit for heater 0 to 280C
            M308 S1 P"spi.cs2" Y"rtd-max31865"      ; configure sensor 1 as PT100 on pin spi.cs2
            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
            M308 S2 P"spi.cs3" Y"rtd-max31865"      ; configure sensor 2 as PT100 on pin spi.cs3
            M950 H2 C"e1heat" T2                    ; create nozzle heater output on e1heat and map it to sensor 2
            M307 H2 B0 S1.00                        ; disable bang-bang mode for heater  and set PWM limit
            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 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 H0:1:2 T45                   ; set fan 1 value. Thermostatic control is turned on
            
            ; Tools
            M563 P0 D0 H0:1:2 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
            
            ; Miscellaneous
            T0                                      ; select first tool
            

            Z-Bot CoreXY Build | Thingiverse Profile

            mikep91undefined 1 Reply Last reply Reply Quote 0
            • mikep91undefined
              mikep91 @Phaedrux
              last edited by

              @Phaedrux

              Yeah im sorry for being not very precise - I am using a pellet hotend on a robotic arm, so the duet is only to control the heaters. But it has 3 heat zones - so i would need individual control of each heat zone mapped to a specific sensor.

              Would this give me 3 individual heaters to control on the duet display?

              I will do a test first thing tomorrow morning with this - thank you!

              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Does the Duet even need to know it's a tool? If it's only doing heater control and no motion planning I think you could leave out the tool and fan definition.

                Z-Bot CoreXY Build | Thingiverse Profile

                mikep91undefined 2 Replies Last reply Reply Quote 0
                • mikep91undefined
                  mikep91 @Phaedrux
                  last edited by

                  @Phaedrux

                  No it does not actually - i thought these commands were what gave me temp control on the display

                  1 Reply Last reply Reply Quote 0
                  • mikep91undefined
                    mikep91 @Phaedrux
                    last edited by

                    @Phaedrux

                    Hello again Phaedrux -

                    When testing out the config you posted yesterday.

                    When setting the temperature on the display - I am getting the error "wrong tool"...

                    How would i correct the tool allocations?

                    I can turn them on using macros and M commands but not on the display....

                    Cheers

                    mikep91undefined 1 Reply Last reply Reply Quote 0
                    • mikep91undefined
                      mikep91 @mikep91
                      last edited by

                      @mikep91

                      I have three sensors attached both in the DUET and in the code.

                      However when launching this CONFIG below- I can only see 2 in the DWC --->

                      2xsensorsonly.png

                      When using a completely 2nd code (for another robot with only 2 heaters) I can see all three - however then they are mapped wrong as this only uses 2 heaters outputs.

                      M140 H-1 ; disable heated bed (overrides default heater mapping)
                      M308 S1 P"spi.cs1" Y"rtd-max31865" ; configure sensor 0 as PT100 on pin spi.cs1
                      M950 H1 C"e0heat" T0 ; create nozzle heater output on e0heat and map it to sensor 0
                      M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                      M143 H1 S280 ; set temperature limit for heater 0 to 120C

                      M308 S2 P"spi.cs2" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                      M950 H2 C"e1heat" T1 ; create nozzle heater output on e1heat and map it to sensor 1
                      M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                      M143 H2 S280 ; set temperature limit for heater 1 to 280C

                      M308 S3 P"spi.cs3" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                      M950 H3 C"bedheat" T2 ; create nozzle heater output on e1heat and map it to sensor 1
                      M307 H3 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                      M143 H3 S280 ; set temperature limit for heater 1 to 280C

                      M570 H1 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.
                      M570 H2 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.

                      ; Fans

                      ; Tools
                      M563 P1 D0 H1 F0 ; define tool 2
                      G10 P1 X0 Y0 Z0 ; set tool 2 axis offsets
                      G10 P1 R0 S0 ; set initial tool 0 active and standby temperatures to 0C

                      M563 P2 H2 F0 ; define tool 1
                      G10 P2 X0 Y0 Z0 ; set tool 1 axis offsets
                      G10 P2 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

                      M563 P3 H3 F0 ; define tool 1
                      G10 P3 X0 Y0 Z0 ; set tool 1 axis offsets
                      G10 P3 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

                      mikep91undefined 1 Reply Last reply Reply Quote 0
                      • mikep91undefined
                        mikep91 @mikep91
                        last edited by mikep91

                        @mikep91

                        IIT WORKS !!!! XD

                        Almost.......

                        Heater 1 and Heater 3 is mismatched - should i remap these in the software or on the duet?

                        config (2).g

                        I restarted the controller and now I am having no tools: :(........ either on the duet or in the DWC

                        591c1c5f-3916-441f-8cfd-02404b52aafa-image.png

                        mikep91undefined 1 Reply Last reply Reply Quote 0
                        • mikep91undefined
                          mikep91 @mikep91
                          last edited by

                          @mikep91

                          I had to map the heater 1 to the bed to get all 3 heaters to work... I am sure there is something wrong with my tools still.

                          a3eafb35-9dde-4780-90d7-e00ea061b3fc-image.png

                          I can only set the temps via DWC - not on the board anymore - how would I go about changing this?

                          M140 H1 ; disable heated bed (overrides default heater mapping)

                          ;M308 S0 P"spi.cs1" Y"rtd-max31865" ; configure sensor 0 as PT100 on pin spi.cs1
                          ;M950 H1 C"e0heat" T0 ; create nozzle heater output on e0heat and map it to sensor 0
                          ;M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                          ;M143 H1 S280 ; set temperature limit for heater 0 to 120C

                          M308 S1 P"spi.cs1" Y"rtd-max31865" ; configure sensor 0 as PT100 on pin spi.cs1
                          M950 H1 C"bedheat" T1 ; create nozzle heater output on e0heat and map it to sensor 0
                          M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                          M143 H1 S280 ; set temperature limit for heater 0 to 120C

                          M308 S2 P"spi.cs2" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                          M950 H2 C"e0heat" T2 ; create nozzle heater output on e1heat and map it to sensor 1
                          M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                          M143 H2 S280 ; set temperature limit for heater 1 to 280C

                          M308 S3 P"spi.cs3" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                          M950 H3 C"e1heat" T3 ; create nozzle heater output on e1heat and map it to sensor 1
                          M307 H3 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                          M143 H3 S280 ; set temperature limit for heater 1 to 280C

                          M570 H1 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.
                          M570 H2 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.
                          M570 H3 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.

                          ; Fans

                          ; Tools

                          ;M563 P0 D0 H0:1:2:3 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 P3 D0 H1 F0 ; define tool 2
                          G10 P3 X0 Y0 Z0 ; set tool 2 axis offsets
                          G10 P3 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
                          M563 P1 H2 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
                          M563 P2 H3 F0 ; define tool 1
                          G10 P2 X0 Y0 Z0 ; set tool 1 axis offsets
                          G10 P2 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

                          1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator
                            last edited by

                            Is the Duet performing extrusion functions, or is that handled externally as well?

                            It may be a better idea to define the heaters as something else, and not has tools at all.

                            How closely coupled are the heaters? Does the heat from one affect the others, or are they more distinct zones?

                            Z-Bot CoreXY Build | Thingiverse Profile

                            mikep91undefined 1 Reply Last reply Reply Quote 0
                            • mikep91undefined
                              mikep91 @Phaedrux
                              last edited by

                              @Phaedrux

                              That is handled externally aswell.

                              The heat from different zones affect eachother.

                              I will need to define the tools somehow - to be able to turn on the "tools" on the duet display.

                              This setup works for a 2 heater control board:

                              ; Heaters
                              M140 H-1 ; disable heated bed (overrides default heater mapping)
                              M308 S0 P"spi.cs1" Y"rtd-max31865" ; configure sensor 0 as PT100 on pin spi.cs1
                              M950 H1 C"e0heat" T0 ; create nozzle heater output on e0heat and map it to sensor 0
                              M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                              M143 H1 S280 ; set temperature limit for heater 0 to 120C
                              M308 S1 P"spi.cs2" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                              M950 H2 C"e1heat" T1 ; create nozzle heater output on e1heat and map it to sensor 1
                              M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                              M143 H2 S280 ; set temperature limit for heater 1 to 280C

                              M570 H1 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.
                              M570 H2 P10 T100 ; An anomaly on heater 1 must persist for 10 seconds, and must be greater or less than 100C from the setpoint, to raise a heater fault.

                              ; Fans

                              ; Tools
                              M563 P0 D0 H1 F0 ; define tool 2
                              G10 P0 X0 Y0 Z0 ; set tool 2 axis offsets
                              G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
                              M563 P1 H2 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

                              1 Reply Last reply Reply Quote 0
                              • Phaedruxundefined
                                Phaedrux Moderator
                                last edited by

                                Instead of calling them tools maybe define them all as bed or chamber heaters.

                                Perhaps @deckingman has some recommendations on dealing with multiple heaters on a single multi zone hotend?

                                Z-Bot CoreXY Build | Thingiverse Profile

                                deckingmanundefined 1 Reply Last reply Reply Quote 0
                                • deckingmanundefined
                                  deckingman @Phaedrux
                                  last edited by

                                  @Phaedrux said in Duet 2 Wifi 3 Heater control using bed output + messed up tools:

                                  Perhaps @deckingman has some recommendations on dealing with multiple heaters on a single multi zone hotend?

                                  Saw my name mentioned. I can go through how I set up my 2 heat zone hot end but to save me reading this entire thread, what's the problem or issue that needs to be addressed?

                                  Ian
                                  https://somei3deas.wordpress.com/
                                  https://www.youtube.com/@deckingman

                                  mikep91undefined 1 Reply Last reply Reply Quote 0
                                  • mikep91undefined
                                    mikep91 @deckingman
                                    last edited by

                                    @Phaedrux If i define them all as BED i can only turn them all to the same temperature. I need to be able to put my top heater to IE. 190C- middle heater 210C and nozzle heater 230C - as an example.

                                    @deckingman

                                    Hi deckingman - thank you for jumping in.

                                    I am using a duet to control some different hotends. Some with 2 heaters and some with 3 heaters.

                                    I am having the problem that i cannot turn on my tools on my paneldue with my 3 heater system.
                                    I can turn them on in my DWC. But when I'm looking at the display of the 3 heater one: I dont have the option to toggle the tools on/off - I am 99,9% sure my tools is not defined properly....

                                    Not able to turn on tools: (3 heaters)
                                    DuetNoHeaters.jpg

                                    Able to turn on tools: (2 heaters)
                                    Duet2Heatersworks.jpg

                                    On the one with 3 heaters; i have no option to turn on my tools.

                                    Config of 3 tools: - Only working on WIFI.
                                    M563 P3 D0 H1 F0 ; define tool 2
                                    G10 P3 X0 Y0 Z0 ; set tool 2 axis offsets
                                    G10 P3 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
                                    M563 P1 H2 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
                                    M563 P2 H3 F0 ; define tool 1
                                    G10 P2 X0 Y0 Z0 ; set tool 1 axis offsets
                                    G10 P2 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

                                    Config of 2 tools: Works both on Wifi and on the paneldue:
                                    ; Heaters
                                    M140 H-1 ; disable heated bed (overrides default heater mapping)
                                    M308 S0 P"spi.cs1" Y"rtd-max31865" ; configure sensor 0 as PT100 on pin spi.cs1
                                    M950 H1 C"e0heat" T0 ; create nozzle heater output on e0heat and map it to sensor 0
                                    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                                    M143 H1 S280 ; set temperature limit for heater 0 to 120C
                                    M308 S1 P"spi.cs2" Y"rtd-max31865" ; configure sensor 1 as PT100 on pin spi.cs2
                                    M950 H2 C"e1heat" T1 ; create nozzle heater output on e1heat and map it to sensor 1
                                    M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                                    M143 H2 S280

                                    Hope this makes sense.
                                    Thank you!

                                    deckingmanundefined 1 Reply Last reply Reply Quote 0
                                    • deckingmanundefined
                                      deckingman @mikep91
                                      last edited by

                                      @mikep91 Er, no that's not making much sense. @Phaedrux mentioned that you need help setting up hot ends with multiple heaters (and zones) and that's what you stated above. However, your tool definitions only use a single heater so I'm a bit confused.

                                      If it helps, this is what I used when I had a dual zone/dual heater hot end. Firstly I defined the sensors thus:

                                      M308 S1 A"Nozzle" P"2.temp1" Y"thermistor" T100000 B4725 C7.06e-8; Set sensor 1 for hot end as thermistor (Semitec) connected to expansion board 2 io1.in
                                      M308 S2 A"Combi Block" P"2.temp2" Y"thermistor" T100000 B4725 C7.06e-8; Set sensor 2 for combining block thermsitor (Semitec) connected to expansion board 2, io2.in 
                                      

                                      Then the heaters thus:

                                      M950 H1 C"2.out1" T1; hot end heater using sensor 1 and connected to expansion board 2 out1.
                                      M950 H2 C"2.out2" T2; hot end heater using sensor 2 and connected to expansion board 2 out2.
                                      

                                      Then the tools were defined like so (note the two comma separated heaters)

                                      M563 P0 S"PLA" D0:1:2:3:4 H1:2 ; Define tool 0 - heaters 1 and 2, drives 0 to 5 inclusive.
                                      G10 P0 X0 Y0 ; Set tool 0 axis offsets
                                      M567 P0 E1.00:0.00:0.00:0.00:0.00 ; Set mixing ratios for tool 0 
                                      
                                      M563 P1 S"ABS" D0:1:2:3:4 H1:2 ; Define tool 1
                                      G10 P1 X0 Y0 ; Set tool 1 axis offsets
                                      M567 P1 E0.00:1.00:0.00:0.00:0.00 ; Set mixing ratios for tool 1 
                                      

                                      etc for tools 2 to 5.

                                      Then the setting of tool temperatures was done using this format

                                      M568 P1 R260:210 S260:210; ABS
                                      M568 P2 R290:210 S290:210; PA6-CF
                                      

                                      etc... Note the comma separated values to give the active and standby temperatures for each of the two heaters.

                                      Does that help at all?

                                      Ian
                                      https://somei3deas.wordpress.com/
                                      https://www.youtube.com/@deckingman

                                      Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                      • Phaedruxundefined
                                        Phaedrux Moderator @deckingman
                                        last edited by

                                        @deckingman It's a bit unique in that in his case the Duet is only controlling the heaters and nothing else. It's a robot arm doing the printing and extruding. Trying to get control of the heaters without the baggage of a "tool".

                                        @mikep91 The PanelDue is pretty rigid in how it handles heaters. If you haven't already updated the firmware to 3.4x on the Panel you should do so.

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        deckingmanundefined mikep91undefined 2 Replies Last reply Reply Quote 0
                                        • deckingmanundefined
                                          deckingman @Phaedrux
                                          last edited by

                                          @Phaedrux said in Duet 2 Wifi 3 Heater control using bed output + messed up tools:

                                          @deckingman It's a bit unique in that in his case the Duet is only controlling the heaters and nothing else. It's a robot arm doing the printing and extruding. Trying to get control of the heaters without the baggage of a "tool".

                                          I'm even more confused now. The OP keeps talking about messed up tools and even has that in the title. What's wrong with assigning multiple heaters to tools as I've described? Where is the "baggage" in that? When multiple heaters are assigned to tools, they all show up in DWC next to each tool along with all their respective temperature values.

                                          Ian
                                          https://somei3deas.wordpress.com/
                                          https://www.youtube.com/@deckingman

                                          1 Reply Last reply Reply Quote 0
                                          • mikep91undefined
                                            mikep91 @Phaedrux
                                            last edited by

                                            @Phaedrux

                                            Hey Phaedrux.

                                            I have one Paneldue with 3.4.1 and this display is not working with any of my Duet's (3.4.6).... Therefor I dare not to upgrade the other ones, before this one display with 3.4.1 works...

                                            @deckingman

                                            Thank you very much for your config. I will look through mine for errors.

                                            You are absolutely correct, i need to 3 heaters to be assigned to 3 different tools to allow for seperate control.

                                            Thank you - will report back!

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA