Electronics #1

At this step we can test if the XYZ axis are moving properly. Lets mount all the electronics on the frame. As I have plywood frame with supports, I have some place to mount arduino directly to support, and as well I can make a holes for the power supply.

There will be more photos than usual.

Printed parts needed:

4x arduino-washer

At first, I checked where i have to make holes for power supply by temporarily apply it to draw points for two holes, and use 3mm drill on it.



For this mount I’ve used M3x20 screws, but even M3x15 with 9mm frame should be enough. It fits, and its stable.

On the other side of printer will be arduino with ramps. Lets make the sandwich.


And mount it on the frame… Using M3 screws and Arduino washers from i3 Rework.


The length of screws depends on your frame thickness, for 9mm frame I’ve used M3x18 screws.

Then, some soldiering are needed (depending on types of cables, some motors already have the proper cables, so only for endstops soldering are needed)


For the endstops I’ve used the NO output (as I want to have a signal from endstop when it will be triggered).



Endstop COM -> Ramps GND (-)
Endstop NO -> Ramps S (Signal)

But the connection doesn’t matter at all, as long as it will be between GND and S, otherwise the Configuration for Marlin which I provide will be not working.

After connecting everything as in any build with RAMPS 1.4 we can move to the computer and make the first tests. If You are not familiar with the connections, take a look on THIS – its complete guide for wring the RAMPS 1.4, even with power supply.

For connection between power supply and arduino use 2×2,5mm cables, to decrease probability of fire, especially with wooden frame 🙂

Software part requires:

Arduino IDE
Marlin firmware
USB A to B cable (You should get one while buying arduino, or You can take from the 2d printer, as its commonly used there)

If you don’t want to configure marlin by yourself, You can download the version which I made, but keep in mind – all your mechanical parts MUST BE same as the ones covered on that page. I changed the stepper driver on Z axis to DRV8825 with 1/32 stepping, so You have to do it also (or wait until I will change the DRV8825 to 1/16 mode, as I am planning that – the original has also 1/16 mode on all steppers).

Install the Arduino IDE, and open Marlin.ino file from the downloaded firmware. It will open a lot of tabs inside IDE, but for us currently interesting is only the Configuration.h.

What we have to do right now?

Lets configure the steps per mm – its the amount of signals needed to send to stepper motor to move axis by 1mm. Prusa made a great calculator for that – its available HERE

We have 16 tooth on our GT2 pulleys on X and Y axis


And we have trapezoidal screw with pitch 8mm.


We need to enter that values to Configuration.h – lets hit Ctrl + F for find, and look for “STEPS_PER”. It should find a entry somewhere in the file.

Modify that line with results which You got from the Prusa calculator


And its ready!

Connect the Arduino to PC and click on the right arrow in toolbar, and wait… It will show the status on the bottom of Arduino IDE window, it should finish correctly.

After that, its ready to test. Install Repetier-Host or Prointerface (maybe you had already one of them), and try to move X, Y or Z axis, connect your power supply to network, and lets start testing!

Be careful! For Z axis do only small moves (0,1) and watch carefully if both motors are spinning in same direction. If not, reverse the cables for one of motors. If any axis is working in wrong direction – also reverse the cables (or, modify the Configuration.h and reflash arduino – if You know that way).

Stay tuned for the extruder assembly. The build is getting closer to finish!



After this step printer will be looking almost like finished.

Printed parts needed:

1x Z-axis-top-left
1x Z-axis-top-right
1x Z-axis-bottom-left
1x Z-axis-bottom-right

Follow the instructions, skipping step 4 (Placing Z-covers) and there is also additional steps needed with step 5, as we are using trapezoidal screws with aluminium couplers.

After placing the motors, install couplers and then insert trapezoidal screws into them, and tighten it all with the 4 screws on every coupler. Make sure that motor shaft and screw are not touching inside the couplers. Then go to Step 7, but as nuts use adapters and the chinese nuts.

After step 11 it should look like this:


I’m currently not managing the cables, as it will  be also managed differently than in Original, so Step 13 can be skipped. All the following steps can be easily followed from the Prusa manual.

I’ve changed my mind about the frame, and instead of using 6mm MDF i am using 9mm plywood, which is more stable, and still in good price comparing to aluminum. Because of that some screws which I am using are longer than in standard one.

Z-Axis before instaling GT2-belt

In next step we will make the printer moving, by installing RAMPS and connecting the motors which are already installed on frame.

Z-Axis Summary

Printed plastic parts

  • 1x Z-axis-top-left
  • 1x Z-axis-top-right
  • 1x Z-axis-bottom-left
  • 1x Z-axis-bottom-right

