Fighting with computers

Computers are not always friendly.

Sunday, November 18, 2012

Driver update

A few days ago I learned in the RepRap forum about a new stepper driver from Pololu using the DRV8825 from Texas Instruments. I have read good things about this family of drivers being more robust and higher current than Allegro A4988. Well, thanks to the kind offer from Pololu I've got a few units for testing (at a huge discount) and my first impression is pretty good.

This may well be the answer to get a direct drive extruder that does not suck. I have detailed in past posts how I was unable to get a successful direct drive extruder working in my system, as I was needing more current that my electronics were capable of, for my extruder to work reliably at medium speeds. This new driver seems to be able to push 1.5A without the need of active cooling. The manufacturer claims that up to 2.5A per coil are possible with proper cooling.

Next stop is to use them for powering a CNC machine with beefier nema23 motors.


  • At 9:34 pm, Anonymous Chucktastic said…

    I see that you had to make some modifications to get this driver to function on your RAMPS board. Would you be able to go into any detail about what you had to do?


  • At 9:35 pm, Anonymous Chucktastic said…

    Sorry, I see that's not a RAMPS but something else. Sanginololu perhaps?


  • At 10:15 pm, Blogger Miguel Sánchez said…

    Just a pull-up resistor is needed from +5V to /SLEEP pin. I've used 4K7.

    Board shown is a Sanguinololu, kind of little brother of RAMPS.

  • At 10:39 am, Blogger Ramon Janssen said…

    Hey! I saw your comment on a website that discusses GRBL, about how you adapted a Sanguinololu to work with GRBL
    What kind of mods did you make? I have built several 3d printers and am waiting for my shapeoko to arrive while i'm trying to get GRBL on a sanguinololu :)

  • At 10:46 am, Blogger Miguel Sánchez said…

    Hi Ramon,

    Not exactly so: I have adapted Marlin firmware to be used to control a CNC machine (both, small one like ShapeOko and a larger system, for which I use beefier drivers instead Pololus).

    GRBL is designed in a way that all outputs should be in the same output register. I am afraid this is not compatible with the way outputs are in Sanguinololu or RAMPS design. Major rewrite would be required then.

    Therefore simple solution is to use Marlin instead. There are some g-code details that are different so HelloWorld file won't work nicely with Marlin (among other things Marlin needs a G1 before each new coordinate value, while GRBL does not).

    Later, a friend gave me away a GRBL shield and Arduino UNO which is what I have installed right now in my ShapeOko :-)

  • At 11:06 am, Blogger Ramon Janssen said…

    Thanks! I was just thinking of using Marlin, is there anything else i should know about that, or could you share your files?

  • At 11:01 am, Blogger Miguel Sánchez said…

    Hi Ramon,

    I reckon it was just stock Marlin. However, as Marlin has been evolving over time, last time I used it for CNC machine (which was not for a Sanguinololu but for a Mega) I had to shorcircuit the thermistor check or it will refuse to work.

    Two ways of doing that (software & hardware) the simplest one is to put a 47K resistor on the the hotend thermistor input (it will make it think hotend is 240C or so).

    Alternatively you can remove the call to kill() when hotend temperature is 0 (that is considered a sign of hardware trouble). I reckon this is what I did with this code


Post a Comment

<< Home