I was of the opinion today that my DRV8825 axis steppers were to blame for an issue I was having.
This was not the case, and I later found it all the problems I was having was just due to one of the extruder step-sticks having lost a good connection to its heat-sink, and overheating selectively.
Solving for a solution which avoided the resulting inconsistency produced some close,, but still unusable prints for gears. In any space other than modeling fine pitch inside gears, I probably would not have noticed this issue at all honestly. But, here it matters.
So I ended up removing the set of three water cooled DRV8825 modules I had.
I replaced them with three AMIS-30543 modules stuck on some perfboard, and an Arduino to handle the SPI configuration required. I copped out to doing it from the Beaglebone, but more on that in a bit.
I had always intended to try out the SPI interface for additional steppers, but I actually didn't have enough free pins left on the Beaglebone to implement more than a single channel of SPI and you can't chain these modules without a CS pin per module.
I had run out of individual pins to do this.. Yes... I ran out of pins on a Beaglebone Black. I'm kinda proud of that...
Instead of re-organizing everything and breaking the CRAMPS paradigm in the process, I just added an Arduino Pro Mini to handle the SPI configuration of the modules, and then I trigger the toggling of the enable/disable SPI based flags in the modules by reading a pin on the Arduino. In other words, it was a drop in replacement.
Short answer, everything works again, and is a little better than it was before. I did like my water cooled stepper drivers though...
I'll put the arduino code I used here, adapted from some example, up here soon.