ST820 stepper drivers


I like to fiddle around with new electronic components and got my hands on some ST820s. I found them on the aliexpress fysetc official shop and they were delivered to Germany pretty fast, at least for China import standard shipping times. Delivery took about 3 weeks.







At first I had problems to get them up and running in my test setup, a basic ramps. I didn’t get them to turn the motors, they only made a loud whining sound. I messuared the voltage, the ST820s came preconfigured with 0V. Vref settings are calculated with Vref=A/6.8, while A is the current of your stepper motors. This is the maximum you should use. I’m using 2.5 A steppers, this results in 2.5/6.8=0.3676 V. I wanted to keep some safety and set my Vref to 0.275 V. Next try, still no turning, loud whine.

Regarding the wikipage from fysetc the jumper settings are as follows:

MS2 MS1 MS0 Step Mode
0 0 0 Full-step
0 0 1 ½ step
0 1 0 ¼ step
0 1 1 ⅛ step
1 0 0 1/16 step
1 0 1 1/32 step
1 1 0 1/128 step
1 1 1 1/256 step

My test setup still had all 3 jumpers in, which meant 1/256 step. This was still too much for normal nema17s. I pulled out the one in the middle to get 1/32 step and changed the steps per mm for my driverslot, X in my case, to 160 steps (using 20T pulleys). Next try, still no turning, loud whine.

Since there is not much information available , I asked for advice in one facebook groups and came across someone who had figured out that you need to invert the enable pin in order to get them running (thanks Roy). In marlin you need to change the following:

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
// :{ 0:’Low’, 1:’High’ }
#define X_ENABLE_ON 1
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders







I inverted the enable pin on driver X and tried again, this time with better luck. The stepper was turning at the expected speed, the whining was gone.