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

    Adding a flow switch to a water cooled hot end

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    3
    6
    241
    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.
    • Dradleundefined
      Dradle
      last edited by Dradle

      I am running a dyze designs water cooled hot end and I decided to buy a flow switch so I could code the printer to if for some reason the pump fails. I have the water cooled system done entirely independent so if something there fails, the duet would unsuspectingly run the printer to destruction I assume. Possible destroyed printer, potential house fire.. Not my thing so for piece of mind, I got a flow switch.
      Repinned the connector when it showed up and it plugged right into the duet board. Awesome. I am noticing that it might be just barely too big for my pump though because im getting major switch bounce. It seems like im picking up the pulses from the pump.
      I tried wiring in a small capacitor in an effort to "charge and maintain" the signal but it didn't quite seem to work like I figured. Turns out my switch isn't really a on off switch as I thought. The switch produces a alternating current and I guess the board is supposed to interpret the pulses as flow? Is this something I can use for this application?

      cosmowaveundefined OwenDundefined 2 Replies Last reply Reply Quote 0
      • cosmowaveundefined
        cosmowave @Dradle
        last edited by

        @Dradle
        You can check with daemon.g if the signal is still alternating.
        Daemon.g is run every 10sec. That should be fast enough for a watercooled system.

        Mankati FSXT+, DeltaTowerV2, E3D MS/TC

        1 Reply Last reply Reply Quote 0
        • OwenDundefined
          OwenD @Dradle
          last edited by

          @Dradle
          You don't give details of exactly what you're using
          If it's a switch the it would normally just stay open when the flow is over the trigger value. This type normally has an adjustment screw to set the trigger point.
          These are normally a rectangular block.

          If it's a flow sensor with a paddle wheel (more common) then it will give a PWM signal, which would appear as a square wave. This type is typically round in the middle.
          On my duet 2 the setup is as follows

          ;water pump
          M950 F1 C"!fan1+^exp.e4stop" Q25000                             ; create fan 1 (water pump) output on inverted pin fan1 and set its frequency.  Set RPM/PWM to pb6 with pullup enabled
          M106 P1 C"Water Pump" H1 L0.5 X1 B1.2  T50:60                       ; set fan 1 name and value. Thermostatic control is turned on.  Monitoring hotend sensor
          

          I then monitor the pump in daemon.g with sing the object model

          Dradleundefined 1 Reply Last reply Reply Quote 0
          • Dradleundefined
            Dradle @OwenD
            last edited by Dradle

            @OwenD it's not a on off switch that I described first. It is the square wave pulse type. When im adding code like this to the config.g is there a certain place it belongs?
            I've only been changing existing code to fit my needs I haven't really successfully added my own code yet.
            I didn't run my pump from from my duet because my input voltage is 24v to duet and my fan and water pump were 12v so it's wired live all the time to a 12v converter.
            I really want the flow sensor to pause the program if theres no pulse signal and shut down my hot end in the event of lost coolant and/or pump failure.

            Dradleundefined OwenDundefined 2 Replies Last reply Reply Quote 0
            • Dradleundefined
              Dradle @Dradle
              last edited by

              Shooting around here
              With what im trying to achieve described
              M950 J1 C"^e0stop"; that would from my understanding turn my e0stop to a general purpose input pin using a pull up resistor which from a quick google search which creates a signal from the lack of input signal. Am I on the right track with that?

              1 Reply Last reply Reply Quote 0
              • OwenDundefined
                OwenD @Dradle
                last edited by

                @Dradle
                My system is also 24v
                I have a separate 12v power supply which runs the pump and some other 12v gear.
                The pump I use is similar to this
                It has a PWM output on both the pump and cooling fan.
                In my setup I am using a fan output to control a the pump (which to the duet is just a thermostatically controlled fan). The setup to do so using 12v on a 24v system is here
                I have fitted an inline temperature sensor to the hoses and control the radiator fan the same way as a thermo fan because it's not needed all the time and adds noise.
                And finally I am about to add flow switch on the return line near the radiator to ensure that if a hose comes off, I can shut off the pump.
                Because I have set up both the water pump and radiator fan as fans, I can monitor them in DWC
                pump.gif.gif
                and using the object model
                om.gif.gif

                So to answer your question on the setup

                In my M950 F1 C"!fan1+^exp.e4stop" Q25000 I am using fan1 to turn on/off the pump and exp.e4stop to monitor the RPM of the pump impeller
                If you're not controlling the pump from the Duet, omit the fan1
                So you were close, but the input doesn't create a signal from lack of input. It just reports RPM (signal frequency).
                It's up to you to interpret and take action based on that.
                If you want a simple yes/no is it working? then use a switch, not a a flow sensor.
                You could then set up a trigger macro and not worry about daemon.g

                In my daemon.g I monitor the pump RPM using the object model and shut down if

                • The pump RPM is low and the hotend > 45C
                • The radiator fan RPM is < limit
                • The pump is on, but the flow return switch isn't active
                1 Reply Last reply Reply Quote 0
                • First post
                  Last post
                Unless otherwise noted, all forum content is licensed under CC-BY-SA