My journey in the world of 3D printing started in 2018. I decided to build my very first 3D printer because I saw a lot of opportunities to create parts for my projects. One of my colleagues had already purchased and built a metal version of the Prusa 3D printer. We had a lot of technical discussions about 3D printing and my colleague started constructing and building his first own 3D printer based on the XY core.

Design my own first 3D printer

After a lengthy period of investigation, design, discussion, and searching on the internet for a suitable design, I decided to build a 3D printer similar to the first Ultimaker and Ultimaker clone. However, I faced a constraint: I didn’t have a 3D printer yet, so all the parts had to be available or makeable with a set of simple tools.

To meet this constraint, I decided to build it entirely from 20 I-Type Nut 5 aluminium profiles, mostly the 20×20 type. This approach allowed me to create an exact and right-angle frame with limited tools, which is essential to ensure that the printer can print correctly.

Using the 20 I-Type Nut 5 aluminium profiles also had the benefit that there are many accessories available for mounting them together in different ways.

After ordering all the mechanical parts it was waiting a few weeks. some part I was able to buy the locally but a lot of the arts where coming from China

While waiting for the parts to arrive for my 3D printer, I took the opportunity to decide on the controller part of the printer. After conducting some research, I chose to use the Makerbase Gen 1.4 board. This board is widely used since it houses the motor drivers and all the necessary controls on a single board, unlike the RAMPS board, which requires a separate processor board.

With all the parts in house it was time to build it

In the future I will made a project page of this printer that will include the design, BOM and how to build.


On my Makerbase GEN 1.4 board, I began using Marlin software to control my 3D printer. Marlin converts Gcode files into instructions for the printer hardware.


I started printing with PLA because that was at the time eth most used material. But I switched to PET/PETG. This improved my print quality. I am very happy with PET/PETG.


Up until recently, I used my 3D printer as a standalone device that was not connected to the network. This meant that every time I wanted to print something, I had to physically go to the printer, transfer the STL file onto an SD card, and start the print job from the printer itself. Needless to say, this method was time-consuming and did not allow me to remotely monitor the printer’s progress. Fortunately, there is a software package called Octoprint that can be run on a Raspberry Pi or similar device. I opted to use the Orange Pi Zero 2 for this because it is a small board with an onboard WIFI module. If you’re interested in setting up your own Octoprint project, check out my project for a step-by-step guide. start using octoprint

Auto bed leveling

Adding a Bedlevel sensor (BL-Touch)


future upgrades I want to plan

  • Boxing all the electronics
  • Add cable management
  • Build a cover
  • build plate