From RepRapWiki
Jump to: navigation, search
Rostock Documentation
Main page | Rostock Buyer's Guide | Rostock Build Manual | Rostock User Manual | Rostock improvements

Crystal Clear action run.png

Release status: working

Description Rostock is a delta robot 3D printer prototype.
License GPL
Author Johann
Based-on Helium Frog Delta Robot
Categories Delta, Tall
CAD Models GitHub
External Link Thingiverse

Rostock is a linear delta robot 3D printer prototype, built in 2012 by Johann in Seattle, USA.

Several variations have taken root, including: Kossel, Rostock mini, Rostock MAX, Rostock-Montpellier, Rostock Prisma, Delta-Pi, Cerberus, cOssel, Cherry Pi and ProStock. Both the MOST delta and their Open Source Metal 3D Printer also uses an inverted form of this design.


Design Goals

  • Build volume: 200x200x400 mm (8x8x16 inches).
  • Footprint: 300x350 mm (12x14 inches).
  • Print surface: 200x200 mm heated glass which never moves.
  • Mass of end effector with hotend: less than 50 grams.
  • Positioning speed: up to 800 mm/s in all 3 directions.
  • Positioning accuracy: at least 30 steps/mm in all 3 directions.
  • Simplicity: fewer than 200 parts.
  • Hardware cost: less than $500 USD.



Many firmwares support Delta printers out of the box. See their individual instructions on how to configure them.

Frequently Asked Questions

How do you adjust the height of the print surface ?

You can adjust the following line in Configuration.h and then recompile and upload the firmware:

// The home position of the print head.
// For Rostock this means top and center of the cartesian print volume.
#define Z_HOME_POS 402 // Distance between nozzle and print surface after homing.

For micro-calibration, use the adjustable endstop screws in the vertical carriages, see #Calibration above.

Should the heat bed be mounted on top of a piece of insulation or cork ?

Yes, it's definitely a good idea. Cork or another kind of thermal insulation under the heatbed has two benefits:

  1. It lowers the times required for the heatbed to reach the PLA (around 60C) or ABS (around 100C) ideal heatbed temperatures.
  2. It protects whatever material is under the heatbed from excessive heat radiated by the hot heatbed.

See Heated Bed Insulation for further details.

Is your heat bed mounted element side up ?

Yes, the etched copper side is in direct contact with the glass. You can see the LEDs and contacts in the front just next to the glass edge. But I have not actually connected my heated bed wires yet, because I print only PLA and it sticks perfectly to blue painters tape, even without heating the platform. I will connect the heated bed wires if I ever have problems with detaching corners, otherwise remove the heated bed completely at some point.

Should the heat bed be mounted so it can be leveled ?

No, I think the print platform should be attached as tightly as possible to the frame, with full surface contact, possibly with cork insulation between bed heater and plywood. Then you can level the first print layer with the three micro-adjustable endstops, see #Calibration. Also make sure that the vertical smooth rods are orthogonal to the bottom plywood, otherwise your printed objects will be slightly skewed.

Will it matter if the hot end is not centered in the platform opening ?

It might work okay but there are some minor issues:

  • You may need to design and print a special asymmetric attachment for the bowden tube.
  • The nearest inside of the moving platform may get soft because of the heat from the hotend.
  • Your prints will not be centered on the print surface (closer to one edge) but this may be adjusted in your Slicer settings.
Why does the printer pause sometimes ?

Print with instead of if your prints have warts. They may be caused by Pronterface redrawing the G-code view while printing, which creates significant delay between segments. My modified Marlin firmware generates many shorter lines for each G1 command, so the Marlin look-ahead buffer will run empty if you don't send the next G1 command ASAP. This can also be solved by printing directly from SD card.

If Rostock loses power, does the print head fall down ?

No. The print head weighs less than 50 grams, and the three stepper motors have significant holding torque even when they are turned off (permanent magnets). You can move the print head around with your hand when the motors are turned off, but it's not very easy, and it will stay where you put it.

How do I calibrate axis_steps_per_unit ?

You don't need to "move and measure" if you know the pitch and number of teeth on your pulleys. Simply enter your pulley size on and it will do the math and show you the result. The firmware takes care of all the non-linear math so you don't have to include that in this number. If you do want to "move and measure", use Z movement, because X and Y are non-linear.

What's the resolution in X/Y direction ?

The steps per mm for X and Y is not constant across the print area. In the middle it is around 30 steps per mm, and near the edge it's more than 300 steps per mm because the push rods will be nearly horizontal.

