Feedback Please: Sister driver on gShield Y

I still have some testing to do but I feel it is likely that the two NEMA 23 motors on the Y draw too much for the DRV8818 on the gShield to handle. I am starting to explore options should that prove to be the case. Among my concerns there is no fault detection or compensation anywhere in this open loop system. That is a bit hard for me to handle. In any case I would like to connect gnd, vcc, step, dir, enable, and vmot of the Y axis to something like a pololu DRV8825 board and I would like feedback.

Thank you,

the gshield can easily drive the two nema 23 motors i would first check that your rails are aligned and also that your belts are not to tight… if you are concerned you can always find a third party board that has 4 axis and tie two of them together or buy a higher current cnc controller all together.

“Gesundheit” :wink: AronRubin

I have not been having any problems so far with driving both 23’s of the same chip.
I recently replaced 2of the stepper drivers in my 3D printer. That was relatively easy because they were on their own board. I just had to adapt existing board to fit. on the gShield it might be a bit more challenging to figure out which pins to solder to, but it should be doable as the main board has to send those signals to the gShiled in the first place.

There are other controllers out their if you want to forgo the stock controller. For example there is smothieboard, which you can get with 4 or 5 drivers, so you can drive each Y motor on its own chip. (I believe it has a configuration mode for that)

My thoughts on feedback:
Yeas ago I upgraded my MaxNC cnc from the cheaper open loop system to a closed loop, thinking it would give me better accuracy and speed. This was a mistake.
The feedback circuit was prone to all kind of crazy RF interference from the RF nose cause by the brushes in the spindle motor. This would cause it to lock up all the time, especially on very long prints.
Yes high end professional machines have feed back circuits, but they also have high end spindles and tones of RF shielding.
I gave up on my CNC for years until I got a 3d printer. It is open loop and belt drive and runs at CRAZY speeds compared to my old MaxNC. It is accurate enough. So this made me rethink my old CNC.

Looking back on it I realize my main mistake was thinking that better accuracy = better quality. This is true to a point. But I have found that there are lots of other factors that will affect quality. Material, design, print profile, bit, spindle, etc.
And many of these have a greater impact on accuracy than any difference provided by open loop vs closed loop.
And unless I was doing professional jewelry or high end circuit board design I don’t think it would even be noticeable to me.

The other mistake I made was thinking closed loop = faster.
I later learned that close loop would compensate for missed steps. If my drivers are set right missed steps are not a problem. In the case of my old CNC I would have been much better of upgrading to a higher quality open loop controller, one that would not skip in the first place, than adding a feed back loop to adjust for missed steps. :frowning:
And, as in the case of accuracy, there are lots of other factors that effect speed. And in my case the biggest limit was the spindle motor.

I have learned my lesson. Yes on paper closed loop is better, but that doesn’t make open loop inferior.
Feed back, and limit sensors are nice but any spindle with brushes are going to make that a real problem to implement.
And unless you are willing to go with a brushless or compressed air driven spindle (options I was pursuing before giving up) I don’t think it is worth the hassle.

And for the materials and projects that I plan on using is it not a issue.

Good luck and good carving!


pololu DRV8825 board and I would like feedback

This device will not provide much improvement. With the Inventables setup using the gShield you have a driver with a theoretical 2.5 amps per phase. Divide that for two stepper motors in parallel and you would get approximately 1.25 amps per phase.

Using one DRV8825 per stepper motor you would get a theoretical 1.5 amps per phase. About 20 percent improvement.

Neither driver will reliably deliver the theoretical current without some form of heat removal.

I think he was talking about adding two chips, sharing the same inputs, with each drive its own motor


I think he was talking about adding two chips

Yeah, that’s what I said - “Using one DRV8825 per stepper motor”

He’s using two motors with one chip per motor that’s two chips. Each motor would still theoretically get 1.5 amps per phase because the DRV8825 is limited to 1.5 amps.

