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

Using Multiple Bed Heaters

Scheduled Pinned Locked Moved
General Discussion
4
21
4.3k
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.
  • undefined
    justine.haupt
    last edited by 26 Dec 2017, 17:12

    Ahhhhhhhhhhh. Thank you dc42.

    1 Reply Last reply Reply Quote 0
    • undefined
      justine.haupt
      last edited by 26 Dec 2017, 17:47

      If I send M140 P2 S50 I get,

      [[language]]
      READ: Error: Temperature reading fault on heater 4: unknown temperature sensor channel
      1 Reply Last reply Reply Quote 0
      • undefined
        elmoret
        last edited by 26 Dec 2017, 19:27

        Looks like you don't have a M305 set up for that thermistor yet.

        1 Reply Last reply Reply Quote 0
        • undefined
          justine.haupt
          last edited by 26 Dec 2017, 19:29

          I thought I did:

          [[language]]
          M305 P2 R4700 T100000 B3950 ; set bed thermistor parameters

          Should that be

          [[language]]
          M305 P4 R4700 T100000 B3950 ; set bed thermistor parameters

          ?

          1 Reply Last reply Reply Quote 0
          • undefined
            justine.haupt
            last edited by 27 Dec 2017, 23:47

            I think it should indeed be P4 in the M305 command, as in

            [[language]]
            M305 P4 R4700 T100000 B3950

            But it's still not working. When sending M140 P2 S50 it returns:

            [[language]]
            READ: Error: Temperature reading fault on heater 4: sensor open circuit

            So it goes from complaining that the temperature sensor channel is unknown to complaining that it's not connected, but it is connected. I have the thermistor plugged into the E4:ESSA/THERMISTOR5 and it reads ~100k at ambient, probed right at the Molex connector.

            Also tried setting M305 P5 R4700 T100000 B3950 just to be sure, but the error goes back to unknown temperature sensor channel.

            1 Reply Last reply Reply Quote 0
            • undefined
              dc42 administrators
              last edited by 28 Dec 2017, 00:02

              The E4 thermistor channel is channel 5. You have configured the second bed heater to use channel 4, which is the one labeled E3. They are offset by one because the bed thermistor is channel 0, therefore the E0 thermistor is channel 1, and so on.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              1 Reply Last reply Reply Quote 0
              • undefined
                justine.haupt
                last edited by 28 Dec 2017, 00:49

                Tried that too (see end of comment above), but that also gives me [c]READ: Error: Temperature reading fault on heater 4: sensor open circuit[/c].

                Just tried it again to be sure. Same.

                1 Reply Last reply Reply Quote 0
                • undefined
                  dc42 administrators
                  last edited by 28 Dec 2017, 08:21

                  Did you remember to change your M140 command from M140 P2 H4 to M140 P2 H5 too?

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    justine.haupt
                    last edited by 28 Dec 2017, 17:21

                    I did not! Thank you David(?).

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      justine.haupt
                      last edited by 30 Dec 2017, 02:10

                      Closer by the day.

                      My understanding is I can use M140 Hn Snn to turn on specific heater channels (H0, H5, H6, and H7 in my case), but the way the config file is set up, M140 P2 Snn should turn on ALL of the linked heaters. Is that right?

                      The current primary problem is that I get the ""temperature rising much more slowly than the expected 0.7C/sec" error very quickly after turning on a heater, but if I try to autotune H5 (for example) with M303 H5 S60, I get

                      [[language]]
                      READ: Heater is not ready to perform PID auto-tuning

                      What's going on here?

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        justine.haupt
                        last edited by 30 Dec 2017, 03:00

                        ALSO,

                        I can't use M140 Hn Snn to turn on more than one heater at a time. For example, if I send M140 H5 S50, that heater goes on, but if I then send M140 H6 S50, it switches to H6 instead of keeping both H5 and H6 on.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          dc42 administrators
                          last edited by 30 Dec 2017, 11:25

                          I have condensed your reports into the following:

                          1. Unable to autotune a heater that is assigned as an additional bed heater because of "not ready" message. Did you clear the heater fault before you sent the M303 command?

                          2. M140 H6 S50, it switches to H6 instead of keeping both H5 and H6 on. This is the correct behaviour, because that command both assigns heater 6 to bed heaster 0 (because the P parameter defaults to 0) and switches it on. To control a bed heater, use M140 P# Snn where # is the bed heater number you want to control.

                          3. "My understanding is I can use M140 Hn Snn to turn on specific heater channels (H0, H5, H6, and H7 in my case), but the way the config file is set up, M140 P2 Snn should turn on ALL of the linked heaters. Is that right?"

                          No. You should not normally use both H and S in the same command. The H parameter assigns that heater number to the bed heater number that you specify in the P parameter. You would normally use M140 with an H parameter only in config.g because you will use a fixed assignment of bed heater numbers to heater channels. Subsequently, to control a bed heater, use M140 P# Snn.

                          HTH David

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            justine.haupt
                            last edited by 30 Dec 2017, 13:52

                            Thank you for the attentiveness David.

                            You know, the default H0 heater model settings work fine. Could you possibly report those settings so I can apply them to the other bed heaters as a starting point?

                            I think tuning these heaters will be a bit of a pain since they will behave differently when turned on individually versus all at once.

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              dc42 administrators
                              last edited by 30 Dec 2017, 14:45

                              Just send M307 H0 to get the current settings for heater 0.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                justine.haupt
                                last edited by 30 Dec 2017, 15:05

                                ::facepalm::

                                Thanks.

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  justine.haupt
                                  last edited by 30 Dec 2017, 21:33

                                  Here's a summary of what I did to get multiple bed heaters working, thanks to a lot of hand-holding:

                                  1. 4 bed heaters, connected to the default bed heater as well as the E4, E5, and E6 heaters on the Duex5.
                                  2. The bed heaters are configured in config.g as follows:

                                  [[language]]
                                  ; ###Configure Bed Heaters###
                                  M140 P0 H0 ;Tie the E4 (H5) heater and thermistor to P0 as a bed heater. This is so by default but included for visual consistecy in this file.
                                  M140 P1 H5 ;Tie the E4 (H5) heater and thermistor to P5 as a bed heater.
                                  M140 P2 H6 ;Tie the E5 (H6) heater and thermistor to P6 as a bed heater.
                                  M140 P3 H7 ;Tie the E6 (H7) heater and thermistor to P7 as a bed heater.
                                  M305 P0 R4700 T100000 B3950 ;Set thermistor parameters
                                  M305 P5 R4700 T100000 B3950
                                  M305 P6 R4700 T100000 B3950
                                  M305 P7 R4700 T100000 B3950
                                  M307 H0 A90.0 C700.0 D10.0 B1 ;Set heater model settings
                                  M307 H5 A90.0 C700.0 D10.0 B1
                                  M307 H6 A90.0 C700.0 D10.0 B1
                                  M307 H7 A90.0 C700.0 D10.0 B1
                                  M143 H0 S120 ; Set maximum heater temperature.
                                  M143 H5 S120 ;
                                  M143 H6 S120 ;
                                  M143 H7 S120 ;
                                  M570 H0 S1200 ; Set maximum heating time (Snnn, in seconds).
                                  M570 H5 S1200 ;
                                  M570 H6 S1200 ;
                                  M570 H7 S1200 ;

                                  3. If I want to turn all the bed heaters on and set them to nn*C, I send:

                                  [[language]]
                                  M140 P0 Snn
                                  M140 P1 Snn
                                  M140 P2 Snn
                                  M140 P3 Snn
                                  M116 ;wait for all heaters to stabilize

                                  Notes:

                                  -M140 P0 Snn is the default heater output, so if a heated bed is specified in the slicer settings this will be redundant.
                                  -If adding this to the start script in Simplify3D, it seems better to remove the normal bed heater from the Temperature Tab altogether. Otherwise, the start script doesn't run until after the first heater zone has come up to temperature and stabilized, which means a single heater needs to fight against the thermal mass of the whole build plate before the other heaters are ever woken up, so it may not get up to temperature at all. It's still not great because the extruder will have come up to temperature and be sitting like that the whole time the bed is coming up to temperature. But unchecking "wait for temperature controller to come up to temperature before beginning build" for the extruder helps so at least everything comes on at the same time.
                                  -Hopefully Simplify3D will soon support multiple bed heaters. Someone on the Simplify forum claims it already does (https://forum.simplify3d.com/viewtopic.php?f=23&t=6976), but I don't know what they're talking about. I posted on that forum to address the question.

                                  1 Reply Last reply Reply Quote 0
                                  • undefined Bart1992 referenced this topic 13 Jan 2022, 08:33
                                  14 out of 21
                                  • First post
                                    14/21
                                    Last post
                                  Unless otherwise noted, all forum content is licensed under CC-BY-SA