Стало понятно, что не так с высокой частотой ШИМ...
В общем, ничего таинственного.
Вся схема (дроссель, кондёры и т.п.) выбрана исходят из внутренней частоты в сотни кГц.
Если ШИМ, например, герц 500, то и ток на выходе понятный - прямоугольники размахом от нуля до максимума (не идеальные, с затянутым фронтом на спад тока).
А если вот уже 32 кГц например залупить, то конденсаторы не успевают разряжаться, ток фактически постоянный. Поэтому наблюдается нелинейная регулировка его величины (за 50% ШИМ уже максимальный ток набирается). Наверное, потеряв разрешение раза в два, преобразуя входные данные, можно получить линейное регулирование тока.