I'm using this Cloudray 2-phase stepper motor driver DM422S to drive this Cloudray Nema 17 stepper motor (52Ncm 1.8A). I connected the signal ports for ENA+, DIR+ and PUL+ of the motor driver to the 3.3v pin (pin 1) on the Raspberry Pi 4 GPIO header to provide the required high signal. The motor driver accepts 3.3v signal level and everything works well. I can control the motor without any issues from my Raspberry Pi 4.

However, in this Instructable "Raspberry Pi, Python, and a TB6600 Stepper Motor Driver" the author recommends against "trying to source the " + " sides of the PUL, the DIR and the ENA signals with 3.3 VDC from the RPI.". Unfortunately, the author doesn't give further explanations.

I now wonder how safe it is to use the 3.3v pin. So far I ran the motor only for a few seconds for some simple tests. In a future project though, the motor will run longer (ca. 10 - 20 minutes).

The manual for the motor driver specifies a range of 7mA - 16mA current for the signal ports. This seems to be well below the maximum permitted current draw of 50 mA from the 3.3 V pins.

  • I would not power anything inductive in nature to any Pi pin. Please post your annotated schematic, not a frizzy picture.
    – Gil
    Aug 17, 2022 at 20:04

1 Answer 1


Each device will have specs which lists the accepted voltages and current needs where relevant.

Given that the Pi meets those specs there is no harm in using the Pi to drive the device.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.