Project to automatically remove parts from build plate

Do you have a link to a video of your implementation?

1 Like

AFAIK, there are only two possible solutions: 1. The plate stays put and you knock the finished print off, or it falls off; and, 2. The print with plate still attached gets ejected and a new plate slotted in.

Well, I suppose one could possibly count a third option, which isnā€™t technically a continuous print cycle, but I can see how it may have some advantages: you get a printer with a huge xy build volume, and you print just like normal, except you duplicate a single print object and print a bunch of them on the giant build plate. Speaking only for myself, I kinda like this approach, because itā€™s the simplest and leverages tried and true regular hardware. Just think how many you could, in theory, print per build plate on something truly huge like an orangestorm giga or, to a lesser degree, a comgrow t500. Or maybe the Bambu XL, but no one can due dily that option until it at least gets announced. :roll_eyes:

Well, actually 4 options: you go old school. If you have the space, take the cost of any of the first 3 options, and buy that amount of inexpensive printers and run them in parallel. Now youā€™re thinking, because total print time goes down. Who cares if it sits there on the print bed while it waits for you to pick it off. It doesnā€™t matter, because unless youā€™re on vacation or out of town, your productivity may still come out ahead. Of course, it all depends on the exact print and your particular circumstances, so YMMV. But if you have a ton of parts you need to crank, and the sooner the better, this might be the option thatā€™s very hard to beat. Itā€™s also arguably the most reliable, because each print is independent of the other, so print failures donā€™t spread or cascade and force a total shut-down.

As for me, after writing the above, I changed my mind and settled on what is essentially option 4, for the reasons given.

Here is my code:
-It is pasted and replaced in bambulab in the final g code section
-I really see changing the bed as an overdue solution so as not to have to intervene.
-In my code, on the 4th line where it says G04 S1500, here we select the seconds we want to wait before removing the piece. 1500 means waiting 1500 seconds, 25 minutes.
-important to select the textured pei bed in bambulab
-In this way the printer prints continuously until we decide to cancel it.

End g-code:
G91
G1 E-20 F1500 ; Retraer 20 mm para que no gote filamento
M104 S0 ; apagar hotend

G90
G1 X-13.5 Y180 F3600 ; Ir atras y al purgador para esperar a sacar pieza Y 180 En caso de A1 Mini Y235 en caso de A1

G91
G1 Z10 F600
G90
M83

; ======== expulsar pieza =============
G0 -13.5 Y180 ; mover a purgador y esperar
G0 Z2 ; lower X until nozzle is almost touching
M140 S0 ; For some reason you need to set the bed temp again before
G04 S1500 ; Esperar 1500 segundos ā€œ25minā€ a que la cama se enfrie
; M190 S35 ; Esperar a la cama a 35 grados para que retire la pieza, no funciona por un tema del firm no lo reconoce
G0 Y0 F1000 ; retirar pieza
G0 -13.5 Y180 F1000
G0 X27 Y180 Z3 F2000
G0 X27 Y180 F2000
G0 X27 Y0 F2000
G0 X27 Y180 F2000
G0 X77 Y180 F2000
G0 X77 Y0 F2000
G0 X77 Y180 F2000
G0 X127 Y180 F2000
G0 X127 Y0 F2000
G0 X127 Y180 F2000
G0 X177 Y180 F2000
G0 X177 Y0 F2000
G0 X177 Y180 F2000
G0 X-13.5 Y180 F2500
G90 newly added - pending to test - culprit?
; ==== end eject ==================

M220 S100 ; Reset feedrate magnitude
M201.2 K1.0 ; Reset acc magnitude
M73.2 R1.0 ;Reset left time magnitude
M1002 set_gcode_claim_speed_level : 0

M400 S1
M18 X Y Z ; disable stepper could also be culprit as Z might drop when stepper disabled - maybe this should be deleted for automation

1 Like

And how do you merge multiple plates in 1 plate in bambu studio?

You can use this app. However it works only with GCODE. Means no AMS support and no remote start for files. But it does what itā€™s supposed to.

And if I need AMS Support? What can I do?

There are ways to do this. For example by exporting a 3MF file which will act as container and then replacing the gcode file inside. I can explain in detail, but first get familiar with the ā€œsimpleā€ gcode-splicer app which I have linked above.

And here is an alternative approach by using this octoprint plugin:

Seams like itā€™s still in development but can be already used. This approach is way more comfortable than splicing multiple files into one.

Yes, I used the gcode-splicer app that you created and works but is not what I need.

I need to merge several bambu studio plates into the same so they can print separately.

Sorry, unfortunately I donā€™t understand what you mean. Can you please explain on some use-case?

Print several objects with auto-ejection and to be compatible with AMS.

I have the auto-ejection gcode at the end but I donā€™t know how to print sequently each object.

Hi, I have sent you a friend request on Discord and also am an avid Fusion user. Would love to view and collaborate on your wiper project. I travel for work a good deal and having a solution to clear failed prints or complete prints from the bed would be an absolute boon. username on Discord is Martiniman31

Hi folks, just in case someone find it usable, here is my clearing code for A1.
This pushed parts using the X-Axis (and then with the extruder). Works on some PLA parts. I would not recommend rely on it while printing in PETGā€¦ at least not without proper testing.

Please note
G0 Z-18 ā†’ here you might set the high where the X axis should push your object. Z-18 is the livest level and hit the object at high of appr. Z12. So for instance if you want hit your object at Z120 your need to use G0 Z90 here.

G4 S1200; wait 20 minutes

G0 X-48 F3000
G0 Y256 
G0 Z-18 ; here you might set the individual high

G0 Y220 F200 
G0 Y250 F3000 
G0 Y220 F2000 

G0 Y200 F200 
G0 Y230 F3000 
G0 Y200 F2000 

G0 Y180 F200 
G0 Y210 F3000 
G0 Y180 F2000 

G0 Y160 F200 
G0 Y190 F3000 
G0 Y160 F2000 

G0 Y140 F200 
G0 Y170 F3000 
G0 Y140 F2000 

G0 Y120 F200 
G0 Y150 F3000 
G0 Y120 F2000 

G0 Y100 F200 
G0 Y130 F3000 
G0 Y100 F2000 

G0 Y80 F200 
G0 Y110 F3000 
G0 Y80 F2000 

G0 Y60 F200 
G0 Y90 F3000 
G0 Y60 F2000 

G0 Y40 F200 
G0 Y70 F3000 
G0 Y40 F2000 

G0 Y20 F200 
G0 Y50 F3000 
G0 Y20 F2000 

G0 Y-2 F200 
G0 Y30 F3000 
G0 Y-2 F2000 

G0 Y265 F2000 

G0 Z3 F3000 

G0 Y265 F3000 
G0 X25 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X50 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X75 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X100 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X125 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X150 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X175 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X200 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X225 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 
G0 X250 F6000 
G0 Y-2 F1000 

G0 Y265 F3000 

How to splice multiple files/plates or its duplicates to a single print queue, read here.

1 Like

hello I tried your code on my a1 mini. It worked but it damaged the bed so I wonder if the code is different between the a1 and the a1 mini thank you

oh, itā€™s totally different. Sorry for your bed. :grimacing: I wish you have had asked beforehand.