EEPROM _does_ have a lifespan in terms of the number of write cycles it takes, but it's 10,000 or so, I don't think that's the issue. If it was corrupted, you'd be getting more oddly changed numbers too, rather than just proportionally diminished.
One thing to know is that only machine width and machine height are actually stored in the arduino - all the rest are used exclusively by the controller.
However, I noticed that your mm per rev had changed, and tried that: bingo. Upload 700mm wide machine with 95 mm per rev, then change to 94 mm per rev, then the machine width is pushed down to 693.
I don't know if this is the effect that you're seeing exactly, but I can confirm that mmPerRev and stepsPerRev are kind of "master number" that all the other ones depend on. Internally in the polargraph, the machine width is expressed in steps, but converted to mm when downloading the spec.
So when you change the physical size of the steps by changing the mmPerRev, you change the physical size of the machine - it doesn't recalculate the machine width.
To be honest, this has never been a problem, because mmPerRev and stepsPerRev have always been very static, fixed values. This is probably the first time that those values have been modified other than during an initial setup. If this is the same problem you're seeing, I'd recommend doing your machine spec uploads in two stages - first change the mmPerRev and/or stepsPerRev, then do it again to make sure the machine width and height is properly set.
Also worth mentioning that it's best to change those two values by editing the properties.txt file, rather than by using the UI. I'm sure you've already noticed it tends to mess the other measurements up.
I'll have a think about the best way to fix this.
sn
|