I've been researching this function a little bit and understand it's purpose. But almost all of the info i've seen is regarding finding the minimum pulse width with the intentions of speeding up the steppers without loosing accuracy.
In my situation i'm running at lower speeds and would like to increase the torque and holding capabilities. So increasing the MinPulseWidth would generate higher torque? I understand it may be only a small increase, maybe not enough to notice, but it would be an increase of some sorts. is that correct?
I've had a little experience with PWM, and from what i've seen, concerning servos. there is a set frequency, and the length of the pulse width controls the servos position, but with steppers, there's usually a set pulse width, and the speed is controlled by the input frequency, and the pulse width is how much juice the coils are getting between each step. is that correct?
I have an oscilloscope but haven't hooked it up to it to verify that yet. So i'd figure i'd ask instead.
The pulse width has no effect on torque. The pulse is just a signal to the stepper motor driver that it is time to make step. Some drivers need wider pulses than others. You need to read the datasheet for the driver to find the facts for your particular driver.
For example the Allegro A4988 stepper driver specifies a minimum HIGH (or LOW) pulse width of 1 µsec
i got it now. i looked up the datasheet for my TB6600HG and it's minimum is 2.2 µsec. which is well below what the accelstepper library can do. i guess i got confused because you can control the brightness of an LED and DC motors by controlling the duty cycle at a given frequency, which i thought could be similar to steppers, which i guess they are in a way, but all of those values are fixed within the driver and can't be tinkered with.
Stepper motors work in a very different way from regular DC motors (or LEDs). All the Arduino needs to do is tell the stepper driver when a step is needed and the driver does the rest. If the current in the motor coils is about to exceed the permitted current then the driver will implement something like PWM to prevent that - but this happens during a single motor step and the whole things starts again for the next step. It is not averaged over several steps.