Open alexr10 opened 4 months ago
Does it make sense to use it in Klipper? In which way? The print parameters will be defined in the Slicer not in Klipper / printer firmware. The only way I see is, to to validate the slicer gcode by matching the values against the filament values, for example if the extruder temperature with the filament range. 🤔
I would like to have one generic Slicer Profile and get all the filament parameters from Spoolman.
I already did something similar a few months back. I had one generic slicer profile and set the filament parameters with Gcode macros as variables. When a print got started the parameters have been read from the variables and set accordingly. This solutions worked without issues, but it scaled really bad.
Furthermore there are some parameters, that are Klipper specific and are only set in firmware (Pressure Advance, ...)
But if you have multiple different printers, the Klipper specific values (Pressure Advance,...) are different. So you have to store these values printer specific. This is not the main focus of Spoolman, I think. 🤔
I understand what you want to say.
But the functionality would also be useful for other Filament specific values:
In my opinion it would be nice to have the functionality to get more data (other than spool usage), when an filament change was done
Yes, I would like to have filament values from vendor in the filament settings, like Extruder and Hotbed temperature ranges, print speeds, density, vicat temperature, cooling settings, in the filament dataset. But how should they are usable? I see to functions:
You could put placeholders in the slicer software for certain values during slicing and get the real values during printing from klipper.
Hi @alexr10, i stumbled upon your discussion and think this might help in your case.
In this feature request i link to other PRs and discussions that all go back to what you are asking for i think.
mmu_slots
.If you are using OrcaSlicer you will soon be able to pull the filaments from Spoolman into the slicer directly with their associated attributes (PA, factor, temps ...) this feature leverages the extra
fields capability added to spoolman.
I'm currently not storing others attributes in spoolman db but this should be doable through this mechanism.
I'm working on moving my moonraker's spoolman addon modifications to the mmu_server addon as it makes more sense for now.
I've written a script that generates Orca Slicer (and SuperSlicer) config files from Spoolman data: https://github.com/bofh69/spoolman2slicer
It uses jinja2 templates so it can be customized for whatever extra fields you use. The included Orca Slicer templates use an extra field for pressure advance for example.
Right now the only communication between Klipper/Mainsail and Spoolman is for getting the spool usage data and checking for Filament compatibility.
Now I would appreciate it, if there would be an possibility to get more data from Spoolman for the printing process. Examples would be:
This values above are filament specific and should be the same on each printer. Furthermore, there are some values that are printer and filament specific which somebody might also want to store in Spoolman (especially in an single printer setup):
I am now asking if there is a possibility to get the data from the Spoolman API and save it as variables in Klipper (that can be used with macros). Ideally the variables should be updated on every filament change.
Thanks in advance.