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

Verifying Firmware Safety Features - Duet 3 Mini 5+

Scheduled Pinned Locked Moved
Using Duet Controllers
5
31
1.6k
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
    flobler @dc42
    last edited by 30 Jun 2021, 10:59

    @dc42 Thank you! I am looking forward to the results. If you need anything, please do not hesitate to reach out to me directly or ping me here 😉

    1 Reply Last reply Reply Quote 0
    • undefined
      flobler @dc42
      last edited by 12 Jul 2021, 09:44

      @dc42 said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

      @flobler I have added this to my list of investigations and tests to do. I expect to do it later this week or early next week.

      I just wanted to verify if you had the time to further investigate 🙂

      undefined 1 Reply Last reply 12 Jul 2021, 15:55 Reply Quote 0
      • undefined
        dc42 administrators @flobler
        last edited by 12 Jul 2021, 15:55

        @flobler I'm sorry, this is still on my list to look at but I haven't had time yet. I will not have a chance to look at it until next week.

        From your report I understand that the heater fault detection is working and turns the heater off, but the secondary action of cancelling the print and trying to turn off power to the Duet if there is no user intervention isn't working on your system.

        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

        undefined undefined undefined 4 Replies Last reply 12 Jul 2021, 16:01 Reply Quote 0
        • undefined
          jay_s_uk @dc42
          last edited by 12 Jul 2021, 16:01

          @dc42 on my duet 3 mini, I use a separate 12v PSU for the bed.
          I have on more than on occasion started a print without turning it on. The printer sits there waiting for the bed to heat but never faults.
          I'm running 3.3 + SBC

          Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

          undefined 1 Reply Last reply 4 Aug 2021, 17:05 Reply Quote 1
          • undefined
            flobler @dc42
            last edited by 13 Jul 2021, 15:16

            @dc42 No problem at all 🙂

            From your report I understand that the heater fault detection is working and turns the heater off, but the secondary action of cancelling the print and trying to turn off power to the Duet if there is no user intervention isn't working on your system.

            Correct.

            I have on more than on occasion started a print without turning it on. The printer sits there waiting for the bed to heat but never faults.
            I'm running 3.3 + SBC

            This seems to match the second question I had if I understand correctly.

            1 Reply Last reply Reply Quote 0
            • undefined
              flobler @dc42
              last edited by 25 Jul 2021, 10:43

              @dc42 said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

              @flobler I'm sorry, this is still on my list to look at but I haven't had time yet. I will not have a chance to look at it until next week.

              Just a short ping to see if there is an update @dc42 🙂

              1 Reply Last reply Reply Quote 0
              • undefined
                gregsaun @dc42
                last edited by 4 Aug 2021, 06:55

                @dc42 Just a little bump to see if there is an update for our problem. Thank you in advance for the help 🙂

                github.com/gregsaun - Papa Bear

                1 Reply Last reply Reply Quote 0
                • undefined
                  Phaedrux Moderator
                  last edited by 4 Aug 2021, 17:01

                  @flobler @gregsaun In this situation is the print happening from local SD card, or from a USB gcode sender like repetier/octo, etc?

                  Z-Bot CoreXY Build | Thingiverse Profile

                  undefined 1 Reply Last reply 5 Aug 2021, 16:54 Reply Quote 0
                  • undefined
                    Phaedrux Moderator @jay_s_uk
                    last edited by 4 Aug 2021, 17:05

                    @jay_s_uk said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                    @dc42 on my duet 3 mini, I use a separate 12v PSU for the bed.
                    I have on more than on occasion started a print without turning it on. The printer sits there waiting for the bed to heat but never faults.
                    I'm running 3.3 + SBC

                    the fault detection for initial heating expects the heating rate to be within the expected value less a tolerance. If the expected value is very low then it may be less than the tolerance; but in that case the heater is probably intrinsically safe anyway.
                    but that's not the same issue as in the OP anyway, because in the OP the heater does fault

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 1
                    • undefined
                      flobler @Phaedrux
                      last edited by flobler 8 May 2021, 16:56 5 Aug 2021, 16:54

                      @phaedrux no print at all in this case. I am just testing the safety features while I am standing in front of the printer. So hotend and bed temps are set from the PanelDue.

                      This guide explains what I am doing:
                      https://guides.bear-lab.com/Guide/Checking+Firmware+Safety/25?lang=en

                      My initial post describes what safety features we were hoping to verify.

                      undefined 1 Reply Last reply 5 Aug 2021, 17:13 Reply Quote 0
                      • undefined
                        Phaedrux Moderator @flobler
                        last edited by 5 Aug 2021, 17:13

                        @flobler Ok, this may explain the issue then. The timeout will only be active when the heater is running during a print from a file on the SD card.

                        Snnn Integer timeout in minutes (can be set to 0) for print to be cancelled after heater fault (Firmware 1.20 and later). If the S parameter timeout occurs (which only happens if a SD print is in progress), RRF will also try to turn off power via the PS_ON pin.

                        https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M570_Configure_heater_fault_detection

                        Z-Bot CoreXY Build | Thingiverse Profile

                        undefined 2 Replies Last reply 9 Aug 2021, 07:33 Reply Quote 1
                        • undefined
                          flobler @Phaedrux
                          last edited by flobler 8 Sept 2021, 07:34 9 Aug 2021, 07:33

                          @phaedrux thanks, I will re-try the tests with an active print!

                          the "active" and "passive" heater temperatures are not being reset to 0C
                          if the hotend heater throws an error and switches to "fault", the bed heater keeps heating and vice versa if there is a bed heater "fault" the hotend keeps heating

                          That is expected. When a heater fault occurs, you are given some time (default 10 minutes, configurable using M570) to reset the heater fault and continue the print if it is spurious. If you do not respond during that time, all heaters are turned off.

                          I assume this means that heaters are only reset after a heater fault with the default time of 10 minutes if there is an ongoing print from SD card, right?

                          One more comment: If I disconnect the heater from the hotend and try to heat it, the heater fault is being triggered after a few seconds even without a print from the SD card and without having defined the fault detection via M570 in config.g. When I try to do the same with the bed the error is not being triggered. Is there a reason why hotend and bed are behaving differently?

                          I will do some tests this week and report back after.

                          Thanks!

                          undefined 1 Reply Last reply 9 Aug 2021, 19:37 Reply Quote 0
                          • undefined
                            dc42 administrators @flobler
                            last edited by 9 Aug 2021, 19:37

                            @flobler said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                            One more comment: If I disconnect the heater from the hotend and try to heat it, the heater fault is being triggered after a few seconds even without a print from the SD card and without having defined the fault detection via M570 in config.g. When I try to do the same with the bed the error is not being triggered. Is there a reason why hotend and bed are behaving differently?

                            From my previous response:

                            A normal bed heater should go into the fault state with a "temperature rising more slowly than expected" error. It will take twice the dead time (as specified by M307) for the heater fault to be raised. However, if tuning has found the bed heater to have very low power so that the maximum temperature rise above ambient at full power is less than 34C, then the check is omitted.

                            Could that be the reason?

                            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

                            undefined 1 Reply Last reply 11 Aug 2021, 11:59 Reply Quote 0
                            • undefined
                              flobler @dc42
                              last edited by 11 Aug 2021, 11:59

                              @dc42 thanks for your response. I am not sure what you would classify as "normal bed heater". I am using a stock Prusa MK3 bed.

                              https://shop.prusa3d.com/en/mk3mk3smk3s/198-magnetic-heatbed-mk52-24v-assembly.html

                              I doubt this would qualify as a "very low power" heater and the maximum temperature difference at full power should be significantly higher than 34C. Am I misunderstanding maybe? Is there a way for me to find out if the tuning procedure has found it to be a low powered heater?

                              Also to double check I am understanding everything correctly:

                              1. The heater fault (when no heater is connected but the printer is trying to heat) should be triggered anytime, even wihout an ongoing print for both hotend and bed heaters?

                              2. The timout which cuts off all temperatures after the fault was triggered only kicks in if there is an ongoing print from SD?

                              Thank you!

                              undefined 1 Reply Last reply 11 Aug 2021, 12:12 Reply Quote 0
                              • undefined
                                dc42 administrators @flobler
                                last edited by dc42 8 Nov 2021, 15:35 11 Aug 2021, 12:12

                                @flobler said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                                Is there a way for me to find out if the tuning procedure has found it to be a low powered heater?

                                Yes, send M307 H0 (assuming that heater 0 is the bed heater) and tell us what parameters it reports. The product of the R and first C value is the estimated maximum temperature rise above ambient.

                                Also to double check I am understanding everything correctly:

                                1. The heater fault (when no heater is connected but the printer is trying to heat) should be triggered anytime, even wihout an ongoing print for both hotend and bed heaters?

                                Yes, unless the expected rate of temperature rise is very small, either because the estimated maximum temperature rise above toom temperature is very low (<= 34C) or the heater is already hot.

                                1. The timout which cuts off all temperatures after the fault was triggered only kicks in if there is an ongoing print from SD?

                                Correct. When printing from SD card, after a heater fault is raised, if the user doesn't reset it within the timeout period then the system performs an emergency stop. It also tries to turn off power via the PS_ON pin, as if M81 had been commanded.

                                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

                                undefined 1 Reply Last reply 11 Aug 2021, 15:10 Reply Quote 1
                                • undefined
                                  flobler @dc42
                                  last edited by 11 Aug 2021, 15:10

                                  @dc42 thanks again for the quick reply!

                                  Here is the output:

                                  Heater 0 model: heating rate 0.302, cooling time constant 72.5, dead time 10.44, max PWM 1.00, calibration voltage 24.2, mode PID
                                  Computed PID parameters: setpoint change: P56.6, I2.058, D413.7, load change: P56.6, I2.930, D413.7
                                  

                                  That does indeed indicate it is considered to be a low powered heater if I understand you correctly.

                                  What is interesting though is, that my other printer which I finished building later and which I have no tested the heater fault with (same bed is used there) has a significantly higher value for C

                                  Heater 0 model: heating rate 0.279, cooling time constant 456.0, dead time 11.53, max PWM 1.00, calibration voltage 23.6, mode PID
                                  Computed PID parameters: setpoint change: P55.5, I0.765, D447.8, load change: P55.5, I1.683, D447.8
                                  

                                  It looks like I should re-run the PID routine and re-test. I will do that and report back.

                                  undefined 1 Reply Last reply 11 Aug 2021, 19:17 Reply Quote 0
                                  • undefined
                                    dc42 administrators @flobler
                                    last edited by 11 Aug 2021, 19:17

                                    @flobler said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                                    Heater 0 model: heating rate 0.302, cooling time constant 72.5, dead time 10.44, max PWM 1.00, calibration voltage 24.2, mode PID

                                    72.5 seconds would be a very low time constant for a heated bed.

                                    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
                                      flobler @Phaedrux
                                      last edited by flobler 13 Aug 2021, 07:29

                                      @phaedrux said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                                      @flobler Ok, this may explain the issue then. The timeout will only be active when the heater is running during a print from a file on the SD card.

                                      @Phaedrux, @dc42 thank you both for the pointer, of course it worked once I triggered the heater fault during a print from SD card. I missed that bit which caused me to test the feature wrongly. Appreciate your help with this.

                                      One thing I recognized: while both heaters shut off after 10 minutes the PanelDue still shows the set temperatures as "active" and does not reset to 0 there. This might seem a bit confusing first as I only was certain that both of the heaters have actually stopped heating when I saw the temperature measurement drop.

                                      @dc42 said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                                      @flobler said in Verifying Firmware Safety Features - Duet 3 Mini 5+:

                                      Heater 0 model: heating rate 0.302, cooling time constant 72.5, dead time 10.44, max PWM 1.00, calibration voltage 24.2, mode PID

                                      72.5 seconds would be a very low time constant for a heated bed.

                                      I re-ran the PID routine and got the following results:

                                      Heater 0 model: heating rate 0.264, cooling time constant 526.4, dead time 10.00, max PWM 1.00, calibration voltage 24.2, mode PID
                                      Computed PID parameters: setpoint change: P67.6, I0.932, D473.3, load change: P67.6, I2.202, D473.3
                                      

                                      The heater fault still does not trigger. I am disconnecting the bed heater and then set the bed temperature to 80C manually (the bed is at room temperature before I set it to 80C). From my understanding the fault should trigger with the values above. Probably I am still missing something.

                                      undefined 1 Reply Last reply 13 Aug 2021, 11:42 Reply Quote 0
                                      • undefined
                                        dc42 administrators @flobler
                                        last edited by dc42 13 Aug 2021, 11:42

                                        @flobler I've just run two tests:

                                        • On my Tool changer, I disconnected the bed heater SSR, and commanded heating. A heater fault was generated after 35 seconds.
                                        • On my bench system I connected a 100K resistor in place of a thermistor and configured (non-existent) bed heater. I then set the M307 parameters that you gave in your post, and commanded heating. No heater fault was raised.

                                        So I agree, something isn't right. I will investigate why no heater fault was raised.

                                        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

                                        undefined 1 Reply Last reply 13 Aug 2021, 13:18 Reply Quote 0
                                        • undefined
                                          dc42 administrators @dc42
                                          last edited by dc42 13 Aug 2021, 13:18

                                          The reason for the failure to detect a heater fault turned out to be a mechanism that allows for noise in the temperature readings. This mechanism allows for the measured heating rate to be as low as 0.25degC/sec below the expected rate without a fault being raised. When added to the tolerance that was already allowed, it means that lack of heating is not detected on slow bed heaters.

                                          To fix this, I will increase the time over which the rate of temperature increase is measured, so that thermistor noise has less effect.

                                          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

                                          undefined 1 Reply Last reply 13 Aug 2021, 13:56 Reply Quote 1
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA