External stepper driver, motor hissing



  • Hello,

    I'm trying to add additional U axis to my 3d printer using E2 on expansion board. As external drive I used A4988 stepper driver.
    I got everything wired up, I created U axis which seems to work but whenever I try to move motor it wont and instead makes high pitch hissing noise. When I touch shaft there is a bit torque but very little. I tried different A4988 drivers as well as different kind (which I cannot identify) with same result. Motor is also fine as I tested It on E0 driver, I also used M564 S0 H0 command to disable endstops.

    Here is my wiring, maybe there is something that I missed (except for stepper motor 🙂 )

    External stepper duet.png

    Please free to criticize my code as I'm not sure if my stepping is correct. It works for me so far.
    edit
    I lowered number of steps on U axis and now motor behave differently. It still doesn't work but motor makes small movement back and forth like when you wire it incorrectly.
    I'm pretty sure I have coils wired correctly but I tried different combinations just in case.
    I ordered new genuine Pololu a4988 driver and breakout board for it, I hope it will help.

    ; Drives
    M569 P0 S0 ; physical drive 0 goes backward
    M569 P1 S0 ; physical drive 1 goes forwards
    M569 P2 S1 ; physical drive 2 goes forwards
    M569 P3 S0 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes forwards
    M569 P5 S0 ; physical drive 5 goes forwards
    M584 X0 Y1 Z2 U5 E3:4 ; set drive mapping
    M350 X16 Y16 Z16 U16 E16:16 I1 ; configure microstepping with interpolation
    M92 X145.25 Y145.25 Z717.5 U5 E425:425 ; set steps per mm
    M566 X1500.00 Y1500.00 Z12.00 U120 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z1500 U60 E1200.00:1200.00 ; set maximum speeds (mm/min)
    M201 X1000.00 Y1000.00 Z200.00 U60 E250.00:250.00 ; set accelerations (mm/s^2)
    M906 X1500 Y1500 Z1500 U1200 E1200:1200 I20 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 U0 S1 ; set axis minima
    M208 X320 Y320 Z330.3 U50 S0 ; set axis maxima

    ; Endstops
    M574 X1 Y1 Z2 U1 S0 ; set active high endstops



  • @Arkadiusz said in External stepper driver, motor hissing:

    M350 X64 Y64 Z32 U16 E64:64 I1 ; configure microstepping with interpolation

    duet 2 does not support interpolation at 32 or 64. only at x16



  • This post is deleted!


  • @Veti
    It worked for me so far, so did drivers just run all this time at its maximum interpolation of x16? If I change it to x16 do I have to adjust steps?



  • @Arkadiusz said in External stepper driver, motor hissing:

    It worked for me so far, so did drivers just run all this time at its maximum interpolation of x16? If I change it to x16 do I have to adjust steps?

    no you ran the driver at the microstepping but without interpolation.
    and yes if you change the microstepping in your config you need to adjust the steps



  • @Veti Thanks for pointing that out. Now I hope someone knows answer to my main question.


  • administrators

    The only type of move that is guaranteed to work before homing is a G1 H2 move with axes in relative mode because you sent G91 first, e.g.

    G91 G1 H2 U50



  • @dc42 said in External stepper driver, motor hissing:

    G91 G1 H2 U50

    M564 S0 H0 worked to disable xyz endstop so It also should work for U axis.
    I tried G91 G1 H2 U50 but it there was no difference.

    I'm awaiting delivery of new driver with carrier pcb that includes capacitor and dip switches for microstepping. Hopefully there is something missing in my setup that pcb will fix.



  • Pcb breakout board for stepper driver arrived, this solved my issue.


Log in to reply