Metal parts

  • 2x linear shaft Φ8 320mm
  • 2x 5×8 aluminium coupler
  • 2x trapezoidal screw Tr8x8 with nut
  • 14x M3x18 screw
  • 8x M3x10 screw
  • 14x M3 nut


  • 2x NEMA17 stepper motor


  • 1x GT2 belt
  • 1x Prusa i3 vanilla frame (9mm plywood)


As the real next step for building Prusa i3 MK2 is X-Axis, lets move to it.

The Original has bigger nuts than the chinese ones, so adapter or modification to original parts are needed. I am planning to modify the original parts, but for now I’ve made just an adapters. The ones which I found on the Thingiverse was with bad plastic tolerance, so I made a better fitted ones.

Printed parts needed for this step:

1x X-carriage
1x X-end-motor
1x X-end-idler
2x chinese_m8_nut_to_original_adapter

This parts can be printed either from PLA or ABS (or any other material you like to print with, except for flexible)

Nut mounting are covered in Z-Axis assembly part, so for a short moment we need to move to that part (its easier to drill in X-end-motor and X-end-idler before putting linear bearings and other parts, I made a mistake and drilled it later, so on the photos there is already X-axis assembled)

Go for Step 7 and 8 from official manual of building Z-Axis and as a nuts use the printed adapters.


Make sure, that You inserted the adapters in same way as on the photo.

After that, some drilling is needed, You need a 3mm drill and eg. cordless drill.

IMAG1489.jpgYou don’t have to insert the chinese nut for drilling 🙂 Drill the holes, make sure its clear enough from the bottom (especially if you printed MK2S parts) and then you can remove the printed adapter.

After that operation lets go back to X-Axis assembly, and just follow the original instructions, there is no differences between clone and original on that part.

X-Axis Summary

Printed plastic parts

  • 1x X-carriage
  • 1x X-end-motor (its better to use MK2 version instead of MK2S)
  • 1x X-end-idler (its better to use MK2 version instead of MK2S)
  • 2x chinese_m8_nut_to_original_adapter

Metal parts

  • 2x linear shaft Φ8 370mm (the longest ones)
  • 7x ball bearing LM8UU
  • 4x M3x18 screw
  • 2x M3x10 screw
  • 2x M2x12 screw
  • 3x M3 nut
  • 1x GT2 idley pulley
  • 1x GT2-16 pulley


  • 1x NEMA17 stepper motor
  • 1x Microswitch


  • 1x GT2 belt
  • 6x zipties
  • modification to X-end-motor and X-end-idler is needed (drilling or STL modification)

LCD Cover #2

As on the LCD cover is text “ORIGINAL”, I’ve decided to slightly modify it, as our clone isn’t original (as the clone should be proud of it! 🙂 )

The final result is notORIGINAL LCD Cover. I also removed the supports for “click” part of screen, as its only small overhang, and its harder to remove support for me than print overhang.LCD-cover-notORIGINAL

SCAD: https://github.com/q3ok/Prusa-i3-MK2-Clone/blob/master/Printed-Parts/LCD-cover-notORIGINAL.scad

STL: https://github.com/q3ok/Prusa-i3-MK2-Clone/blob/master/Printed-Parts/LCD-cover-notORIGINAL.stl

LCD Cover

While I am still waiting for all necessary parts I’ve decided to assemble LCD cover.

The Chinese electronics (LCD2004) looks almost like the original, but it needed some modifications. The contrast control potentiometer was blocking one of supports, so I had to drill (or modify the STL, but I choosed the first option)


The second problem was with original model for cover, which instead of having a clips which, according to the manual, should “click”, had infill. Finally i just ignored that and pushed the Chinese screen as much as I could, ignoring that the top is rising slightly.


For me it looks good. As the clone is still in progress, I’ve checked on my test printer is everything OK with the screen and electronics. Tests passed.


The LCD parts was printed from Silver PLA.


Printed plastic parts

  • 1x LCD-cover-ORIGINAL
  • 1x LCD-knob
  • 1x lcd-support-A
  • 1x lcd-support-B

Metal parts

  • 2x M3x10 screws


  • 1x RepRap Discount Smart Controller LCD 2004


  • Modification to lcd-support-B needed

Y-Axis summary

Finalizing the Y-Axis

Finally, the GT2 belt and the pulleys came, so I was able to finish Y-Axis build.

From the two types of switches which i described on cost estimations, only the bigger ones are working properly. The switches from razer mouse are too small to MK2 parts. The metal parts can be removed from the switches, it will work then button-like, but its not necessary. I’ve done it with removing.

