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

    Trying to configure heaters

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    19
    3.5k
    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.
    • mrehorstdmdundefined
      mrehorstdmd
      last edited by mrehorstdmd

      I'm trying to sort out the source of my confusion. I think some of the labeling in the configurator is adding to my problem.

      0_1528644327702_heaters.jpg

      On the lower left, "Heater" refers to the physical terminals on the PCB, not the heater in the config file, and "Type" refers to whatever is physically attached to those terminals. "Heated Bed" and "Chamber" are physically SSRs that switch power to those heaters. In the config file there is no heater referred to as "bed", or "E0", or "E1"- heaters are H0, H1, and H2. "Sensor Channel" refers to the thermistor inputs on the circuit board. So the "nozzle" temperature sensor will be plugged into the "bed thermistor" input which is physically next to the Bed Heater screw terminals, etc. I haven't figured how the thermistors/sensors are referred to in the config file yet.

      "Assign bed heater to first nozzle" means 'connect the extruder(nozzle) heater to the bed heater output terminals on the PCB'
      "Bed heater output: E0" means 'connect the bed heater/SSR to the E0 heater screw terminals on the PCB'
      "Chamber heater output: E1" means 'connect the chamber heater/SSR to the E1 screw terminals on the PCB'

      I ran into more confusion on setting up Z probing. I use a simple Z=0 switch and it wasn't clear whether I select "no Z probe" or "switch" and what the trigger heights and trigger value options are for. On my first attempt at configuring motion, I tried the "no Z probe" option, and the manual Z axis adjustment wouldn't work because the Z axis had not been homed. I thought that manually adjusting the Z axis was homing it. In my second attempt, I chose the switch option and left the default 2.5 mm offset on, thinking that was going to be an offset between the nozzle and the bed. When I tested it on the machine (still zeroed from when the smoothieboard was in it), it drove the nozzle into the PEI (glad I didn't have a glass bed!). Looking back at the little info bubbles I understand that those offsets define how deeply you want to gouge the PEI bed surface! I'm still not sure why there are two offsets and why a switch needs a threshold value. Maybe it would be better to default to zero offset when using the "switch" option, then dopes like me will be less likely to damage things.

      https://drmrehorst.blogspot.com/

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

        @mrehorstdmd

        I can't say that I've used the configuration tool - (my Duet usage pre-dates it's existence) but as David said, it does look like it hasn't kept abreast of the firmware. There is nothing glaringly wrong with the config.g that you've posted other than some strange heater settings. What David suggested should get you up and running though.

        You'll get more and better information about setting up Z probes and the like from the wiki https://duet3d.dozuki.com/ and especially the gcode section https://duet3d.dozuki.com/Wiki/GCode. Setting the Z probe type and offsets (M558) are explained here https://duet3d.dozuki.com/Wiki/GCode#Section_M558_Set_Z_probe_type.

        You currently have M558 P0 which means that no probe is present. You need to use P4,or 5,6,7,8 depending on how you've wired it.

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

        1 Reply Last reply Reply Quote 0
        • mrehorstdmdundefined
          mrehorstdmd
          last edited by

          Yes, I found that info useful. Thanks.

          I also found that the firmware released a few days ago fixes the inability to manually zero the bed when the "no Z probe" option is used:
          "When Z probe type 0 is selected and DWC/PanelDue have prompted the user to jog Z, axis movement before homing is allowed"

          I've deleted the M301 statement and added M307s, run PID tuning on both the bed and extruder heaters and then saved the results to config-override file.

          Now I notice that since I swapped the heaters the Panel Due doesn't display the temperature of the extruder, only the bed heater, which means the only way to control the extruder temperature is through the gcode console. I guess i can add a couple macros to set the extruder temperature to specific values.

          https://drmrehorst.blogspot.com/

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

            @mrehorstdmd

            As of firmware 1.21 by default, you can't move any axes until they have been homed. I'm still on an older version of firmware but personally I'd find that a right royal pain as I often want to simple move the bed down say 100mm without homing it first. All is not lost though as it can be over-ridden by putting M564 H0 somewhere in config.g. Being an experienced user yourself, you might want to do that. Just be aware that you could accidentally command an axis to move beyond it's physical limits. Once it's been homed and you've set the axis maxima, they won't go beyond their limits in any case.

            I can't help you the Panel Due - that's DC's dept.

            I hope you don't mind me suggesting the following but I know you aren't likely to use any form of bed level or flatness compensation. IMO, those sort of compensations are the main reason why you might want to use config_override.g. I'd suggest that you put everything into config.g and don't use config_override.g at all. If you do, I'll pretty much guarantee that one day it'll bite you in the ar*e. You'l be editing something in config.g and wondering why it's having no effect (because what you are editing is being overriden by config-override). Of course it's up to you but I'm just suggesting it because it's caught quite a few people out in the past.

            HTH

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

            1 Reply Last reply Reply Quote 0
            • mrehorstdmdundefined
              mrehorstdmd
              last edited by

              I'm no fan of over-ride type files either. Way back in my Arduino/RAMPS days I was bitten by the eeprom storage and thereafter used only the main config file for any changes. Once I have the heaters tuned up and working right I'll copy the stuff out of the over-ride file to the config.g and delete the over-ride file.

              I've been trying unsuccessfully to get the chamber heater modeled. The autotune keeps failing because the temperature doesn't rise isn't fast enough- the tuning runs for about 1 minute then shuts down reporting that the temperature isn't rising as fast as expected. I set A to 11 (the minimum allowed), C to 99000, and D to 70 (the max allowed) using M307 via the console, but still no joy. Maybe it doesn't matter if it's operating in bang-bang mode, but I would think the fire prevention stuff would have some timers that need to be satisfied in order to work properly. The chamber heater is a 500W unit which is probably underpowered for the volume of the enclosure, but it manages to get up to 45C in about 20 minutes or so, which is usually about how long it takes to print the first few layers of most prints that need the enclosure heater, so it's as fast as it needs to be.

              https://drmrehorst.blogspot.com/

              1 Reply Last reply Reply Quote 0
              • mrehorstdmdundefined
                mrehorstdmd
                last edited by

                @dc42 I gave up on trying to create a model of the chamber heater and just went with putting the M307 H2 B1 line in the config.g file, and deleted the config-override file. Now if I set the chamber temperature it still times out and shuts the chamber heater off.

                Is there any way to extend the time-out for that heater?

                I noticed that when I power up the machine, the when the thing is booting up the panel due shows the extruder and bed temperatures, but then the extruder temperature disappears from the screen. Is there a config tweak to fix that?

                panel due boot-up video

                https://drmrehorst.blogspot.com/

                deckingmanundefined dc42undefined 2 Replies Last reply Reply Quote 0
                • deckingmanundefined
                  deckingman @mrehorstdmd
                  last edited by

                  @mrehorstdmd Check out M570. If you extend the time parameter for fault detection for that heater, it ought to cure that particular problem.

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

                  mrehorstdmdundefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @mrehorstdmd
                    last edited by dc42

                    @mrehorstdmd said in Trying to configure heaters:

                    @dc42 I gave up on trying to create a model of the chamber heater and just went with putting the M307 H2 B1 line in the config.g file, and deleted the config-override file. Now if I set the chamber temperature it still times out and shuts the chamber heater off.

                    Is there any way to extend the time-out for that heater?

                    I'm surprised that M307 H2 A11 C99000 D70 didn't allow you to auto tune. Does it take more than 70 seconds from turning the heater on to seeing the temperature start to rise?

                    Still, auto tuning the chamber heater may take a long time if your chamber is well-insulated, so I suggest you set the M307 parameters for the chamber manually as described at https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#Section_Setting_the_model_parameters_manually instead of trying to run auto tuning. In particular, I expect the dead time for your chamber heater will be quite large, and so will the time constant. A higher time constant and lower gain than the defaults will reduce the expected rate of temperature rise. The dead time can be set as large as necessary, but the time constant must be at least twice the dead time. As you are using bang-bang control, you don't need accurate M307 parameters.

                    I noticed that when I power up the machine, the when the thing is booting up the panel due shows the extruder and bed temperatures, but then the extruder temperature disappears from the screen. Is there a config tweak to fix that?

                    I'm sorry, the PanelDue firmware currently has a very simplistic view of heaters. It assumes that heater 0 is the bed heater, heater 1 is the only heater for the first tool, heater 2 is the only heater for the second tool, and so on. It's on my work list to rewrite that part of the code to allow for the flexibility of RRF to do things differently; but there wasn't time to include that in the recent 1.21 PanelDue firmware release.

                    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
                    • mrehorstdmdundefined
                      mrehorstdmd
                      last edited by

                      @dc42 said in Trying to configure heaters:

                      that in the recent 1.21 Pane

                      The autotune runs for about 70 seconds and then fails. D70 is the maximum I can set that parameter to without it complaining that the value is out of range. 11 is the minimum value that works for A.

                      The heater is a 500W resistive bar with fins that came from a stratasys printer. It takes about 20 sec or so from power on until it starts feeling warm, and in my enclosure there's a fan blowing air over it so it doesn't get too hot. The enclosure is large, and temperature rises a little over 1C per minute.

                      alt text

                      Even with the heater simply set to bang-bang mode, it times out and shuts off.

                      Thanks- I'll watch for an update of the Panel Due in a future release. In the meantime I can use macros to set temperatures for different filaments.

                      https://drmrehorst.blogspot.com/

                      dc42undefined 1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators @mrehorstdmd
                        last edited by dc42

                        @mrehorstdmd, where did you mount the thermistor?

                        The reason that D70 was the highest value you could use in M307 is that the C parameter defaults to 140 on heaters that are default to being extruder heaters, and C must be at least twice D. You can use much higher D values if you provide a high enough C parameter in the same command. For example, I just sent "m307 h1 d1000 a20 c2000" and it was accepted.

                        For a bed or chamber heater, auto tuning expects the temperature to rise by at least 3C after the dead time + 1 minute.

                        However, auto tuning the enclosure heater is likely to take more than an hour, so I suggest you establish approximate parameters manually.

                        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

                        mrehorstdmdundefined 1 Reply Last reply Reply Quote 0
                        • mrehorstdmdundefined
                          mrehorstdmd @dc42
                          last edited by

                          @dc42 I see. I'll take another run at it when I get home tonight. If I set the dead time to 500 or so, set C to 10000, and A to 11, it may work.

                          I did have the chamber up to 45C with the Duet board - I think it was when it had the M301 statements in the config.g file, though I don't know why that would matter. That was before I swapped the bed and extruder heaters. I haven't been able to get it up to that temperature since.

                          I may just swap the heaters back to the original locations- the main reason for the swap is that I use an SSR for the bed heater, and I have some excessively heavy wires running to the hot-end heater that don't fit in the small screw terminals. If I swap them back, everything on the Panel Due will go back to normal, too.

                          https://drmrehorst.blogspot.com/

                          1 Reply Last reply Reply Quote 0
                          • mrehorstdmdundefined
                            mrehorstdmd @deckingman
                            last edited by

                            @deckingman I'll try the M570 command, too. Thanks!

                            https://drmrehorst.blogspot.com/

                            1 Reply Last reply Reply Quote 0
                            • mrehorstdmdundefined
                              mrehorstdmd
                              last edited by

                              OK, everything is working. I swapped the hot-end and bed heater connections back to the default positions, used A11, C99000, D2000 to get the PID tuning to run on the chamber heater.

                              At first the Panel Due wouldn't control the hot-end temperature, but I found a reference to the T0 statement for the config file, added it, and now it's all behaving as expected.

                              Thanks for the help and suggestions!

                              https://drmrehorst.blogspot.com/

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