I use my own custom Ultimaker-style printer. Modified to be smaller but the same build volume as Ultimaker 2 extended.
But that’s beside to point. Test cube is an absolutely terrible way to calibrate. I wish people would stop recommending it. I’d suggest calibrate the extruder length first, if you haven’t done so.
Following this guide here:
3D printing guides - Calibrating your extruder - YouTube
You might not get the extruder to be exact 100mm, don’t worry, between 99-100mm is best. You don’t want to over-extrude filament, it’ll lead to much bigger problem later on.
Side note: If you are using 8-bit mainboard, it’s best to keep all step/mm parameters round down then use firmware or slicer to compensate for X/Y/E move. It’s probably tall tale but 8-bit controllers barely have any power so just do it to be safe.
Next, you need to check for X/Y level and twist by putting a mini level on each carriage and move to different positions. Since 3d-printers never experience huge amount of forces, there is no need to get super accurate. Just need to be consistent across the whole travel range. Use a circular level if possible to save time, thanks to mass production even cheap ones are fairly accurate.
Then, level the bed by using a thin shim/paper/foile. Don’t fold it, single layer only. Tighten the bed screws all the way and clean the tip of nozzle. Home all axises, then move the nozzle close to each bed adjustment nut and loosen it bit by bit. What you want is when Z=0 the nozzle is roughly 0.05mm above the bed, any less will result in bad first layer and sequentially, your entire print object. Remember to measure and account for the shim thickness and also the bed adhesion layer (if you are using one). It’s best to do this directly on the glass surface.
After that, the X-Y step/mm need to be calibrated. Instead of using calibrate cube, I suggest using this design of mine:
X-Y.STL (38.9 KB)
After printing you need to measure these numbers:
(A + B) / 2 ~= 30mm
If your measurement is over or less too much then adjust your X/Y step/mm accordingly. The aforementioned side note still apply.
C and D should be equal, if not then your X and Y axises are not square. Depend on the design, your machine will need to be adjusted or replace certain parts. Some firmware do have compensate for this to forego hardware issues but nothing beats being mechanically sound.
Screw-based Z axis should not need calibration. Belt ones can be done by printing flipped X-Y part. Most printers don’t have an easy way to square the Z axis so I’ll say look for firmware compensate for it or leave it.
Finally, know your machine’s limits. Most 3D printers are rather flimsy, if you don’t plan to move it then bolt it down to the table/shelf it’s on, alternatively, gecko tape should works fine too. Limit acceleration and jerk to the point of your acceptable print quality. Don’t cheap out on the filament too! It leads to more time and plastic waste.
Regular maintenances is key for any mechanical machine. Oil any exposed metallic working surface routinely, especially ones that relied on sliding friction. 3D printers travel rather fast so use low viscosity oil, personally I use cheap mineral oil readily available for sewing machines, I oil all exposed parts at each startup for a print. New parts should be clean, de-oil, then oil or geese according to manufacturer guide.
Clean the bed before each print for good adhesion (very diluted soap is enough). Each type of bed coating/foil is suitable for certain materials at certain bed temperatures only. Check with seller/manufacturer to be sure, there is no magic universal solution. Small plastic pieces, string, and dust inside the chamber should also be removed or it will introduce Z axis anomaly or even bind the leadscrew.
First layer need to be printed slow and thicker than the rest. I recommend fix it at 15mm/s at 0.2mm height, increase extrusion width as well. Make sure it is laid down properly, overall quality depend heavily on it.
Keep layer height/nozzle size at ~50% or less for better layers adheation.
Don’t oil the filament, however a dust filter is recommended. This can be made using an old cable with ferrite filter:
Do step 2 quickly every 6 months or so to find out any potential problem.
If you have access to a machinist then ask him to tram/square it. That would be the fastest way, the rest you still need to do yourself though.