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

    Filament runout switch delayed pause after tripped

    Scheduled Pinned Locked Moved
    Firmware wishlist
    3
    4
    348
    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.
    • cooknadamundefined
      cooknadam
      last edited by

      Hi All,

      I am currently working on redesigning my printer and have added a filament runout sensor. I have a simple switch type sensor placed close to the filament spool so whenever the filament sensor gets tripped I have a specific length(~750mm) of filament left between the extruder(Direct Drive) and the filament runout switch.

      I was wondering if there is a simple way to configure the system to allow the printer to continue to print that remaining 750mm of filament after the filament runout sensor has been tripped.

      This isn't an issue necessarily but it would be nice to be able to use that last bit of filament left between the sensor and extruder. I could probably get a few more layers out of a large print with that amount of filament.

      I could move the sensor closer to the extruder but that would mean significant redesign/rewiring on my end which isn't necessarily worth it for me to get that extra bit out of the filament roll. I could also bypass my sensor and resume my print then pause once its close to the extruder but that would not be ideal either.

      I understand that this isn't crucial so if the fix is complicated/cumbersome then I wouldn't worry about it.

      I am running my printer on a Duet 2 Wi-Fi

      Please let me know if this has already been asked and/or solved, I've tried to look into this but I haven't been able to find anything, maybe my search terms are off.

      Thank you for your time!

      T3P3Tonyundefined Argoundefined 2 Replies Last reply Reply Quote 0
      • T3P3Tonyundefined
        T3P3Tony administrators @cooknadam
        last edited by

        @cooknadam I have moved this to the firmware wishlist for now as there is no built in way to have a delay.

        Thinking about it a bit more you might be able to set the switch up as a trigger (as opposed to a specific filament monitor switch) then have the triggerN.g macro start counting the extruder movement from when it is triggered (using conditional gcode, the object model and a variable to store the count), then pause the print when the count = 750mm. That said it would require some testing to see if the extruder movement could be reliably extracted from the object model...

        www.duet3d.com

        1 Reply Last reply Reply Quote 0
        • Argoundefined
          Argo @cooknadam
          last edited by Argo

          @cooknadam

          Maybe something like this?

          if sensors.gpIn[4].value == 0
          	var triggerheight = move.extruders[0].position + 200 - move.axes[2].machinePosition
          	set var.triggerheight = move.extruders[0].position + 200 - move.axes[2].machinePosition
          	while move.extruders[0].position < var.triggerheight 
          		if sensors.gpIn[4].value == 1
          			break
          	if sensors.gpIn[4].value == 0
          		M226     ; calls pause.g
          

          Needs some testing though.

          cooknadamundefined 1 Reply Last reply Reply Quote 1
          • cooknadamundefined
            cooknadam @Argo
            last edited by

            @argo Thank you for the thoughtful response! I'm sorry for my lack of knowledge, I'm not a programmer so I am relatively clueless with this, but where exactly would I insert this code, does it go into the firmware?

            I'm also confused about what is happening with the code itself, if you would like to maybe explain it/ comment the lines I would appreciate it but don't feel obligated to do so.

            I would be willing to test it out once I get my printer back up and running but that may not be for a couple weeks.

            Thanks again!

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