Thank you everybody for the feedback. I decided to hold off on this project. I added better cooling instead and I will focus on other upgrades or perhaps the X-Controller. @LarryM I have had my fair share of loop closing problems (I work in robotics). However, I am very confident closed-loop in some form is a better approach unless we want to use steppers so big as to exceed reasonable cost. I can tell you that I have seen artifacts even from the Tormach P1100. Also, there are many ways to close a loop. I am even considering (out of desperation) generating a post processor that will re-home the machine after a certain number of movements. One of the problems with the gShield as it stands is the DRV8818 have no fault line so you cannot even detect a known fault. Even if it did grbl has no fault line code yet, although abort or feed-hold lines could be used.



You have some good points, but keep in mind what we have here. This is an entry level machine and has a lot of capabilities for the money.

There’s a reason professional CNC machines cost so much.

Agreed, but at the same time, part of my goal is to use cheap hardware with vastly smarter software to produce better results. For example I am testing “high speed machining” tool path strategies like in this video. If I can calculate a path around the maximum force that I can deliver then I can deliver the precision with any machine that can be consistent.

Hey, that’s pretty interesting. I have seen several carving problems on this forum where the solution was that the feed rate was too slow. Worked much better at a faster feed.

More than just the feed rate it is about tool surface engagement and chip ejection. Slotting is a horrible thing, not only are you engaging too much of the tool’s circumference but you are cutting in two directions at once. The effect is heat in the tool and chattering. It is also better to engage the teeth along the flutes than just the end face. Spiraling along a part allows the engagement of a specific amount of tool circumference which in turn allows a predictable workload. You should be able to start with a machine’s performance parameters and produce a tool path that stays within that envelope. The next step would be to adjust the tool path more dynamically based on sensed workload and perhaps thermal properties.

So, why wouldn’t you drill a hole a little larger than your end mill at the point of the milling that is the deepest, change tools to the end mill and start milling your way out? Almost like milling from the inside out.

Pre-drilling is a good alternative to helical ramping or the conventional method of plunging (yuck). Also drills are cheaper. However I suspect that is less common for machines that do not have a automatic tool changer. For something like x-carve it would be even worse because there is no modular tooling system. Unlike a Tormach, z-zero is invalidated every time you change the tool in the x-carve.

Hi, Aron.

I had the same concern initially, because I had to increase the y-axis current using the y-axis current potentiometer due to y-axis binding caused by the motors being underpowered. And this temporarily solved that problem, but I used an Ogee bit for one job that causes a lot of y-axis drag, and that did in fact overheat and kill the DRV8818 chip (so much for the thermal shutdown feature of these chips!).

Initially, I was going to give up on the g-shield, but I found that other solutions can be fairly expensive and logistically difficult (such as requiring a parallel port and/or expensive software like MACH 3). Moreover, it appears that most other driver chips have similar or only slightly better specs, and it’s not clear that they would work any better in the long run.

So, here is what I did: First, I replaced the DRV8818 chip (found it on DigiKey for about $5), adjusted the potentiometer so that the y-axis had just enough current to work well consistently and then put fairly large heat sinks on all three DRV8818 chips.

Since I did this, I have given the y-axis many good workouts, and with those heat sinks in place, the DRV8818 chips barely get warm to the touch, even under load, and I have had no further issues.

And you can correct me if I am misunderstanding your comment about fault detection and compensation, but as long as both stepper motors have enough current, they don’t miss steps and no compensation is necessary for them to stay in synch and work reliably.


John that is a big if to rely on. After my enhancements I have had no problems with axis motions. However I would like to get to the point where I can feel comfortable leaving the machine unattended for at least one operation. If the machine just stopped on a fault/error condition I would have that comfortability. As it stands if there is a fault/error the X-carve will just wander or plow through the stock or crash the tool.

I hear ya, Aron. I didn’t fully understand what your concern was. Yes, with the default configuration with no fault detection, you are taking a risk by leaving it unattended.

Is this similar to HeeksCAD having a milling strategy of starting in the middle and working out?