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

    Simple switch Run-Out Sensor too sensitive. Add timeout?

    Scheduled Pinned Locked Moved
    Firmware wishlist
    6
    20
    1.0k
    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.
    • Phaedruxundefined
      Phaedrux Moderator @felek
      last edited by

      @felek said in Simple switch Run-Out Sensor too sensitive. Add timeout?:

      What if printer is doing long travel without extrusion?

      In this case nothing would happen since it's just a simple switch checking for filament presence. The switch would still be depressed.

      Z-Bot CoreXY Build | Thingiverse Profile

      felekundefined 1 Reply Last reply Reply Quote 0
      • FBGundefined
        FBG @Phaedrux
        last edited by

        @Phaedrux understood, tomorrow i will check

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

          @FBG said in Simple switch Run-Out Sensor too sensitive. Add timeout?:

          https://reprapworld.es/products/extruder/extruder_parts/filament_detection/filament_run_out_sensor_1_75mm/

          Looks like the sensor is a spring-loaded switch. I can't see why such a sensor should be unreliable, as long as the filament path is sufficiently constrained. Maybe the switch mechanical sensitivity isn't properly adjusted? Can you provide a photo of the filament path where it passes the switch?

          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
          • felekundefined
            felek @Phaedrux
            last edited by

            @Phaedrux I get it, but I think a bit different.

            Let's look an example:

            • printing some part
            • switch is depressed
            • printer is doing long travel > 2s (no extrusion)
            • in this time we check switch (interval 500ms/1s) and is depressed
              so, we pause the printer

            In scenario when we check extrusion length there is no problem, because while traveling we don't have extrusion.
            That is my idea 🙂

            FBGundefined 1 Reply Last reply Reply Quote 0
            • T3P3Tonyundefined
              T3P3Tony administrators
              last edited by

              @felek are you using a switch to detect filament presence/no presence or something more complicated for movement? because if just presence then there is no reason for the switch state to change if its extruding or not.

              www.duet3d.com

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

                My guess is that the switch only triggers when the filament is under tension. But is that intentional in the design of the filament sensor, or due to poor manufacturing or poor adjustment?

                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
                • felekundefined
                  felek @T3P3Tony
                  last edited by

                  @T3P3Tony I'll try to explain my story.

                  I bought Dyze design sensor (https://dyzedesign.com/shop/filament-detector/sentinel/)
                  which looks pretty solid and it is simple on/off presence sensor.

                  I tested many materials from different suppliers, as you can image sometimes quality of filament is quite low (I mean filament diameter).

                  I had big trouble with this sensor, because it is optical sensor and sometimes when diameter is a bit smaller than reference sensor change the state. I checked it on oscilloscope.

                  In this case SimpleFilamentMonitor doesn't work well. So I decided to rewrite this code in order to set flag when filament is depressed. It is a simple filter which remove noises from sensor. I also added parameter to help adjust filter length (extrusion length).

                  I hope this image help to understand what I mean. It really helps when someone uses cheap filament sensor or low quality filament.
                  673f8f7c-c4cc-4a43-b359-401907d75b3f-image.png

                  1 Reply Last reply Reply Quote 0
                  • FBGundefined
                    FBG @felek
                    last edited by

                    @felek @Phaedrux
                    Still i don't write ok the trigger2.g file...
                    If i write that wait and after check, check after some miliseconds but again start the file trigger2.g... Is a loop..
                    Could you give me the exact lines that you think that i must add...?

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

                      @FBG What exactly do you have right now?

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 0
                      • FBGundefined
                        FBG
                        last edited by

                        In config.g:
                        M950 J1 C"e0_stop" ; Filament RunOut Sensor E0
                        M581 T2 P1 S1 R1 ; Call trigger2.g

                        In trigger2.g
                        G4 S1 :Wait 1 second
                        And now...What?

                        1 Reply Last reply Reply Quote 0
                        • FBGundefined
                          FBG
                          last edited by

                          If in trigger2.g i write:
                          G4 S1
                          M582 T2

                          Starting a loop....

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