Is it possible to mount a cooling fan on the print head carriage ?

It is possible but I was trying to reduce the weight of the moving parts. So I'm using a large oscillating desk fan sitting next to the printer. You can see the fan in this picture:

How many bearings are actually used ?

3x 608ZZ and 3x F608ZZ (F = flanged) for the timing belt idlers at the top. If you can't find flanged bearings, you can try using normal 608ZZ with a printed plastic flange. If you want to use smaller timing belt pulleys on the motors (which might be a good idea) you could also replace 608 (8x22x7 mm) with 688 (8x16x6 mm) or similar.

Also 1x 608ZZ and 1x MR105ZZ for Airtripper's direct drive bowden extruder.

How do you pronounce "Rostock"? Roe-stock, Raw-stock, Roz-talk ?

It's open source, you can pronounce it how you want. ;)

I say Ross-tock but your other pronunciations are fine too.

Would you recommend 0.9 degree per step or 1.8 degree per step motors ?

Use whatever you have in your workshop. If you are buying new motors, I think 1.8 degree per step (200 full steps per rotation) is more common for RepRap printers these days. Modern electronics (e.g. the RAMPS 1.4 which I currently use) support 16x micro stepping, so there are 3200 micro steps per rotation which is plenty.

Can you publish a schematic diagram of the electronic connections ?

The wiring is very similar to Prusa Mendel for example. I wired my endstops "normally connected" so the circuit is interrupted when the endstop is hit. But that's easy to change in the firmware configuration.

Can Rostock print a full 11.31" diameter circle ?

The current prototype can't really print the full 8x8inch (20.32cm) heated bed. It's closer to a 9 inch (22.86cm) circle. But yes you can print a vase with overhang that is wider than the print surface.

Where can I buy a kit with parts to build my own Rostock ?

Sorry, not yet. This is really still a prototype. I'm pretty sure that the first beta testers are going to find several problems and make improvements. We are working on a new frame called Kossel to replace the plywood frame with OpenBeam, and so far it's looking pretty good. Stay tuned!

In Europe you can find a full kit from Reprap Austria

Do you have any backlash problems with the metal-on-plastic universal joints ?

In an earlier version some of these screws unscrewed themselves after a while, but I think that is completely solved by the inside counter nuts. My prototype has only printed about 1 kg of PLA, but so far there is no sign of wear and very little backlash.

Why do you have longer than "standard" LM8UU bearings on some of the rods ?

The longer LM8LUU was just an experiment to see if it would keep the carriage more horizontal. It doesn't seem to make a difference, except for added cost and weight, so it's not recommended.

How low do the carriages need to slide on the rods during the printing/operation ?

The diagonal suspension rods are 250 mm long so the max required carriage travel for printing the first layer is somewhere around 200 mm (they go from vertical to almost horizontal). You need to add the build height to the first layer travel: 200 mm + 200 mm = 400 mm carriage travel required if you want to print objects up to 200 mm tall.

What length are the belt loops ?

My prototype currently uses 762 mm smooth rods and GT2 timing belt loops with 2 mm pitch and 762 grooves. This gives me 8x8x16 inches (20x20x40 cm) build volume. You can make your Rostock taller or shorter simply by adjusting the length of the smooth rod and timing belts. If you already have shorter belts, you can use them with longer smooth rod too. The extra smooth rod may stick out the top of your printer, but that's okay. A shorter printer may be more rigid / stable and may not need the extra plywood frame on the back and side.

Why did you build three towers instead of four ?

I decided to start with three towers, to build the simplest design that could possibly work. Four towers might improve precision, but it also needs 33% more parts and it would be over-constrained. This means the mechanics might jam if the four sides are not coordinated exactly right.


The following improvements are planned for future versions:

  • Use smaller timing belt pulleys and idler bearings.
  • Find cheaper timing belts and pulleys, e.g. T2.5 / HTD-3M / GT3?
  • Replace timing belts with Spectra fishing line.
  • Write a new clean delta firmware based on Grbl.
  • Create a Mini Rostock variation with 120x120x120 mm build volume.
  • Replace metal binder clips with printed plastic clips to hold the glass platform.
  • Use OpenBeam aluminum extrusion instead of plywood frame: Kossel.
  • Use OpenRail (or hybrid roller slide directly on OpenBeam) instead of LM8UU and smooth rods.
  • Experiment with dual extruders.