From RepRap
Jump to: navigation, search
HardyGraph Documentation
Crystal Clear action run.png

Release status: working

HardyGraph4 small.jpg
Fully customizable 3-D Printer with OpenSCAD
CAD Models
External Link

This is my Project for dynamical printing a Portal-Printer with OpenScad and a possible reachable Workspace Area of 360x600x270mm (X/Y/Z). But this is just my Print (i simply don’t know how far you can get). It has a option for mounting some Auto-Bed-Leveling equipment, then you might able for levelling the bed with Marlin or some other Firmware.

You decide the values of each parameter of each Structure within the Printer. If you don’t change anything you simply will get mine ;-) (Hopefully your Printer works like mine (Prusa i2 with 0.4mm Nozzle)).


Please be aware of the Information on this site, its under construction. There is no guarantee the HardyGraph.scad works with your configuration, there are no value-limits placed so you can pretty mess up your layout with over,- or undersized parameters. It worked fine with my configuration which is also its actual default values. Check the GitHub-Wiki on the HardyGraph-Project for further Information.

Videos of my Version

<videoflash type="youtube">h6Ln9LrKv1s</videoflash>

Pictures of my Version

HardyGraph4 small.jpg

Assembly instructions

At First

This Project is not for beginners, you should be very aware of what you doing. Its not easy to describe how to assemble your individual printer because it depends on your configuration. I know each part is not really build to be resource friendly with ABS (specially the portal construction which carry the X-Axis). But there is no problem if one of the Y-Axis NEMA Motors cancel its duty, the other one drags them to its destiny parameters. Your Print would be ruined, but nothing will break apart ;-)

Its about 3,4 kg ABS in my Printer-Version: If you plan to build this one, try to bild an Filastruder+Filawinder first :) Link to Filawinder . A lot of thanks to my friend Holger at this point, because he supported me with his Filastruder+Filawinder ( he also made some advanced features like web-visualisation for surveillance of the winding process from afar and some improvement of the laser-lappy-detection which regulates the "on-spool-winding" and lots more i dont know by myself ;-) )

The OpenScad-File itself

Don't creep to deep in my OpenScad-Code, its not that well written, especially at the beginning. But it makes it work pretty well. The lines of length and positions and their variables are sometimes placed twice in a row, this is just for re-comprehending how I was about planning this from scratch.


At first you have to configure the parameters of your wished printer as described at the HardyGraph Size Definitions GitHub Wiki. This might be really hard to understand, but try to use your OpenScad Preview and activate each separate Part as described on the HardyGraph "Switch between Print, and Preview Mode" GitHub Wiki. Activate and deactivate the "printmode" after doing changes on the Structures to see the changes which made during your configuration. This is also a really good explanation of how you have to assemble your parts together.

Some explanation of the colours in OpenScad:

  • Silver // Smooth-Rods
  • Blue // Threaded-Rods
  • Black // NEMA Motor
  • Purple // Belts (the Belts of the upper Structure will not be drawn, because it was to hard for me to place them correctly ;-) )
  • Everything else // ABS ;-)

more information will follow ;-)...

Possible Mechanical Parts

(These are the mechanical Parts I used for my configuration)

  • Smooth-Rods Y - Axis: 10mm
  • Smooth-Rods Z - Axis: 10mm
  • Smooth-Rods X - Axis: 8mm
  • Ground-Frame Threaded-Rods: 8mm
  • Z-Axis Threaded Rods: 8mm VA! * (more information below)
  • Upper-Frame column Threaded Rods: 10mm
  • Brace of Structure Threaded Rods: 8mm
  • Belt Upper Frame / X-Axis: GT2 Belt 7mm width with Fibreglass-Core
  • Belt Y-Axis left/right: GT2 Belt 7mm width with Steel-Core (this is important!) -> made some Tests: https://plus.google.com/u/1/b/113231040230753317715/collection/sHgeV (German)
  • Pulleys: 20tooth Pulley for GT2 Belt
  • Bearings: LM8UU, LM10UU, 608ZZ
  • Baseplate ( You can use HDF Plates, i used 12mm hard plastic i earned from some wall decoration )

The length of each mechanical part (Smooth-Rods/Threaded Rods) will be shown in the OpenScad Console after loading HardyGraph.scad as described on GitHub :-). It depends on the size you define for your printer. The value refresh each time you render your view.

* Attention: At 1. Point you may need some additional help: You need to drill a hole at one side of the Z-Axis Threaded Rods (be careful not to bend them) to fit the NEMA Motor Shaft in it. I was not that accurate in drilling, so i made a bigger hole than the shaft-size and used epoxy to glue the shaft in the right place. After that a drilled a hole through and metal pint the motor-shaft with the threaded rod. It works pretty well ;-), but it was some nasty work... maybe someone have even better ideas.

Possible Electrical Parts

(These are the electrical Parts I used for my configuration)


This Printer was made from an heavily modified Prusa i2

Help and support

Mail me if you have any questions: hardygraph@virtograv.de

How to get it?

  • you have to build your own .stl Files with OpenSCAD, further instruction are here: Github.