I’ve seen the same (and also negative values)
It’s not really a hardware issue, more a scaling issue for parameters, in the patch.
I think the cause (certainly in my patches so far, which I’ll be improving ) is a too trivial scaling.
a pot ideally goes from 0…1 , but in reality due to various things, its probably going -0.0001 to 0.999938.
so lets say you want to have a range 0 to 100, a trivial implantation is
[knob] ->[*100.0] -> [int], but as int rounds down this will give you 0…99.
a ‘minor improvement’ is to add a bit e.g.
[knob] -> [+0.05]-> [*100.0] -> [int], so now this pushes it to (e.g. 100.04), which rounds down to 100
the trick is the ‘bit to add’ is dependent on the range, you need enough, to push over 100 (in this case), but not too much that you push 0% to 1%.
also, I’m not sure about all patches, but for mine, is largely a display issue only…
I like to display as integers percentages to keep the display tidy, but actually I use the value at full resolution… i.e. it might read 99%, but it if you have it fully turned clockwise, its probably more like 99.9998 (similarly, you can actually dial in between other values e.g. between 50…51%, is only the display that is stepped)
perhaps mother.pd could be improved slightly, especially stopping negative values, it cant really solve this, as you need to do the offsetting depending upon the target range - and usually better if the patch has the flexibility of dealing with this issue.