Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spool ID is not correct because there is a filament ID #7

Open
MrTomek opened this issue Oct 23, 2024 · 4 comments
Open

Spool ID is not correct because there is a filament ID #7

MrTomek opened this issue Oct 23, 2024 · 4 comments

Comments

@MrTomek
Copy link
Contributor

MrTomek commented Oct 23, 2024

Great job @bofh69 Simple and useful project until I implement spoolman for Orca.(SoftFever/OrcaSlicer#2955) (SoftFever/OrcaSlicer#4771).

Back on topic, the templates load the ID of the filament, not the spool, which can cause a problem if someone has several spools for one filament, then the IDs are not the same and it becomes a problem.

PS. I have a feeling that it can be done a little differently, looking at this importer. By loading all the spools, and then filtering them so that only one spool (the one with the least amount of filament) of each type of filament is loaded. I'm just throwing this idea out there like this, because it's just a preliminary idea and has a few problems to solve in order to implement it well

@bofh69
Copy link
Owner

bofh69 commented Oct 24, 2024

It is intentionally that it uses the filament's ID. The filament's gcode in the slicer sets the wanted filament type and when the print starts to use that filament, it will pause the print and wait for a spool change if the wrong filament is loaded, but any spool will do.

I update the actual loaded spool in klipper/moonraker by another program, github.com/bofh69/nfc2klipper, but it can also be set in mainsail etc when the spool is changed.

I guess I could add a mode to generate filaments per spool instead, but then you would get into trouble if you do multicolor prints and use up the last filament on a spool.

@scottessner
Copy link

@MrTomek I think the answer you seek is in bofh69's other tool nfc2klipper that he mentions. He has a macro in that repo called ASSERT_ACTIVE_FILAMENT that checks that the filament ID in this template matches the filament ID for the active spool in klipper.

@bofh69 That macro is quite clever and very valuable. It would be helpful if it were more prominently highlighted in this repo as this tool depends on it to function as designed.

@bofh69
Copy link
Owner

bofh69 commented Jan 30, 2025

@scottessner good idea! I'll add it to the readme.

@bofh69
Copy link
Owner

bofh69 commented Feb 2, 2025

I've make a program, spool2klipper, that can be used to set the active filament when the spool id is changed in moonraker. Even if using nfc2klipper, its useful if the tag doesn't work for some reason and you change the spool in the frontend etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants