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

[Feature] Configure AMS filament #128

Closed
stigvoss opened this issue Apr 28, 2023 · 6 comments
Closed

[Feature] Configure AMS filament #128

stigvoss opened this issue Apr 28, 2023 · 6 comments
Labels
feature request New feature or request parked May be worked on in the future, but closing for now

Comments

@stigvoss
Copy link

Describe the feature

I would like to request the possibility of configuring the currently installed filaments in AMS slots.

I imagine a Home Assistant exposed for the purpose, allowing to set color and filament type.
Assuming that it is even possible to create such a feature.

What device is this for?

X1C

Other Information

It would be nice to have e.g. QR codes or NFC stickers on 3rd party filaments and use HA to set the type and color.

Scan a QR/NFC representing the slot, followed by a QR/NFC representing a filament type on the spool itself.

@stigvoss stigvoss added the feature request New feature or request label Apr 28, 2023
@greghesp
Copy link
Owner

I'm assuming by this, you mean the same functionality as you can do here, by setting the colour, filament profile and temps?

image

@stigvoss
Copy link
Author

Yes, correct.

@WolfwithSword
Copy link
Contributor

A ui-like implementation would be very hard to recreate in HA, but if you wanted to have pre-set configurations from a QR code, NFC/RFID reader, etc, or scripts with slight configuration with input text fields, it can be done.

Main thing would be knowing the AMS and Tray ID's (both are 0 indexed) for it.

Payload is as follows to the Request topic:

{
    "print": {
        "command": "ams_filament_setting",
        "sequence_id": "2030",
        "ams_id": 255,   // 255 is external spool, ams id 0-N for an AMS
        "tray_id": 254, // 254 is external spool here, 0-3 for an AMS
        "tray_info_idx": "", // one of the predefined codes in the slicer. This is mandatory
        "setting_id": "",
        "tray_color": "00000000",  // Hex for RGBA colour
        "nozzle_temp_min": 0,
        "nozzle_temp_max": 0,
        "tray_type": "" // must be a known type as defined in slicer
    }
}

Above example is to clear/empty a tray or external spool. To see the rest of the settings you can set and the ones I didn't comment on, check here for how the slicer does it: https://github.com/bambulab/BambuStudio/blob/1f155868bc37558d0a29f163f2f980900beb3077/src/slic3r/GUI/DeviceManager.cpp#L1676

I can imagine an implementation for this would be similar to what I've been considering for my stuff. An endpoint that will let you select an AMS (or external spool), and the tray (prefilled if external, set if AMS), then either a clear button to empty it out, or fields with restrictive choices (The built in profiles from bambu are the only ones accepted, if you do custom from slicer it uses that during a print as its embedded in gcode then). Restrict the profiles, filament type, and pre-load temperatures (do not make user selectable, just use the values from the profiles depending on the profile, as it's used only for knowing change/load/unload temps). Oh and of course a colour.

This could then be activated with preset values from an automation from a tag or qr code for example, but also extensible as well.

@github-actions
Copy link

Stale issue message

@roondar
Copy link

roondar commented Aug 7, 2023

May be it could be link to https://github.com/Donkie/Spoolman.
Like last feature of Fluidd fluidd-core/fluidd#1119
It could help us to track filament usage.

@greghesp greghesp added the parked May be worked on in the future, but closing for now label Sep 3, 2023
@greghesp
Copy link
Owner

greghesp commented Sep 3, 2023

Parking this for now, as it's outside the scope of how far we want to go with this for now.
Might come back to it in the future once the core functionality is fully stable

@greghesp greghesp closed this as not planned Won't fix, can't repro, duplicate, stale Sep 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request parked May be worked on in the future, but closing for now
Projects
None yet
Development

No branches or pull requests

4 participants