step_scale - количество шагов на единицу длины. вот её и корректируют иногда, когда это действительно нужно.
НО больше чем уверен что у тебя проблема не в этом. А например банальное отгибание фрезы/отсутствие черновых проходов, гнется сам станок, люфт где то там ещё.
Ибо я даже на самых хреновых швп китайских не видел таких отклонений. Неравномерность винта стабильно попадает в их допуск - С7, а это 5-6 соток отклонения на 300мм, плюс люфт гаек без преднатяга может быть до десятки в плохом случае. Но никак не неравномерность шага винта в 0.5 на 50.
Так что ищи где там у тебя люфтит и устраняй, либо разбирайся с траекториями резания. Измеряй люфт индикатором во всех узлах последовательно, проверяй гайку, и сами опоры винта - в них могут быть радиальные подшипники без натяга, они тоже могут люфтить. А в настройки шагов на мм лезть тебе не нужно.
Если уж никак не получучается, то есть два других варианта:
первый это компенсация люфта - в ini в разделе joint добавляется параметр BACKLASH = ...
https://linuxcnc.org/docs/html/config/i ... :joint-num
Второй - нужно измерить карту винта и записать её в COMP_FILE (описание там же по ссылке, ниже backlash)
в файле построчно пишутся триплеты значений
[координата перемещения] [истинное значение в прямом направлении] [истинное значение в обратном направлении].