Fully assembled Y-Axis

Fully assembled Y-Axis

I am not soldering the cables right now, even to the endstop which need soldering very close to plastic parts.
I had also to reprint the motor holder, as i broke the previous part while screwing endstop, and its new green PLA 🙂 It will be printer made from many different colors.


The next step according to official manuals is build of the X-Axis.

Y-Axis Parts summary

Printed plastic parts

  • 4x Y-corner
  • 1x Y-belt-holder
  • 1x Y-motor-holder
  • 1x Y-idler
  • (optional) 1x Y-motor-distance

Metal parts

  • 2x Threaded rod M10x380
  • 1x Threaded rod M8x310
  • 3x Threaded rod M8x210
  • 2x Linear shaft Φ8 350mm (Original = 330mm, if you want to use shorter, take also M10 rods 20mm shorter – 360mm)
  • 3x ball bearing LM8UU
  • 12x M10 nut
  • 12x M10 washer
  • 16x M8 nut
  • 16x M8 washer
  • 3x M3 self-locking nut
  • 2x M3 washer
  • 1x M3x25 screw
  • 2x M3x12 screw
  • 2x M3x10 screw
  • 2x M2x12 screw
  • 1x GT2 idley pulley
  • 1x GT2-16 pulley


  • 1x NEMA17 stepper motor
  • 1x Microswitch


  • 3x zipties
  • 1x GT2 belt
  • (optional) 4x felt pad
  • (optional) 4x zipties

Y-axis part 1 and overall thoughts

The Y-axis

I have already some of the parts, so I decided to start the build.

Printed parts (from original) needed for this step:

4x Y-corner
1x Y-belt-holder
1x Y-motor-holder
1x Y-idler
1x Y-motor-distance (optional - MK2S element)

For this moment I’ve skipped the PSU-Y-part, as I will be thinking later about the power supply mounting.

The parts can be printed even from PLA, as the temperatures around that elements will be not so high.

Instructions can be taken directly from Prusa Manuals

Y-Axis Part 1

Preassembled Y-Axis

Joshep Prusa in the new revision of Original – MK2S – added addtonal clamps for the LM8UU bearings, removing the zipties. I think thats good idea, I’ve found some printed parts for securing the bearings – but mostly it will also raise the bed, and make the belt uneven.

LM8UU bearings holders

Bearings secured with element found on Thingiverse (made only for test)



I’ve wrote that there is need for direct hotend, but its wrong. As the original E3D always have connector for PTFE tube, and there is no difference between bowden and direct one, the Chinese ones for direct dont have  enough room to place the PTFE. I am not sure if this project will work without the PTFE tube between hotend and extruder, as the hole in extruder body are bigger than filament diameter it can lock over instead of pushing. With direct one also the tube can be glued to the hole in body, but I am not convinced if it will work. As I’ve already ordered the direct one, I will test both of the Chinese E3D clones.


The heatbed already came, I am testing it with the inductive sensor, and it looks promising. There is only one bad thing: the plastic are not sticking directly to the aluminium, and the heatbed has (unfortunately) some scratches and hole in center sealed with kapton tape.

There is two solutions which I see: glass with clips (I hate the clips) or dedicated printing surface like BuildTak or COROPad. Or both.

I’ve tested so far 3mm and 4mm glass with COROPad, and only on 3mm sensor was able to detect aluminium heatbed.

Probably I will finally stick the printing surface directly to the aluminium.

Trapezoidal screws

Trapezoidal screws are OK (but I also wonder if I shall use screw with 2mm lead instead 8mm), but the nuts are smaller than the ones in Original Prusa. There will be a need of adapter for that. I’ve seen already adapter on thingiverse, when I will be building that part I will try.

Inductive sensor

As the sensor will be working directly on 12V (because on 5V probably it will not work properly, but I will also verify that) its easier to use NPN instead of PNP. In cost estimation I wrote about NJK-5001A which is PNP, but fortunately it has also NPN equivalent named NJK-5001C (link to aliexpress).

The NPN are using GND signal when triggered, PNP are using high. If we will connect PNP sensor directly to 12V and the signal wire to arduino then it can burn the arduino port, unless we will make additional voltage divider eg. from two resistors.

I saw that Thomas Sanlanderer are almost finishing the build, but his approach is to build the printer as cheap as its possible. I am really surprised that he even chose M5 rods instead of trapezoidal ones, which IMHO are making the printer closer to MK1 instead of MK2. My approach are a little bit different – I want to build still a cheap printer, but with reasonable quality, and close to Original MK2.

The next part will be soon, as the only missing part to finish Y-axis is endstop.