Good morning,
I'm a beginner in the realm of CNC so if in my post I misuse any terms, misunderstand any core concepts, or am just generally wrong about how any of this works please feel free to correct me. I've looked around the wiki and the internet in general for the last day or so and can't find a clear answer to my question, so here I am.
We recently purchased two of these units:
https://www.bravoprodigy.com/engraving/desktop-cnc-router/desktop-cnc-engraving-machine.html
for a project and, while being a great hardware platform, for these reasons I've decided to replace the controller with a TinyG controller:
1. Control SW & GUI doesn't meet our needs.
2. G code implementation is incomplete.
3. Spindle control is very limited, it only varies speed between 50 - 100%.
4. They pre-pend some Z axis movements to every G code sequence, this is irritating.
After reading up a bit on CNC, G code, stepper motors, and available controllers I determined that the TinyG would be a perfect swap-in replacement for the existing controller. I was almost right, too. The power supply, fan, limit switches, emergency stop (reset), X, Y, and Z axis stepper connections were quite simple to identify and make and test.
Unfortunately the spindle stepper motor is causing some problems because, as my favorite new coworker figured out, it is an eight-wire 3 phase brushless DC stepper. Below is a picture of the motor label:
[image: CiKPf2aC4dHBhJjc9, no longer available]
In case the image doesn't display properly here it is in text form:
BLDCMotor BL42 Series
Type: BL42S24D4R002A5015
24VDC 80W 15000RPM
It's a pretty good motor but is more powerful and faster than we need so if at the end of the day it's easiest to just swap it with something TinyG supports I'm OK with that; please advise.
This is an example of how this motor works and should be controlled:

In short:
1 Wire for each phase (3 wires)
1 wire for each position sensor (3 more wires)
1 wire for VCC (+5)
1 wire for GND
for a total of 8 wires.
Looking at the Motiontech motor diagram:
PIN Function
1 U
2 V
3 W
4 Vcc
5 GND
6 S1
7 S2
8 S3
So my understanding is that TinyG does not natively support this kind of motor and that my only option is to build my own motor controller with six drivers which accepts PWM input from the TinyG. Please let me know if this is incorrect. (And the TinyG would likely overheat trying to drive this motor anyway, right?)
I'd rather not go down that road so I looked around here for posts about external spindle controllers and found this:
However:
1. It's no longer available.
2. I'm pretty certain it's not for 3 phase motors.
What I'm looking for is one of two solutions/recommendations:
1. Is there a product similar to the controller above which makes use of this motor in conjunction with TinyG a simple installation?
or
2. Recommendations for variable speed spindle motors that plug in to TinyG and 'just work'?
a. 0-10,000 RPM
b. Controllable RPM via G code
c. Low torque requirement; this is being use to polish, not remove material
Sorry this post is so long but I wanted to include enough detail to get the help I need. Thanks for reading, let me know what you think or if you need more information.
- Chris