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

    Below 4°

    Scheduled Pinned Locked Moved
    General Discussion
    4
    19
    759
    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.
    • falco22undefined
      falco22
      last edited by

      Hello everyone. I am developing a multiple gel dispenser and one of the heads must cool to 4 degrees. It is designed and working properly with a peltier cell, but when I send to print the machine does not wait until the head reached 4 degrees. I read that for temperatures below 40 degrees the machine does not wait (because evidently it is prepared for temperatures above the ambient temperature, not below). Is there any way to modify it so that it does wait? Thanks

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

        @falco22 please post your config.g file so that I can better understand what we may be able to do.

        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
        • falco22undefined
          falco22
          last edited by

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • falco22undefined
            falco22
            last edited by

            config.txt

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

              @falco22 I don't know the STM board, however my expectation is that when using a cooling device instead of a heater, you will need to use the M307 I1 parameter to indicate that increasing PWM on the port reduces the temperature.

              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
              • falco22undefined
                falco22
                last edited by

                Yes, I am using M307 I1. And it works fine. I manually set the peltier to cool and it goes perfectly down to 4 degrees. The problem is when I send a print file from the CURA with a setting of 4 degrees, the print starts without waiting for the temperature to go down to 4 degrees.

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

                  Can you share a sample gcode from cura?

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • falco22undefined
                    falco22
                    last edited by

                    CFFFP_bio2.gcode

                    1 Reply Last reply Reply Quote 0
                    • falco22undefined
                      falco22
                      last edited by

                      I want to use the M116 but:

                      Note: The M116 will not wait for temperatures below 40c because in many cases they will never be reached due to ambient temperatures. So if you want to wait for the hotend or bed to cool, use 41c or higher.

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

                        @falco22 I think you could do it with conditional gcode - it certainly works for heating so I don't see any reason why it wouldn't work for cooling.

                        Something like this should work after you set the demand temperature

                        while sensors.analog[1].lastReading > 4
                        	M291 P"Waiting for dispenser to cool" S1 T4
                                echo "Dispenser temp", sensors.analog[1].lastReading
                        	G4 S4
                        

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

                        falco22undefined 2 Replies Last reply Reply Quote 2
                        • dc42undefined
                          dc42 administrators @falco22
                          last edited by

                          @falco22 I see the I1 parameter now, on heater 1 (I was looking at heater 0).

                          A solution may be for RRF to change its behaviour when the I1 parameter is given. Normally, RRF assumes that temperatures below 40C are not of interest, and ambient temperature may be as high as 40C, so do not wait for cooling below 40C. With the I1 parameter, RRF could assume that temperatures above e.g. 10C are not pf interest, so do not wait for the temperature to become greater than 10C after the cooler is turned off. Would this be sufficient? Is 10C a suitable value, or should it be lower e.g. 5C or 0C ?

                          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
                          • falco22undefined
                            falco22
                            last edited by

                            Well, the ideal would be between 0 and 4 degrees.

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

                              @falco22 ideal for you perhaps! We need to look for a solution that works for other users with cooling devices 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

                              falco22undefined 1 Reply Last reply Reply Quote 0
                              • falco22undefined
                                falco22 @dc42
                                last edited by

                                @dc42 Of course it is ideal for me. But I have seen that many people are developing bioprinting solutions, and to work with certain cells the minimum recommended temperature is 4 degrees.

                                1 Reply Last reply Reply Quote 0
                                • falco22undefined
                                  falco22 @deckingman
                                  last edited by

                                  @deckingman said in Below 4°:

                                  conditional gcode
                                  Can you explain a little more? how to apply it and where? thank you very much.

                                  1 Reply Last reply Reply Quote 0
                                  • falco22undefined
                                    falco22 @deckingman
                                    last edited by

                                    @deckingman Forget it, it worked perfect!

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

                                      @falco22 said in Below 4°:

                                      @deckingman Forget it, it worked perfect!

                                      I'm pleased that it did - I thought it might. I use that while loop myself instead of M116 although I can't take any credit, as it was someone else on these forums who advised me how to do it.

                                      In my case, I wanted a solution which would check if the hot end was at or above a threshold temperature. The problem with M116 is that if the hot end is already above that threshold, then it will wait for it to cool until it reaches the set point, which is not what I wanted to happen. Using a "while loop" gives much more flexibility IMO.

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

                                      falco22undefined 1 Reply Last reply Reply Quote 1
                                      • falco22undefined
                                        falco22 @deckingman
                                        last edited by

                                        @deckingman I find a problem with that solution. It only works for 4 degrees. Is there any way to formulate the equation to fit any temperature between room temperature and 0C? Thank you.

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

                                          @falco22 said in Below 4°:

                                          @deckingman I find a problem with that solution. It only works for 4 degrees. Is there any way to formulate the equation to fit any temperature between room temperature and 0C? Thank you.

                                          I'm not an expert on conditional gcode so someone else might have a better answer. But do you mean if the temperature is within a range from (say) 20 to 0? In which case you could use something like

                                          while {sensors.analog[1].lastReading >0} & {sensors.analog[1].lastReading <20}

                                          or do you mean a fixed temperature but one that you can define? In which case you could use a global variable that you define elsewhere - e.g. in a separate macro or config.g.

                                          so something like

                                          global dispenserTemp = nn (where "nn" is the temperature value)

                                          then the expression would become something like

                                          while sensors.analog[1].lastReading > {global.dispenserTemp}.

                                          But as I said, I'm not expert and may have got something wrong. Suggest you check out the documentation https://duet3d.dozuki.com/Wiki/GCode_Meta_Commands#main

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

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