That’s because brushless DC motors require carefully timed signals used in a process called Electronic Speed Control (ESC). [Fileark] built and ESC using an Arduino and has a couple of posts ...
The solution is named Ethersweep, and is a small PCB stack that sits on the rear of the common NEMA17-format stepper motor ... with Arduino covering the firmware and host control side in python.