Track My Order
Frequently Asked Questions
International Shipping Info
Mon-Fri, 9am to 12pm and
1pm to 5pm U.S. Mountain Time:
Chat With Us
January 16, 2008
about 8 months ago
Yep, In AutoDriver.cpp,, change the following function to read to something similar to this:
pinMode(51, OUTPUT); //Adjusted for Mega. MOSI used to be 11 on Uno
pinMode(50, INPUT); //Adjusted for Mega. MISO used to be 12 on Uno
pinMode(52, OUTPUT); //Adjusted to Mega. SCK used to be 13 on Uno
pinMode(53, OUTPUT); //new line added for SS for mega on pin 53, it's 10 on Uno.
The last line is especially important, as if you don’t set pin 53 to output, the mega will be randomly put into slave mode, and nothing will work.
about 2 years ago
List of Quirks I’ve found so far, after working with this for a year:…
1) While motor is running, you cannot: change acceleration, or use setPos()… If I recall, you also cannot call another goTo().
2) If you call a run direction command before the existing one has finished, It will run crazy.
3) number of steps the chip keeps track of overflows at plus and minus 221 (~2 mil).
4) You cannot setPos() to a negative number directly… You’ll have to set it to a number that overflows its 21 bit register to switch that 22nd bit to make it a negative number.
Will add more as I run into these…
The library is has a little bug in in it. AutoDriverConfig.cpp, line 34 reads
stepModeConfig |= (stepModeConfig&0x07);
This should instead be
stepModeConfig |= (stepMode&0x07);
See the simple typo?
So far it has given me microstepping. Have not yet tried to see if the automatic transition from micro to full steps works. I will report back if I find evidence of any unsolved problems.
Edit 1: Keep in mind that now, when you call goTo(steps), it uses microsteps, not full steps. (eg, 1 rev on a 200-step motor at 128 microsteps is goTo(25600);… other things, though, like maxSpeed() or run() use full steps.
No public wish lists :(
Forgot your password?
No account? Register one!