Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

SpiffBot CoreXY 3D Printer

by spiffcow, published

SpiffBot CoreXY 3D Printer by spiffcow Jul 4, 2016
1 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps



Design Tools



SpiffBot CoreXY 3D Printer by spiffcow is licensed under the GNU - GPL license.

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag


Thing Statistics

7688Views 867Downloads Found in 3D Printers


Update 10/24/2016
I'm officially abandoning the whole nylon slider idea. It might work if you used POM, but nylon is not suitable, and I'm not willing to sink any more time into it. I've switched back to wheels.

Update 9/11/2016
I have improved the sliders. There are now Y and Z sliders and a sliding X direct drive carriage based on croadfeldt's work (modified source code is available on github). For the extruder use a bowden adapter of your choice (I used the C-Bot bowden adapter).

Use Taulman 645 or Bridge for the sliders, and make sure you get as little warping as possible. I have had great results using Printbite at 95C for the first layer and 105C for all other layers.

I'm currently running the printer completely without wheels with no discernible loss of quality. Pictures coming soon once I clean it all up.

This is a collection of modifications for Carl Feniak's C-Bot. Many of the parts are redesigned for increased rigidity, reduced cost, and reduced build time requirements.

The latest code is always available on github (the code pretty ugly at the moment.. This project has been my learning project for OpenSCAD).

The corner brackets, stepper mounts, and perpendicular brackets are all tested and provide an extremely rigid frame for the printer. I have done full prints at 150mm/s with a heavy direct drive stepper on the carriage. Attempts to go higher fail only because my steppers are not up to the task -- the frame remains rock solid.

Currently I would recommend avoiding the sliders unless you are feeling adventurous, as I have encountered a few issues trying to get them to function adequately.

A secondary benefit is that the tolerances are so tight that being able to assemble the printer virtually guarantees that it is square -- assuming the printer you used to print the brackets is also square. This allows you to get to an assembled and squared frame in a matter of hours.

Print Settings




Doesn't Matter




35% or more


Make 100% sure your printer is square and dimensionally accurate in X, Y, and Z directions.

I recommend having a piece of 2040 V-Slot on hand before printing everything. You'll want to test fit each piece.

The bottom corners only need minimal supports, and I have printed them entirely without supports.. I have found setting the support angle at 60 degrees does the best job for those pieces.

Custom Section


Start with the bottom extrusions. There are two different bottom brackets, one of each for the front and back. You want to form a "U" shape with the front, right, and left bottom extrusions and the 2 front brackets. Then place the rear 2 brackets on the rear bottom extrusion, and slide them together with the "U" shape formed by the other extrusions. Now place the vertical extrusions in each of the 4 brackets and push everything together. Don't use any screws at this point -- everything should hold together without it.

Now take the stepper brackets and place the top front extrusion between them. Place the brackets and front bar on the front vertical extrusions. Separately assemble the rear top corners, the rear top extrusion, and the top side extrusions into another "U" shape. Push the U shape into the stepper bracket openings. If you are using the large T nuts make sure to insert as many as you need before fitting everything together.

Take the Z gantry and bed support extrusions and assemble them into a U shape before placing the Z wheel mounts on the sides.

