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

      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