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

    Feature Request: Track filament usage per spool in software

    Scheduled Pinned Locked Moved
    Duet Web Control
    6
    9
    678
    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.
    • andreas3Dyundefined
      andreas3Dy
      last edited by

      Hello there!
      In 2018 there was a discussion about it:
      https://forum.duet3d.com/topic/7133/filament-remaining-sensor
      Here is an example from that topic:
      https://plugins.octoprint.org/plugins/filamentmanager/

      The goal is to have a rough estimate by counting the used filament.

      1 Reply Last reply Reply Quote 1
      • ahmetipkinundefined
        ahmetipkin
        last edited by ahmetipkin

        I think this would be a great addition. Companies like colorFabb specify the 'length' of the filament they sell so basically a counter that 'adds' every extruder move and provides this data in object model would work I believe. What do you think @dc42 ? 🙂

        1 Reply Last reply Reply Quote 0
        • Coltenundefined
          Colten
          last edited by

          This has been requested many times. I even went so far as to provide a patch. while not perfect, it did work. Filament has to be counted "per filament type". While useful, this is not as useful as counting per filament roll.

          mitchundefined 1 Reply Last reply Reply Quote 0
          • mitchundefined
            mitch @Colten
            last edited by mitch

            @Colten couldn't you create a filament "type" per roll/color. ? Then you could use the M701 commands to switch between rolls+types and track usage per spindle.

            Ideally you could tie the slicer into it by having the slicer G-code issue the correct M701 S"PETG-Prusa-Orange" command based on the selected filament in the slicer. Then you could just choose the filament from the slicer, send, and print.

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

              The complicated part is defining exactly how this should work. Some of the issues are:

              • How exactly should it interact with the existing filament management system? For example, should it work at all if you do not use the filament management system?
              • Should it track offline spools as well as whatever spools are currently loaded?
              • How will you tell it that you have started a new spool? Or that you have loaded a part-used spool?
              • How often should it update the usage data on the SD card? If it updates it too often, it will wear out the SD card too quickly.

              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

              mitchundefined andreas3Dyundefined 2 Replies Last reply Reply Quote 0
              • mitchundefined
                mitch @dc42
                last edited by

                @dc42 I wonder if this would be better running on an external device like a Rpi or a docker container on a server? I know the duet products are moving towards a plugin architecture with the pi.

                We would just need the appropriate APIs into the duet boards to be notified on print events and filament changes. This would relieve the duet and DWC from all of the user interface overhead.

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

                  It would be easier to implement on a Pi attached to a Duet, however I don't want to rule it out from implementation on a standalone Duet.

                  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
                  • BoAundefined
                    BoA
                    last edited by

                    I think that viable solution would be to use NFC tags and a spool holder with reader. With new spool just put a nfc sticker (can be bought easily) and set a filament length when spool used for a first time.

                    Then each time spool in put on spoolholder read the tag, and update legth when print finished/tool change/ etc

                    Easy to implement - nfc readers are available with many intercaes, tags can be bought without problems.

                    1 Reply Last reply Reply Quote 3
                    • andreas3Dyundefined
                      andreas3Dy @dc42
                      last edited by andreas3Dy

                      @dc42 said in Feature Request: Track filament usage per spool in software:

                      The complicated part is defining exactly how this should work. Some of the issues are:

                      • How exactly should it interact with the existing filament management system? For example, should it work at all if you do not use the filament management system?
                      • Should it track offline spools as well as whatever spools are currently loaded?
                      • How will you tell it that you have started a new spool? Or that you have loaded a part-used spool?
                      • How often should it update the usage data on the SD card? If it updates it too often, it will wear out the SD card too quickly.

                      It could work as a very simple plugin for DWC.
                      It should not interact with anything except the filament usage data of a running print job.

                      Users can add multiple counters. One per spool.
                      A counter is defined by some name + length of a full spool.
                      Once enabled it monitors filament usage until a pending print job needs more filament.
                      A warning should be shown in this case.
                      The SD card write frequency should be user defined.

                      It is for manual use. If you forget to change the counter you have to start from scratch and correct the counter values on sd card manually.

                      The analogy of a stop watch is quite helpful.

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