Assemble everything else as normal per the C-Bot instructions. Measure each side and ensure that it is exactly the same length at the top and bottom as its opposite, and measure the top diagonally and ensure that the left-bottom-to-right-top distance is the same as the left-top-to-right-bottom. Make adjustments if necessary (if your parts are straight and your cuts are accurate it shouldn't need much adjustment).

Now only once everything is square should you start putting in screws. Put in just enough to hold it together at first, starting with the top pieces. Double check all 4 sides and the diagonals are straight before moving to the bottom. Check all the dimensions again after assembling the frame with minimal screws. Once you are satisfied that everything is square, you can add the rest of the screws and tighten everything down.

More from 3D Printers

view more

All Apps

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Treatstock is an online platform that offers decentralized manufacturing services such as 3D printing and CNC machining for clients all over the world. We offer free and instant access to comparati...

App Info Launch App

3D print your favourite design with NinjaPrototype, a professional 3D manufacture with consistent quality and speed.

App Info Launch App

How are the bottom corners different? Can I just print one of them 4 times and just flip two of them the other way? Just curious! Thanks

might just have missed it if you wrote it somewhere. but what is the print volume

I'm thinking of redesigning the parts to move the motors out slightly allowing more of the melts to be hidden. This way the belts can run outside the frame on the sides just like the back.
I already redid the top rear corners when I noticed you can't have a screw along the path of the belt. https://tinkercad.com/things/afo1XIsFvtC (the red represents the belt) Do you think this will decrease rigidity?
what if I add another support screw in the back like one you were talking about removing in the front.

That seems reasonable, though you might want to increase the pulley size to ensure that you get a 90 degree bend along the Y bar. I wouldn't worry about the rigidity loss from not screwing in the tapped ends of the extrusions.

Yes I'll need to figure something out for the y bar, doesn't seem to difficult. But it's not the taped screw I'll be removing that's what I was hoping it add. It's the screws along the outside of the bar in the path of the belt.

By the way, are you planning to do this in OpenSCAD? Remaking the back pieces and the Y bar in OpenSCAD are on my to-do list, and I'm happy to collaborate on it if that lines up with your plans.

I'm actually using tinkercad. Its powerful enough and I don't have the time/patients to learn a new program. I'm also not even sure if I'll go through with the design, it'll only gain a few millimeters if any biild volume and having some belts showing isn't the worst thing.

I've never understood regular CAD programs.. OpenSCAD only makes sense to me because of my coding background, though it's a mess of a language.

My intent is more to have a parametric build, so you could for instance switch to a different extrusion profile or pulley size and have everything else generated based on that. So for me it's worth the extra effort. But if you're just building a one-off thing it's probably overkill.

You're going to have your belts going to the Y bar showing no matter what. The rest of the belt is pretty well hidden. The real advantage would be if you wanted to go to a larger belt size, which would require going through the middle of the extrusion.

Ah, I get it now. Shouldn't be a big deal, there's other screws keeping it in place (though you might want to add an extra screw to the bottom of that portion to even things out). If you print everything tight enough (which you should.. it's really vital to the success of this design), then you won't lose much rigidity. The screws are really only used to keep the various pieces from sliding out of alignment, and the rigidity comes from the close interlocking of the pieces.

I'm just trying to mount the X & Y motors, but they won't fit because the screw heads extend to far out. Looking at your pics, I see your heads are out as far as mine are .. how did you mount the motors?

It looks like the motors will only line up with the holes if the heads are flush with the printed part.

I used low profile screws for the inside along the motor mounts. I recently removed them completely with no negative effects, so I would recommended not placing any screws that butt up against the motors (i'm planning to make that section flat in the next iteration). As long as you have screws on the sides it shouldn't move.

Thanks for the quick reply ... I was about to drill the inset a bit deeper ... mine's a big build 500x500x500 .. so I'm worried about keeping things solid ... If you don't think it will move I guess I'll try it without any screws there.

instead of making it flat - couldn't you extend the motor mounts out more to clear the screw heads?

Sure, I can make another version with larger holes if that's easier to work with. Let me know how it goes! I'm curious to hear how well it stands up on a build that big!

Nah .. not for me - I don't want to take this thing apart at this point.

What I ended up doing is using a forstner bit - drilled out ~1-mm and then I got some 5mmx10 counter sink head screws. I was able to use those and the head is now below the surface and the motor goes on fine without any interference.

Sorry for asking such an obvious question but what are the lengths for the beams and the print volume per the standard lengths. Is it all the same as the original C-bot? Also any other info would be helpful.

I want to build one of these but the popular D-bot doesn't look sturdy on the top because the motors/xy gantry kind of sit above the vertical beams instead of integrat them like this design.

Yep, just use the C-Bot measurements. The only difference I would recommend is use the front/back lead screw option, but make the Z front bar the same length as the Z rear bar, and possibly make the Z platform bars the same length as the side bars for the bottom part of the frame.. This will allow you to have Z sliders on the front and back, which is a good stability improvement.

If you prefer to build a C-Bot, you can swap any of these pieces directly for the standard parts (don't use the no-wheel sliders yet though). I'd also be happy to make a D-Bot variant of these parts, but I don't have any 2020 to test it with.

Thank you for the quick response, it looks like the difference of bars between the c and d is on 20x20 vs 20x40 which is not a big deal for me infact I prefer 20x40..

For filament choice I've heard good things about petg but the only experience I've had with it was the color fab variant which didn't seem rigid enough to build a printer with. Please share your opinion if you've had any experience with rigid petg.

I've used Hatchbox and eSUN PETG.. The Hatchbox was definitely more rigid, but the eSUN was a lot easier to print with. For my current parts I just used the cheapest PLA I could find, and have had no issues.

Thanks I think I'll go with standard PLA (Makergeeks is seling 4 kilos for like $60). Looking at the dimensions the printer is much shorter in the Y-axis. is there a mechanical reason for this or is it just to make the printer look more rectangular. I want to scale the printer to a square build volume.

Mine is a square, or very close to it. I think I used 320x320x500 in the C-Bot cut calculator. The sides extrusions are slightly longer because the pillars face forward, so they have to be extended by 40mm.

Comments deleted.

So, as I'm looking at this more closely - you're using 2040 on everything. It looks like you're using the corner_bracket stls on the bottom, and using the 'regular' D-Bot/C-Bot corners on the back top rails.

And it looks like you're using the perpendicular-bracket for all 4 corners of the bed rails - that attach to the front/back Z gantries.

But, I'm not sure where I'm seeing you using the slider carriages.

Can you add any more pictures, and describe more where/how you're using all your files?


Sorry for taking so long to get back to you. I added a pic of the full printer to show what I mean about the front and also added a rough assembly guide. Please let me know if I'm missing anything.

The lead screw positioning is not really that important, btw. See the original D-Bot for various options on the subject.

Thanks - that is very helpful - especially the assembly info.

These are really massive - didn't realize how large they were until printing them .. taking ~1/3 roll of filament each [~80m] so far (on the stepper mounts and corners) ... but - they will be solid I'm sure. I've dropped my infill to 30% as I'm sure that will still be strong enough.

Would you mind also taking/adding some pictures of your extruder assembly and wire chain attachment on the side?

Thanks again!

Haha yeah, it's a lot of filament.. That's why mine is so many different colors.. Reprinting in one color would cost me $50+, assuming I use cheap PLA.

The hotend mount and cable chain is the standard C-Bot direct drive mount + my back plate mod (http://www.thingiverse.com/thing:1498870). There's a discussion on the cable chain here: http://www.openbuilds.com/threads/c-bot.726/page-88#post-35846

C-Bot direct drive backplate with cheap endstop mount

Mostly correct. I'm currently not using my perpendicular bracket for the front (but there's no reason not to.. I just haven't printed the front ones yet).

I am not currently using the sliders. They are very experimental at this point. I have a video of an earlier iteration PLA X slider working here: https://youtu.be/WKYnLf8KdYo
I have tried the Z sliders in PLA, but they tend to bind. I have been trying to print them in nylon, but have not had much success due to warping. I'm going to try it with POM at some point, but have not gotten around to it.

Unless you really want to tinker with it, I would avoid the sliders at the moment. They should all be correct in terms of dimensions, and the X/Y sliders should work even in PLA, but I wouldn't bother printing them unless you can get a really accurate print in POM or nylon. Nylon is expecially nice for this if you can get it working though, as it removes the need for the long screws since you can screw directly into the nylon.

I'll try to get more pics of it tonight.

It spreads the results need to be cut shorter for these braces since the v-slot doesn't go all the way through.

Can you tell us how much shorter they need to be for each one.

And, thanks for sharing. I'm printing a motor mount now.

What infill do you recommend?

The extrusion lengths should be the same. On the C-Bot the front top extrusion is lower than the rest. This adds plastic between the top corners and the top extrusion, similar to the back corners.

I did 35% infill with cheap PLA and it held up pretty well. I wouldn't go lower than 25%.. Also, use supports when needed

ah.. ok - from your pictures I couldn't see the front extrusion as being lower. I've been following/building spauda01 D-Bot and that I could see was lower.

I'm currently printing the left stepper mount in 50%, just restarted as I didn't pay attention to the support needed there and had to cancel my 1st print.

Sorry, I forgot to mention supports. I tried to avoid them, but ultimately couldn't do so without comprimising the parts.

50% should work well

no worries .. I looked at the file, but was to anxious to print it and didn't pay attention ;) ...

I'm wanting to do a larger build as well (as per comments on the D-Bot page) ... so hoping these designs will help - Thanks.

I just saw what you meant about the front bar... That might be a bit confusing, so I should explain: I'm using the front/back leadscrew configuration, but I cut the front extrusion a bit large so that I can put a second Z axis gantry on the front. That extrusion looks a lot like the front bar in the picture, but it actually moves with the bed.

yes - I think I could see that .. .but the D-Bot was only using a 20x20 for the top front bar, and you have a 20x40 for that. So - it looked like the belt would hit the side extrusion.

But I can see now - by changing the material to 'glass', I can see where it's going to be fine. You've raised up the front bar to the top of the side bars, unlike the D-Bot - the it looks like (as you said) the length will be the same.

would you mind sharing the support parameters you use. I'm using Slic3r right now, because the supports seem to be easier to remove - but this one is quite a pain to get them all off/out. I don't have Simplify3D - just don't have the $$ for it right now. I would be very nice to remove some support I know my printer doesn't need.

I'm also planning to have a front Z gantry.

I never noticed it, but you're right -- the D-Bot uses a 2020 front bar. If you haven't already ordered I would recommend the 2040 for the front. If you already have the D-Bot parts on order I'd be glad to make the necessary changes to allow for this to be used on that as well (I'll probably do this anyways, but it would be good to get feedback from someone who can actually test it).

I'm using Simplify3D for my slicing, and that lets you define the supports.. I'm not sure the support parameters matter too much. I'd put the angle at 60 degrees just to avoid unnecessary supports, and set a low support infill if that's an option (I've never used Slic3r). To remove supports I found that shoving an extrusion in to know them over then pulling them out with pliers was fairly effective.

I have extra 2040 I'd ordered, so I plan to use that for your mod - as I like the extras strength/stability.

Thanks for your quick responses here - I'll try some different support on the right side and post here what I find.

I also looks like you're using a direct drive extruder instead of of the bowden - do you like that better. Which mount did you use?

I used the C-Bot direct drive carriage. I haven't tried the bowden option on this printer, but based on my experiences using bowden with my Kossel I knew I didn't want to go down that road again. That was a large part of why I did this mod to begin with -- I wanted to sling around a heavy motor at speeds normally possible only with a bowden setup :)