GithubHelp home page GithubHelp logo

Comments (7)

pedrolamas avatar pedrolamas commented on September 24, 2024

Hi @PhilBaz thank you for opening this Feature Request.

A simple comment at the end of each layer saying how much cumulative filament has been used. The comment should be unique so it is searchable.

This is not something that is currently possible. Unfortunately, Cura does not provide any data like that to the processing script (in fact, it doesn't even provide the layer info, but the script can still infer that from the Cura injected comments).

from klipper-preprocessor.

PhilBaz avatar PhilBaz commented on September 24, 2024

@pedrolamas

Thank you Pedro. Hopefully Cura will include this info at some point.

In terms of the layer number. Since it is being used to drive pause @ layer. Would it be possible to have the option to inject the layer change at the infill section of the layer? I know Cura also includes comments as to inner wall, outer wall, skin, infill.

Since pause often leaves artifacts on external surfaces, having the option to place the layer change (ultimately driving the pause) at the infill portion of the layer would be ideal.

Thanks again for your work Pedro.

from klipper-preprocessor.

pedrolamas avatar pedrolamas commented on September 24, 2024

Yes, it is possible (at least for Cura, can't say for others!), but that will require changes not only on this script, but also on Klipper, and Mainsail & Fluidd.

For Klipper, we would need a new parameter on SET_PRINT_STATS to pass the section type and then Klipper would store that and pass it on the status object (as it currently does for the total layer count and current layer index).

For this script, to inject a new SET_PRINT_STATS command when a new section starts.

For Mainsail & Fluidd, changes on these interfaces to make use of this new value.

from klipper-preprocessor.

PhilBaz avatar PhilBaz commented on September 24, 2024

@pedrolamas

I mentioned this idea first to the Mainsail dev team. They said they would integrate this type of function if it was possible to identify the correct location. Ill link this thread in the discussion if you don't mind?

from klipper-preprocessor.

PhilBaz avatar PhilBaz commented on September 24, 2024

Hi Pedro,

I made a post on the Klipper forum in hopes that Kevin O'Conner will consider implementing the parameter you proposed that would allow for pause at infill.

Here is the post. If I have not described it properly can you please let me know if I should change anything. Thanks.

https://klipper.discourse.group/t/fr-new-parameter-on-set-print-stats-for-section-type-infill-wall-skin-etc/6943

from klipper-preprocessor.

theophile avatar theophile commented on September 24, 2024

Came here from the Discourse thread. I'm a SuperSlicer/PrusaSlicer user, but if I'm understanding this request properly, I think the desired functionality is achievable. I'm currently fine tuning a perl script that is designed to minimize wasted filament at material changes by rearranging the sequence in which "features" are printed around toolchanges, so that "invisible" features (e.g. infill and supports) are grouped together and printed after the toolchange. The script also calculates the sum total of filament that will be extruded during these "invisible" features and passes that value to the toolchange macro, which then deducts that amount from the "purge" volume that would otherwise be used.

I think you could do something similar with perl, python, or really any scripting language. It could read the gcode file down and parse all G1 commands to get the "E" value, then add that to the running total. At each layer change (or whenever you want) could have it insert a comment/macro/whatever that prints the current cumulative total. You could even have two totals running at the same time so you could track total filament used since print_start separately from total filament used this layer.

If you wanted to be really fancy you could read the gcode file into an array/list, have it sum up the total filament used for each layer, and then insert info at the desired locations to report total filament used since print start, used this layer, used next layer, used between now and print_end, etc.

from klipper-preprocessor.

PhilBaz avatar PhilBaz commented on September 24, 2024

@theophile

Hi

I'm not a programmer my self. But I know the different feature types are given the the gcode of Cura as comments. Perhaps I can send you a sliced file to see if the script you are developing for Prusa/SS might also accommodate Cura as well?

Both the running filament count and pause @ inflll would be very useful for myself and I'm sure many many other Cura users.

from klipper-preprocessor.

Related Issues (10)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.