CoreXY Calibration Issue I have a Tronxy X5S and I am having issues calibrating my X and Y axis. When I print a 20 mm3 cube it comes out 19.9 mm x 20.4 mm x 20 mm. I have already made the belt tensions as even as I can get them but it did not change the calibration cube size.

I have added this upgrade to my printer for the idlers and motor mounts:



I have also upgraded the hotend to a V6 clone, after this change is when I noticed the discrepancy in the calibration print.

What else can cause the X and Y axis to be uneven in a CoreXY printer besides uneven tension in the belts?

UPDATE:

Its seems Oscar was correct in his assessment that my printer is not printing square. I printed this calibration square to measure the diagonals and I got: $ \overline{AC} = 141.82 $, $ \overline{BD} = 141.35 $. I believe the correct value for these diagonals should be $ \sqrt{2} \times 100 \approx 141.42 $. 



Oscar also mentioned that I can adjust my firmware to correct this but I would rather fix the problem than apply a band-aid. Does this indicate that I did not assemble the printer frame correctly?
Oscar's answer is the correct solution to this issue. My printer was printing skewed and there is a built in correction for this in Marlin. Unfortunately the X5S does not have a boot loader and I don't have an ISP programmer (yet), so I am unable to re-flash my board at the moment.

In the mean time I created a software fix for this issue. I used a script to add a Affine Shear Transformation to the stl file. This adds a reverse skew to the model so the print comes out (closer to) square. Basically read all the points from the triangle mesh (STL file), apply XY shear transformation preserving Z, re-save the STL.