First post here. I have a P1S and completely love it. I have an unusual scenario I am looking to tackle and interested in any feedback or suggestions.
Here is what I want to accomplish. I have a print that is basically a 6 1/4” (160mm) circle that I need mass produce as in the thousands. What I am thinking is I purchase 2 A1 minis to print them on since the size of the print makes it impossible to even print even 2 on my P1S but the A1 minis are perfect to fit one. The print can’t be adjusted to print in any orientation but flat.
Here is the problem. The print takes approximately 1 hour to print and I don’t want to be glued to my printers removing the part and starting the print again. I have researched “print farm” applications (3dque, simplyprint, maybe there are others) that have the function to sweep the print off the bed and start up another print (in beta version). These programs have a lot of features I don’t really need and there is a monthly cost using them.
Here is my idea/concept. It maybe completely stupid and impossible but if it is possible it would be amazing. I am not super familiar with this kind of stuff.
I believe that the sweep function for the A1 mini is possible based on 3dques video and other gcode modifications I have come across:
My question, is it possible to add gcode at the end of the print to code for the cool down? Is there a good way to do this?
I believe the above is possible but the next problem is starting up the next (same) print. I have an idea that I am not sure if it would be possible. Say I take the gcode for my print and add the cool down/sweep gcode to the file and once that is done it goes back home. Would it be possible to just copy the entire gcode and just paste it back to back how ever many times I would want to print it. So it would warm up, print, cool down, swipe, home, then warm up, print, cool down, swipe, home…. Etc. This may not be possible but if it is it would be a game changer for me. Any suggestions would be appreciated!
If something like this or something similar is not possible, then likely I will have to purchase a print farm service.
First, that A1 mini video where the use of the print head to knock off a tiny model is not only pointless, it’s irresponsible. It will only encourage newbies to damage their equipment. I dare someone to try that with a model that is let’s say 60x60x30mm and let’s see how far they get. After they rip off their nozzle and cause irreparable damage to the gantry mechanism, we’ll all laugh at their expense.
However, the notion of building an automated print bed is one that has been around for quite a while.
Here’s one such video for Thomas Sanladerer.
But when he made this video two years ago must have been get more viewers or he forgot to do his research because Creality and many others has had this product for some time now. now.
Thank you for the reply. I understand your concerns with using the head to remove the parts and I have them as well. I would like to say that the parts that I would like to remove while are 6 1/4” in diameter, they are hollow with only about 1/2” of the perimeter touching the build plate and the entire part is only 25 grams. I would be using the textured plate that from my experience with the P1S, the part will likely completely separate from the bed once cooled. Using other plates or printing larger parts, damage to the printer would be a bigger concern for me but at this point it’s a risk I’m willing to take. I plan on as well having the printer slightly slanted to assist part removal even through that may also cause some problems. I’m sold on Bambu printers and would like to stay with that brand. I didn’t realize there were commercially available printers that removed the parts as I only came across mods but the price is constrictive for the growth I’m looking to reach. With the A1 mini, my plan is to add a printer or 2 as often as I need to to meet demand. The price and size is perfect for what I’m trying to do. At least I believe.
I see at 17:08 in the YouTube video he talks about how he combined g codes for his continuous prints. That is something I’m considering if it would work (with bed sweeping in between. Thanks!
Thanks for the input. I will avoid hitting the nozzle and if I need to print a guard I will. Based on what I have read I am confident that I can alter the machine end g code to include the sweep off function and I can duplicate the files for the amount I would like to print at one time. I have never done this before but it seems pretty straightforward and I will take baby steps. I just purchased an A1 mini to test out my idea. Hopefully it works. If I have any questions I’ll post and if I have any results I’ll share them.
Ryan
I got my A1M setup but haven’t been able to explore the auto eject concept yet.
I have found in this thread the code in order to do it. A1M eject code
I think it may not be fully complete but I am planning on starting with it and see how it goes. There is also a link in that thread to stitch files together to repeat prints. Something I will probably also try.
Based on what I’m reading I think I will avoid any code for waiting for bed to cool down and just figure out a correct duration to wait before executing remove movements. But with everything I’ve seen, it should work.
I’ve been testing this serial printing method for a week now and knocking down the model is not a problem, however there is a problem with restarting the print. I don’t succeed in this, there is always some unwanted step like retraction etc. I have identified a number of sequences such as cleaning in flux, cleaning on rubber, etc. Without documentation for firemware and its g-code interpretation, this is also a problem with chatgpt. I am not successful yet. How are you doing?
Just a couple of comments and forgive me if already mentioned. I’m at the vet’s with a dog thing and on my phone so…
If printing thousands of something, up front costs of injection molding are high but actual per unit costs are low. Obviously this doesn’t consider if the model is too complex for injection molding.
On automated model removal, maybe something like the bowling pin clearing mechanism at a bowling alley? Complex to an extent but if printing thousands, might be worth it if it could work.
I haven’t accomplished this on a Bambu Lab printer but I have an A1 in the mail to do just this. I have an artillery genius (one of the earlier ones) that has a glass bed. I run octoprint and a plugin that handles all the automation. It works almost too well. Don’t know why this would be an issue on almost any other print.
With the glass bed on the genius I just had to wait until it cooled to room temp then added a few min for good measure then ran the sweep.
Hi, I also have a P1S and thought the same thing. In the video, they use an external Raspberry Pi (or something like that) to automate. I found an end gcode for P1S which ejects the parts (only in the middle) without any other hardware. But don’t forget that it doesn’t loop the print. Heres the gcode you can just copy and paste.
;===== date: 20230428 =====================
M400 ; wait for buffer to clear
G92 E0 ; zero the extruder
G1 E-0.8 F1800 ; retract
G1 Z{max_layer_z + 0.5} F900 ; lower z a little
G1 X65 Y245 F12000 ; move to safe pos
G1 Y265 F3000
G1 X65 Y245 F12000
G1 Y265 F3000
M140 S0 ; turn off bed
M106 S0 ; turn off fan
M106 P2 S0 ; turn off remote part cooling fan
M106 P3 S0 ; turn off chamber cooling fan
G1 X100 F12000 ; wipe
; pull back filament to AMS
M620 S255
G1 X20 Y50 F12000
G1 Y-3
T255
G1 X65 F12000
G1 Y265
G1 X100 F12000 ; wipe
M621 S255
M104 S0 ; turn off hotend
M622.1 S1 ; for prev firware, default turned on
M1002 judge_flag timelapse_record_flag
M622 J1
M400 ; wait all motion done
M991 S0 P-1 ;end smooth timelapse at safe pos
M400 S3 ;wait for last picture to be taken
M623; end of "timelapse_record_flag"
M400 ; wait all motion done
M17 S
M17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom
{if (max_layer_z + 100.0) < 250}
G1 Z{max_layer_z + 100.0} F600
G1 Z{max_layer_z +98.0}
{else}
G1 Z250 F600
G1 Z248
{endif}
M400 P100
M17 R ; restore z current
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
M17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power
; ======== eject parts
G0 X128 Y256 ; move to middle back of bed
G0 Z1 ; raise bed until nozzle is almost touching
M106 P2 S255 ; turn on aux fan to cool bed quickly
M140 S0 ; For some reason you need to set the bed temp again before
M190 S25 ; wait for bed to be cold
;G04 S300 ; give the part time to break free so pushing it is easier
M106 P2 S0 ; turn off aux cooling fan
G0 Y0 F1000 ; push part of bed
; ==== 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
M17 X0.8 Y0.8 Z0.5 ; lower motor current to 45% power
and don’t forget to remove the ===== nozzle load line =============================== part from start gcode because printer probably won’t be able to eject that by itself.
Also saw this and thought it was cool, built a end g code usung claude and tested working well. You can protect parts by increasing cooldown times as things pop off the textured stock plate when cooled.
Just working out the modified start up for dynamic purge line positioning when looking to batch print