34 Replies Latest reply on Jun 19, 2017 2:10 PM by balearicdynamics

    ReFILL-ament for 3D Printers

    abhijitnathwani

      Hello everyone,

       

      I have been working on a project that all of the 3D printer enthusiasts would definitely like! We often face trouble forgetting to place the order once our filament is coming to an end. Well, no more!

       

      The Concept

      ReFILL-ament is special Amazon DRS enabled device, that helps you calculate the usage of the filament for 3D printers, and re-orders itself when the filament is about to run out.

      All the 3D printers print the object using the filament, melting it and shaping it up as per the required specification. The filament is like the ink refill of our pen. Without refill ink, we cannot write and without the filament, we cannot print 3D objects.

      So what happens, when we have thought of an idea! Prepared a 3D model for the same after many iterations, and we are eager to print it visualize our imagination. Until you realize that you don't have enough filament to print the object! That actually kills the imagination and the enthusiasm in us. So to avoid that embarrassing moment, ReFILL-ament takes care of your usage, and orders on your behalf, so that you never run out of filament and the new one arrives before the old runs out!

      The basic idea is to create a completely standalone device that orders the filament on the preferences chosen earlier while configuring. The device would be packed in 3D printed enclosure so that it is easy to maintain it. Being USB-powered, there will be less of hassles!

      ReFILL-ament reads the RFID card attached to the filament to identify which filament is currently under use. It also as an IR Array on the reverse. So, the design on the RFID card is made such a way that it cuts 3 IR in sequence. A combination of RFID information and a complete IR sequence helps the device to count the number of turns, and eventually estimate the remaining filament on the reel.

       

       

       

      ReFILL-ament Setup with 3D-Printer

      Following video shows the setup of ReFILL-ament with your 3D-Printer and register your ReFILL-ament device with Amazon DRS by the product registration web page.

       

      ReFILL-ament in Action

      Following video shows how ReFILL-ament tracks usage of maximum three filament reel and place order on Amazon on your behalf when the quantity of any of three filaments is less than 30% using filament reel preference (ABS/PLA and Color) for each filament reel selected during ReFILL-ament Product registration process with Amazon DRS.

      (NOTE: In this video 1 unwound is considered 1% usage just for demo purpose, in real use based on length/number of wounds of filament this percentage use can be set to actual)

       

      What is unique in ReFILL-ament?

      • Stand Alone device works with any 3D-Printer without even touch 3D-Printer.
      • Track usage of 3 filament spool and can be used to track more spools with little modification in the code.
      • USB powered device with Support of most of Amazon DRS API by ESP8266.
      • A meaningful status display on OLED Display.
      • if Internet connectivity not available then also tracks filament usage.
      • The Same project can be used for track any kind of spool usage and reorder the same. So it's not only applicable to 3D-Printer.
      • Low cost and easy Hardware design with easily available components makes this project really DIY so someone can easily replicate (Low-cost ESP8266 SoC, Low-cost sensors)
      • All current information (i.e. Filament UsageTokens, AP Credential, Slot Status) stored in EEPROM of ESP8266 every time it changes. So on every power cycleRefillament retains the latest information.
      • All Amazon DRS APIs implemented for ESP8266 SoC, Just Authorization Code generation done at Product Registration Webpage. So it will be easy for makers to implement the similar project without much knowledge of scripting...
      • Hardware Schematic, ESP8266 Firmware, and Product Registration web page source code all released in open source domain under CC-BY-SA license. So anyone can use this work or contribute.
      • Main philosophy used in this project is "Keep it As Simple As Possible" and "Put First Thing First" at the same time also considered end user aesthetics and ergonomics.

       

      IMG-20161220-WA0010.jpgIMG_20161223_025110.jpg

      IMG_20170218_150955.jpgIMG_20170218_123505.jpg

      For more documentation visit here: https://www.hackster.io/abhijit-nathwani/refill-ament-for-3d-printers-261881

       

      I would love to hear views from the community on the same.

       

      Regards,

      Abhijit Nathwani

        • Re: ReFILL-ament for 3D Printers
          ravi butani

          Truly Amazing... Thanks for sharing... Specially liked to see this video...

          • Re: ReFILL-ament for 3D Printers
            ipv1

            Cool project and nice presentation.

            • Re: ReFILL-ament for 3D Printers
              Frederick Vandenbosch

              Interesting project!

               

              How does it take into account that the amount of filament per rotation gradually decreases as more filament is used, and how many rotations do you assume per spool?

              • Re: ReFILL-ament for 3D Printers
                balearicdynamics

                Hey Abhijit, thank you for sharing this great project. Well thought and well organised. I really like it.

                I have a question; how do you take in account that every rotation the amount of filament decreases in different percentage due the variable diameter of the roll as it consumes and the diameter changes? From 100% to 30% the difference is meaningful.

                 

                Enrico

                  • Re: ReFILL-ament for 3D Printers
                    ravi butani

                    Hii Abhijit...

                    Here my limited knowledge of math resulted in following solution for measure precise % filament usage..

                    IMG_20170221_194418.jpgIMG_20170221_194443.jpg

                    2 of 2 people found this helpful
                    • Re: ReFILL-ament for 3D Printers
                      abhijitnathwani

                      Thank you balearicdynamics for the appreciation.

                      Your solution for adding a 'k' correction factor can be thought of. The only problem there would be to address the wide range of filament spools available in the market! It would be tedious to calc k for them all.

                      What ravi_butani suggested in the comments below looks promising! We could try that out.

                       

                      Abhijit

                        • Re: ReFILL-ament for 3D Printers
                          balearicdynamics

                          Hello Abhijt !

                          Sure, Ravi is risht and also the flow sounds correc. As far as I know, this can be used for the calculation. So, if this can be used maybe better IMHO to setup an easy calculation program (maybe Excel or open OO Sheets (the same) used to create a self-calculatingtable. On the market usually I find two diameters filaments (or three in some special cases), like 3 mm and 1.75. Rolls have three dimensions in the most of the cases, but as this is connected to Amazon it is not difficult to find how the diameters are the same for almost all.

                           

                          In a similar project (not related to self ordering on Amazon, this is the real value added of your idea) I have explored the "geometrical approach" to detect the filament status but it is not reliable 100% because filament is sold in weight instead of meters. The XYZ 3D printers adopted the too complex method of an eeprom inside every spool and as a matter of fact I experienced a while with these devices and discovered that 15-20% of the filament is lost if you just trust on this sensor information.

                           

                          Enrico

                          1 of 1 people found this helpful
                      • Re: ReFILL-ament for 3D Printers
                        sourgin

                        Hi, I'm new here and this is my first post read, as this also is my first reply.

                         

                        First of all if you have a new value for a trigger to chagne the configuration of the filament, so it records manually the first time when it's empty and use that as a base for the calculus? It will be, by a rute 66 lenght shorter to write, and easy for the user.

                        Something like, ir1 read, ir2 noread, ir3 read will trigger "Store new rte count" so you now know how many revolutions where needed till the filament was consumed.

                         

                        In addition other way to do it, is the ye old way, a database that stores the data and users can contribute to it, So you have software updates :3 Evewyone loves a software update. And you have a file wich stores a keyword for the filament and it's rte (revolutions to end) values.

                         

                        So lets imagine that u have to program the arduino first, so you look at the database and select wich filaments are you going to use "I don't have a 3dprinter... for now :#" so I imagine that people don't switch filaments that fast "As per brand/model"

                         

                        So you can have something like this on the arduino code.

                        filamentBase.c

                         

                        #define brand-type-weight rte;

                        #define code number

                         

                        By this method, you can also made a change on the industry making the filamenters write down how many revolutions to the end of the filament where stored on a bobin. That would made them easy to control. And for the factory is easy to record, as they already have that value.

                        1 of 1 people found this helpful
                          • Re: ReFILL-ament for 3D Printers
                            balearicdynamics

                            The problem is that for obvious commercial reasons filament is almost universally sold in Kg, machines making rolls check the weight, not all the rolls have the internal diameter and it will cost too much to setup the filament winding machines for internal diameter  of the support (that changes meaningfully the number of rotations.

                            Then, remain anyway the problem that first rotations corresponds to an higher amount of filament than the last.

                             

                            Beside these reasonably issues there is another problem on top of the project; Usrrs that need to know really when their filament is about to finish can be classified with the following parameters:

                            • Almost expert using 3D printing
                            • Frequently users
                            • Frequent changes of filament due needs of creations of different colours
                            • Have acquired sufficient experience to be able to see with a good precision if the next object can be printed with the amount of filament remaining in the roll
                            • Rarely remain out of filament especially while making a project

                            Enrico

                            1 of 1 people found this helpful
                              • Re: ReFILL-ament for 3D Printers
                                balearicdynamics

                                So the solution is outside. I will add: this project remain a very good project and really well done, my respect to the author. But unfortunately I think it does not solve the problem or at least not the problem at all in all manifest conditions.

                                 

                                Enrico

                                  • Re: ReFILL-ament for 3D Printers
                                    abhijitnathwani

                                    Hello balearicdynamics

                                     

                                    The purpose of putting this project here was to get a second opinion on the ideas that I have worked on. The filament count issue was one of the issues I faced during designing this. Thanks to the community that beautiful insights and suggestions were given for this.

                                     

                                    Abhijit.

                                    1 of 1 people found this helpful
                                      • Re: ReFILL-ament for 3D Printers
                                        balearicdynamics

                                        Hello Abhijit,

                                         

                                        I took a look to the original project you published on hackster.io There are lot of interesting videosl did you also shared the software together with the circuit schematics? Just for curiosity as you published it under a CC license.

                                         

                                        Instead. the idea for monitoring soounds interesting as well as the auto mated order. IMHO this is just adaptable for demonstration purposes as depending on the country it is not so obvious that users will buy from Amazon for sure. Also in this case the offer of different filaments is wide on Amazon and constantly updated. Every time I need to order new filament I make a screening on Amazon of the last updates in filaments, quality, pricing etc. The ordering side I think will work fine for small 3D printing companies that has a large consumption of filament and more than one 3D printer. If they buy from Amazon. Just to cite my experience, sometimes I buy from Amazon as I need almost urgently a certain filament while for almost large amounts (I mean 10+ rolls in different colors) I prefer to buy them by Geeetech; they provide my 3D printers and it's their interest to sell goos quality of filament, at a competitive price than Amazon. But this is just a persona opinion.

                                         

                                        The very important point instead is the tool you created to keep a constant monitoring of the filament usage. BTW, I appreciated very much your citation of ravi_butani for the suggested math calculation. Analysing in depth what I see as a limit in your project is the condition to use only one filament roll at a time on the printer. What if I stop changing color? Do I loose the previous calculation or there is a way to backup it somewhere so when I start with a not new filament roll the calculation remains valid?

                                         

                                        Enrico

                                          • Re: ReFILL-ament for 3D Printers
                                            abhijitnathwani

                                            Hello balearicdynamics,

                                             

                                            I'm glad you like the videos on my original documentation.

                                             

                                            Agreed, the solution works currently with Amazon as they have this Dash Replenishment API available. Over the time, let's hope other vendors also make ordering through such a framework possible so that we can use the "internet" more effeciently.

                                             

                                            I definitely had to give credits to ravi_butani for his work. The community grow better this way! About losing your filament count, I'm currently keeping track of 3 types of filaments identified by the RFID tag. The value of the last count is updated and stored in the EEPROM of the ESP8266. So even if we change the filament from A to B, the last remaining count of A is stored even on power down and it again starts from the same value on shifting again from B to A(as a change in RFID is detected).

                                             

                                            Abhijit.

                                      • Re: ReFILL-ament for 3D Printers
                                        sourgin

                                        That's why I said that this could change how filaments are produced, adding this on industrial scale is like 1cent X bobine, and could tag your company as friendly to the user, providing the number of revolutions needed to end a bobine. I will ask my grandma about this, she was a filament maker back in the past, as she was also worked on a fabric industry.

                                          • Re: ReFILL-ament for 3D Printers
                                            balearicdynamics

                                            David,

                                            without making a new industrial revolution I think there is a better and useful solution. Without waiting that producers move one step.

                                              • Re: ReFILL-ament for 3D Printers
                                                sourgin

                                                How much did it cost to the OP develop this idea? You believe that something like this on industrial scale would be that costy?

                                                 

                                                A internal counter for the revolutions on each bobine-creator machine.

                                                A laser mounted that writes the numbers on one side of the same.

                                                 

                                                As I said, this would cost the company that produces it 1 cent or less per bobine.

                                                 

                                                Saying "Hey client, this bobine has a mark that let u know how many revolutions you need to end the bobine" would be a good reason for me to chose one brand for another. As they invest in us, the clients.

                                                 

                                                That put aside, No one comented the first part of my idea. The second is like going 1 by 1 talking with filament makers and telling them that this would be a good idea.

                                          • Re: ReFILL-ament for 3D Printers
                                            abhijitnathwani

                                            Hello sourgin,

                                             

                                            Thank you for your suggestions. These could be definitely looked upon.  I liked the idea where we could integrate the count in bobbin itself. Software updates also sound cool!

                                             

                                            Abhijit

                                            1 of 1 people found this helpful
                                          • Re: ReFILL-ament for 3D Printers
                                            balearicdynamics

                                            Despite the notes on math calculation of ravi_butani are good and correct I think that the direct approach to metering calculations is too tricky and not so reliable. My fundamental approach to problems is always not to change the world but change the problem approach to find the solution.

                                             

                                            Based on the information we have there are some assumptions we can formulate for first:

                                             

                                            1. For obvious reasons of easy pricing and the kind of material 3D printing filament is sold and managed at source on a weight based.
                                            2. 3D printers - especially the slicers algorithms - calculates the printing time based on the - average - Extruder speed integrated with the filament diameter, the nozzle size and the layer thickness
                                            3. Depending on the material we use it has different performances; I mean same weight (the reason filament is sold by weight) correspond to different metering of the roll
                                            4. We know (producer provided) the specific weight of the materials, e.g. PLA and AS have different specific weight so one meter of PLA has different weight of one meter of ABS.
                                            5. Keep the entire project costs cheap
                                            6. Do not ask for external - global - changes. Our starting point is the problem, not the solution

                                             

                                            I am working on the solution and it is working fine and can solve also another problem together.

                                             

                                            Enrico

                                            • Re: ReFILL-ament for 3D Printers
                                              atillad

                                              thats a awesome idea lol i would likely drive my self broke if i got something like that.

                                              1 of 1 people found this helpful
                                              • Re: ReFILL-ament for 3D Printers
                                                carmelito

                                                Awesome, this is great idea, and really well presented..

                                                1 of 1 people found this helpful
                                                • Re: ReFILL-ament for 3D Printers
                                                  ravi butani

                                                  nice too see this project featured on element14 community main page... many congratulations...

                                                  1 of 1 people found this helpful
                                                  • Re: ReFILL-ament for 3D Printers
                                                    balearicdynamics

                                                    The 3D printer dynamic filament monitor. Blog post at http://balearicdynamics.com/?p=604&preview=true

                                                    Soon the project on Element14.

                                                    Enrico

                                                    0-weu-d2-109988f4f6e72e89ce523fa5a477e91c.jpg

                                                    2 of 2 people found this helpful
                                                    • Re: ReFILL-ament for 3D Printers
                                                      balearicdynamics

                                                      ... and here is how it works. Videos will coming soon with the project on Element14

                                                       

                                                      Filament monitor for Arduino – Balearic Dynamics

                                                       

                                                      Enrico

                                                      1 of 1 people found this helpful