Stepper motors & mitigating their electrical noise

I’m planning to use an ESP32 with the DRV8834 stepper motor drivers to drive these mini 3V bipolar stepper motors. In my application, space is a severe constraint so the power supply for the ESP32 and stepper motors will be a single LiFePO4 18500 3.2V battery. Attached is a crude ‘schematic’ for reference.

  1. Can the enable pins of the two DRV8834s be connected to just one of digital GPIO pins of the ESP32 or should they have independent GPIO pins? I realize the former would enable both stepper drivers even if only one is being used.

  2. This Pololu article has great tips for reducing electrical noise with DC motors. However, it doesn’t mention anything about stepper motors. Can the same techniques be applied to stepper motors and if so, how given the motor phase wiring? In the ‘schematic’ I’ve attempted to implement these techniques but am not sure if they are correct.

  3. Does the DRV8834 already have electrical noise suppression? For example, I’m wondering if the control signals from the ESP32 to the DRV8834 may also need noise suppression capacitors.

As space is tight, all of the electrical components will be in very close proximity, so I’m concerned about electrical noise. Any suggestions for the circuit or pointing out of errors are appreciated. I couldn’t find any similar projects after many hours of searching (ESP32 w/LiFePO4, stepper motors, and electrical noise suppression). Note: while battery powered for use, it will never be used will charging with 5DC USB charger.

Regarding question #2, per Pololu Tech support, adding capacitors across stepper motor leads is not recommended as it may interfere with the driver’s automatic current limiting. Thank-you for the insight!

I have attached a revised schematic to reflect the recommendation.

Edit: corrected several problems in revised schematic.

Hello.

Yes, you could connect the nSLEEP pins of your two DRV8834 boards to the same I/O on your ESP32 as long as you are okay with both drivers being enable and disabled together.

Regarding the rest of your questions about electrical noise, it sounds like you are asking about noise in a hypothetical system based on something about brushed motors that is not relevant to stepper motors. Your particular system could have all kinds of noise, and for all we know your switching regulator might introduce more noise than the stepper motor portion of the system. Once you actually build the system and have noise problems, you can characterize it and share that with us (e.g. oscilloscope screenshots with corresponding pictures of the setup and descriptions of what bad thing is happening) so we know what we are talking about. (And that will be something specific to your overall system and its execution, not just a stepper motor thing, and what you do to fix it will depend on the particular problem you have.)

Separately, we doubt the diodes you have there are good, but if you want to try that you should at least have substantial capacitance on the driver side of the diodes.

- Patrick

1 Like

Thank-you Patrick! While researching on other forums, I came across several situations in which the stepper motors were reportedly emitting significant electrical noise affecting the MCU. As the components will be in a very small space together, I was trying to mitigate potential electrical noise problems. However, it seems that perhaps a simpler circuit should be attempted first without the diodes and capacitors. I just was trying to avoid ordering parts, finding problems, order more parts, waiting…etc. Thank-you for the insights!

Since no details of those complaints are given here, I would suspect inadequate stepper motor power supplies, leading to large voltage drops as the problem, rather than noise generated by the motors.

Steppers don’t have brushes, which generate phenomenal amounts of electrical noise, extending well into the radio frequency spectrum.

BTW with those tiny high impedance steppers, and low motor supply voltage, you don’t need a current limiting stepper driver. A brushed DC motor driver will work just as well.

2 Likes