April 26, 2014 at 11:34 am #21836
OK, I’m back at this after a long pause to clean up some other projects. I’ll answer your above questions in several steps.
1) I tested out the latest version of your updated Inkscape extension. It works quite well! As you say, the input voltage measurement is about 400mV or so less than the actual input voltage. But other than that it tracks quite nicely.
I got out my current probe, and measured the actual motor current going into the EggBot steppers and compared it (at various pot rotations) to the value reported by your extension. Here’s what I came up with:
Inkscape says 1087mA : Real is 1250mA
Inkscape says 1548mA : Real is 1900mA
Inkscape says 649mA : Real is 750mA
Now, I was running at about 15V of input voltage for this, and my current probe is not super accurate. But it’s clearly working – it’s just not dead on.
There is a potential problem though – just because the pot sets the current limit for the motors at some value x doesn’t mean that the motor will actually receive that current. There are other factors that could reduce the actual current going into the motor. For example, if the input voltage is too low, or the motor coil resistance is too high. Either of those could mean that your actual motor coil current is less (and possibly much less) than what the pot says. I still think your addition is a good one though!
2) I have confirmed that sending 0 in for a SM duration value will cause problems. I’ll fix that right away today if I can.
3) I have not been able to reproduce a problem with negative values for the duration. With 2.2.3, it seems that using negative durations simply generates an error (as it should) of “!5 Err: Need comma next, found ‘-‘”
4) About the reversed SP action in the new version – this is clearly a problem. I will update the documentation and the code to mimic the older EBB firmware. Having backward compatibility is the most important thing for all of these firmware versions.
5) Your problems with some microsteps having little to no movement (where you see ‘pauses’ in your video) is very likely because the combination of too-low of an input voltage, too-high of a motor coil resistance, and too-low of a max current limit set with the pot will create a situation where the motor driver isn’t able to properly create the correct current for some of the microsteps. This will normally appear as a ‘pause’ in the microstep cycle (when looking at actual motor position) and then a jump.
To fix this, try decreasing the max current setting via the pot and try again. If that doesn’t help, up your input voltage and then play with the pot again to see if you can make it go away. I’m pretty confident you’ll be able to solve the problem this way
More to follow later.