1
0
Fork 0
mirror of https://github.com/maziggy/bambuddy.git synced 2026-05-09 08:25:54 +02:00

[GH-ISSUE #184] [Feature]: Plate Swap Integration (A1/A1 Mini) Swapmod and Jobox #117

Closed
opened 2026-05-07 00:06:24 +02:00 by BreizhHardware · 12 comments

Originally created by @MicGier on GitHub (Jan 30, 2026).
Original GitHub issue: https://github.com/maziggy/bambuddy/issues/184

Originally assigned to: @pleite, @maziggy on GitHub.

Problem or Use Case

For the A1 and A1 Mini models, there are modifications that allow for automatic plate changing. These modifications are implemented via the corresponding G-code.

Proposed Solution

It would be great if this feature could be integrated as an option into the queue to create a production line. For the A1 Mini this would be Swapmod for example. For the A1 it would be Jobox.

Alternatives Considered

No response

Feature Category

Print Queue & Scheduling

Priority

Would improve my workflow

Mockups or Examples

No response

Contribution

  • I would be willing to help implement this feature

Checklist

  • I have searched existing issues to ensure this feature hasn't already been requested
Originally created by @MicGier on GitHub (Jan 30, 2026). Original GitHub issue: https://github.com/maziggy/bambuddy/issues/184 Originally assigned to: @pleite, @maziggy on GitHub. ### Problem or Use Case For the A1 and A1 Mini models, there are modifications that allow for automatic plate changing. These modifications are implemented via the corresponding G-code. ### Proposed Solution It would be great if this feature could be integrated as an option into the queue to create a production line. For the A1 Mini this would be Swapmod for example. For the A1 it would be Jobox. ### Alternatives Considered _No response_ ### Feature Category Print Queue & Scheduling ### Priority Would improve my workflow ### Mockups or Examples _No response_ ### Contribution - [ ] I would be willing to help implement this feature ### Checklist - [x] I have searched existing issues to ensure this feature hasn't already been requested
BreizhHardware 2026-05-07 00:06:24 +02:00
Author
Owner

@maziggy commented on GitHub (Jan 30, 2026):

Need way more details.

<!-- gh-comment-id:3822013839 --> @maziggy commented on GitHub (Jan 30, 2026): Need way more details.
Author
Owner

@MicGier commented on GitHub (Jan 31, 2026):

I’ve been chatting with the developers of the Plate Swap System on Discord. They mentioned they’ve been in touch with you about this.

<!-- gh-comment-id:3829311777 --> @MicGier commented on GitHub (Jan 31, 2026): I’ve been chatting with the developers of the Plate Swap System on Discord. They mentioned they’ve been in touch with you about this.
Author
Owner

@maziggy commented on GitHub (Feb 1, 2026):

Nope.

<!-- gh-comment-id:3830515849 --> @maziggy commented on GitHub (Feb 1, 2026): Nope.
Author
Owner

@MicGier commented on GitHub (Feb 1, 2026):

Oh, ok.

So I'm talking about these two projects:

https://swap-systems.com (for the A1 mini)

Swap Code can be found here:

https://swap-systems.com/automation-approaches/

and

https://jobox.tech (for the A1)

SWAP GCODE:

Plates swapping gcode ;This code ejects a plate and loads a new one G90 G0 Y260 F2000 G0 Y265 F500 G0 X-33 F2000 G0 Z-12 F2000 G0 Y250 F2000 G0 Y240 Z250 F2000 G0 Y100 F1000 G0 Y0 F2000 G0 Y15 F2000 G0 Y33 F500 G0 Y260 F2000 G0 Y210 F2000 G0 Y10 F2000 G0 Y245 F2000 G0 Y265 F500 G0 Y-2 F2000 G0 Y15 F2000 G0 Y-2 F2000 G0 Y20 F2000 G0 Y100 F2000 Plate load only gcode ;This code only loads a new plate (if there is none) G90 G28 XY G0 X-33 F2000 G0 Z30 F5000 G0 Y0 F2000 G0 Y260 F2000 G0 Y210 F2000 G0 Y265 F2000 G0 Y-2 F2000 G0 Y15 F2000 G0 Y-2 F2000 G0 Y20 F2000 G0 Y100 F2000

<!-- gh-comment-id:3831095355 --> @MicGier commented on GitHub (Feb 1, 2026): Oh, ok. So I'm talking about these two projects: https://swap-systems.com (for the A1 mini) Swap Code can be found here: https://swap-systems.com/automation-approaches/ and https://jobox.tech (for the A1) SWAP GCODE: `Plates swapping gcode ;This code ejects a plate and loads a new one G90 G0 Y260 F2000 G0 Y265 F500 G0 X-33 F2000 G0 Z-12 F2000 G0 Y250 F2000 G0 Y240 Z250 F2000 G0 Y100 F1000 G0 Y0 F2000 G0 Y15 F2000 G0 Y33 F500 G0 Y260 F2000 G0 Y210 F2000 G0 Y10 F2000 G0 Y245 F2000 G0 Y265 F500 G0 Y-2 F2000 G0 Y15 F2000 G0 Y-2 F2000 G0 Y20 F2000 G0 Y100 F2000 Plate load only gcode ;This code only loads a new plate (if there is none) G90 G28 XY G0 X-33 F2000 G0 Z30 F5000 G0 Y0 F2000 G0 Y260 F2000 G0 Y210 F2000 G0 Y265 F2000 G0 Y-2 F2000 G0 Y15 F2000 G0 Y-2 F2000 G0 Y20 F2000 G0 Y100 F2000`
Author
Owner

@markrobotsmith commented on GitHub (Feb 11, 2026):

This would be a great feature. I've written a webapp for this. I can look at integrating it here. Some things to note:

  • The gcode may need to be modified for a particular swap system or tuned for a user's printer. Users should be able to upload their own gcode snippet that is inserted at the start/end of a print job.
  • Tying this in with the job queue system is likely a better solution than modifying the sliced .gcode file itself. Can gcode be sent and executed by bambubuddy or would sending the swap .gcode file as a "job" be simpler to integrate?
  • If a plate does not eject properly parts can print on top of each other or the heat bed.

This is a completely free system that is more accessible and available than the Jobox or swap-systems.
https://makerworld.com/en/models/925870-auto-build-plate-changer-for-a1-mini

<!-- gh-comment-id:3885975309 --> @markrobotsmith commented on GitHub (Feb 11, 2026): This would be a great feature. I've written a webapp for this. I can look at integrating it here. Some things to note: - The gcode may need to be modified for a particular swap system or tuned for a user's printer. Users should be able to upload their own gcode snippet that is inserted at the start/end of a print job. - Tying this in with the job queue system is likely a better solution than modifying the sliced .gcode file itself. Can gcode be sent and executed by bambubuddy or would sending the swap .gcode file as a "job" be simpler to integrate? - If a plate does not eject properly parts can print on top of each other or the heat bed. This is a completely free system that is more accessible and available than the Jobox or swap-systems. https://makerworld.com/en/models/925870-auto-build-plate-changer-for-a1-mini
Author
Owner

@maziggy commented on GitHub (Feb 12, 2026):

The link is broken.

<!-- gh-comment-id:3888929641 --> @maziggy commented on GitHub (Feb 12, 2026): The link is broken.
Author
Owner

@MicGier commented on GitHub (Feb 12, 2026):

I've checked the link it's kinda copycat of the Jobox and swap mod system.

Still in beta phase since 2024.

https://makerworld.com/models/925870

<!-- gh-comment-id:3888965707 --> @MicGier commented on GitHub (Feb 12, 2026): I've checked the link it's kinda copycat of the Jobox and swap mod system. Still in beta phase since 2024. https://makerworld.com/models/925870
Author
Owner

@pleite commented on GitHub (Feb 15, 2026):

I have the Swapmod for the A1 mini, and I use the machine code added to my GCODE, like on some cloud automation providers, it works nicely, but as there was a recent fix for the plate cleared button not appearing, it is now harder. I'm testing a small code change to use the location with a trigger word, and caching that a given printer is under automation, so the plate is cleared on print succeeded vs failed where it will keep the button for the user. I'm testing internally and then will try to submit a PR.

<!-- gh-comment-id:3904964467 --> @pleite commented on GitHub (Feb 15, 2026): I have the Swapmod for the A1 mini, and I use the machine code added to my GCODE, like on some cloud automation providers, it works nicely, but as there was a recent fix for the plate cleared button not appearing, it is now harder. I'm testing a small code change to use the location with a trigger word, and caching that a given printer is under automation, so the plate is cleared on print succeeded vs failed where it will keep the button for the user. I'm testing internally and then will try to submit a PR.
Author
Owner

@maziggy commented on GitHub (Feb 18, 2026):

Will be covered in https://github.com/maziggy/bambuddy/issues/422

<!-- gh-comment-id:3919092224 --> @maziggy commented on GitHub (Feb 18, 2026): Will be covered in https://github.com/maziggy/bambuddy/issues/422
Author
Owner

@pleite commented on GitHub (Feb 18, 2026):

The #422 is related to a cloud slicer product and doesn’t relate to this ask. The gcode here should already have the proper machine code.

<!-- gh-comment-id:3919196786 --> @pleite commented on GitHub (Feb 18, 2026): The #422 is related to a cloud slicer product and doesn’t relate to this ask. The gcode here should already have the proper machine code.
Author
Owner

@pleite commented on GitHub (Feb 22, 2026):

This feature is first stage to allow the feature #422 to inject GCODE for automation.
I have a code branch (in a public fork) in development for this, to be submitted as a proper PR here, hopefully soon.

Assumptions on my use case is that you have uploaded proper GCODE where you modified the machine code to include the automation, this is a valid format for many of the automation products.

I have a new boolean to indicate a printer has automation, this is persistent with the database and has a new Icon toggle proposed:

Image

I would need assistance for validating the translations for DE and JP when published.

The setting is evaluated on the printer manager, when the print completes if the print has finished successfully and the printer is automated, the plate cleared flag is done.

In this case the button for Clear Plate when the queue for the printer is active is still visible (but the file upload is already moving in background, and print starts in a few moments) - I do prefer this working, but is this worrying for someone?

I have a stretch option to consider the plate detection computer vision code to properly detect the clean and setup plate on the printer finish, if this is toggled on and desired, any opinions here? I would just honor the flag and use it as one more check to allow the clear plate action to proceed.

Finally, I still need to evaluate tests on the code to be added before this smaller feature and PR are proposed.

<!-- gh-comment-id:3940630132 --> @pleite commented on GitHub (Feb 22, 2026): This feature is first stage to allow the feature #422 to inject GCODE for automation. I have a code branch (in a public fork) in development for this, to be submitted as a proper PR here, hopefully soon. **Assumptions on my use case** is that you have uploaded proper GCODE where you modified the machine code to include the automation, this is a valid format for many of the automation products. I have a new boolean to indicate a printer has automation, this is persistent with the database and has a new Icon toggle proposed: <img width="615" height="185" alt="Image" src="https://github.com/user-attachments/assets/83adea9b-e7d1-4afe-89be-d29cf6a96504" /> I would need assistance for validating the translations for DE and JP when published. The setting is evaluated on the printer manager, when the print completes if the print has finished successfully and the printer is automated, the plate cleared flag is done. In this case the button for Clear Plate when the queue for the printer is active is still visible (but the file upload is already moving in background, and print starts in a few moments) - I do prefer this working, but is this worrying for someone? I have a stretch option to consider the plate detection computer vision code to properly detect the clean and setup plate on the printer finish, if this is toggled on and desired, any opinions here? I would just honor the flag and use it as one more check to allow the clear plate action to proceed. Finally, I still need to evaluate tests on the code to be added before this smaller feature and PR are proposed.
Author
Owner

@pleite commented on GitHub (Feb 22, 2026):

On my branch that I'm developing I have considered adding an automation flag to the printers table, as this would be the fastest approach and would make it part of the printer attributes.
I'm considering that due to the increased TEXT columns for the #422 implementation, I would make more sense to build a new automation table and relate it there, thus enabling the future feature by extending this table instead of the printers table.
This would also drive the functions needed to load and automate on a proper set of files, minimizing the changes for the printer_manager and frontend printers.

<!-- gh-comment-id:3940678856 --> @pleite commented on GitHub (Feb 22, 2026): On my branch that I'm developing I have considered adding an automation flag to the printers table, as this would be the fastest approach and would make it part of the printer attributes. I'm considering that due to the increased TEXT columns for the #422 implementation, I would make more sense to build a new automation table and relate it there, thus enabling the future feature by extending this table instead of the printers table. This would also drive the functions needed to load and automate on a proper set of files, minimizing the changes for the printer_manager and frontend printers.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/bambuddy-maziggy-1#117
No description provided.