<p>I have a Tronxy X5S and I am having issues calibrating my X and Y axis. When I print a 20 mm<sup>3</sup> 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.</p>

<p>I have added <a href="https://www.thingiverse.com/thing:2815168" rel="nofollow noreferrer">this</a> upgrade to my printer for the idlers and motor mounts:</p>

<p><a href="https://i.stack.imgur.com/QG60X.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QG60X.jpg" alt="idlers and motor mounts"></a></p>

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

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

<p>UPDATE:</p>

<p>Its seems Oscar was correct in his <a href="https://3dprinting.stackexchange.com/questions/7002/corexy-calibration-issue#7003">assessment</a> that my printer is not printing square. I printed <a href="https://www.thingiverse.com/thing:2563185" rel="nofollow noreferrer">this</a> calibration square to measure the diagonals and I got: <span class="math-container">$ \overline{AC} = 141.82 $</span>, <span class="math-container">$ \overline{BD} = 141.35 $</span>. I believe the correct value for these diagonals should be <span class="math-container">$ \sqrt{2} \times 100 \approx 141.42 $</span>. </p>

<p><a href="https://cdn.thingiverse.com/renders/16/e6/d8/c1/f0/9bb6e035af9cc431b0bb4fa60281c967_preview_featured.jpg" rel="nofollow noreferrer"><img src="https://cdn.thingiverse.com/renders/16/e6/d8/c1/f0/9bb6e035af9cc431b0bb4fa60281c967_preview_featured.jpg" alt="calibration square"></a></p>

<p>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?</p>

[{'answer_id': 7003, 'author': '0scar', 'author_id': 5740, 'author_profile': 'https://3dprinting.stackexchange.com/users/5740', 'pm_score': 3, 'selected': True, 'text': '<p>Indeed, <strong>even belt tension is important</strong>, what helped me enormously to set the same tension in the belts on my self build CoreXY is a tool like <a href="https://www.thingiverse.com/thing:2589577" rel="nofollow noreferrer">this</a>:</p>\n\n<p><a href="https://i.stack.imgur.com/vmQKB.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/vmQKB.jpg" alt="Belt tension measurement tool"></a></p>\n\n<p>Furthermore, be sure that you <strong>do not have any binding on the Y carriages</strong> over the whole range. This causes inaccurate printing, e.g. outer walls not adhering to the inner walls (as I encountered myself in the beginning when tuning the printer), and thus inaccurate dimensions.</p>\n\n<p>Also make sure that the <strong>print is not skew</strong>, i.e. are you sure that the printer prints squares? This can be easily checked by printing a large square and measure the diagonals; I used <a href="https://www.thingiverse.com/thing:2280529" rel="nofollow noreferrer">this</a> as it will also help you find the center of the bed and the level of the bed all at once:</p>\n\n<p><a href="https://i.stack.imgur.com/rcl8Bm.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/rcl8Bm.jpg" alt="Calibration square"></a></p>\n\n<p>but many calibration prints can be found on the internet, e.g. <a href="https://www.thingiverse.com/thing:2563185" rel="nofollow noreferrer">this one</a> but this requires way more filament to print). Schematically this results in something like depicted below:</p>\n\n<p><a href="https://i.stack.imgur.com/c3CRQm.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/c3CRQm.jpg" alt="Schematic overview of a skew print"></a></p>\n\n<p>If it is not square, you can adjust this by using a different firmware like e.g. Marlin Firmware which has options for skewness compensation that can be addressed in the <a href="http://marlinfw.org/" rel="nofollow noreferrer">Marlin</a> <a href="https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration.h" rel="nofollow noreferrer">Configuration.h</a> file. A "cube" that is printed by stacking parallelograms also shows different dimensions is X and Y (one being smaller, the other being larger).</p>\n\n<p><strong><em>Edit</em></strong><br>\nYou mention that you changed the hotend; it is recommended to <a href="https://3dprinting.stackexchange.com/a/6484/5740">calibrate the extruder</a> after changing. Note that a few tenths of a mm are very common, usually X and Y should be in the range of 20.1 mm &plusmn; 0.1 mm for such a calibration cube.</p>\n'}, {'answer_id': 7032, 'author': 'Perplexed Dipole', 'author_id': 11097, 'author_profile': 'https://3dprinting.stackexchange.com/users/11097', 'pm_score': 3, 'selected': False, 'text': '<p>Oscar\'s <a href="https://3dprinting.stackexchange.com/questions/7002/corexy-calibration-issue#7003">answer</a> 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.</p>\n\n<p>In the mean time I created a software fix for this issue. I used a script to add a <a href="https://en.wikipedia.org/wiki/Affine_transformation#Image_transformation" rel="nofollow noreferrer">Affine Shear Transformation</a> 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.</p>\n'}]
['https://3dprinting.stackexchange.com/questions/7002', 'https://3dprinting.stackexchange.com', 'https://3dprinting.stackexchange.com/users/11097/']