Clearpath HLFB wiring with Mach4

Hey all,

I built my own ragtag controller because I wanted to use Teknic Clearpath servos for my Benchtop Pro 2436. I needed a way to wire the High Level Feedback circuit in the servos to fault out all with any issues. This is due mainly to the fact I do not want the machine to rip itself apart if 1 of the dual Y axis motors fails. I think I have it figured out but want to run it through the forum before final wiring.

  1. I wired the HLFB+ and HLFB- as inputs to a 4-relay board as below. This supplies 1 output signal to an input on my BOB. If 1 drive fails, the signal is interrupted.

  2. I created an input on the ESS called Drive Fault (P1-10)

  3. I needed a way to E-stop the system if this pin toggled. I took a lesson from the existing Screen Script and added the line below.

Reckon this will work? Don’t want to let the blue smoke out.

Well, unless you seriously undersized the motors I doubt you will get HLF high before they would destroy the r&p on your machine.

It might help in startup seeing as it would never release e-stop should one motor fault. But you have the same issue with steppers and that is such an edge case that most people never consider it. Usually the homing sequence exposes that problem.

Personally, I use the HLFB as torque and power for real-time analysis. Much better usage of the HLFB.

Maybe exaggerating a bit on the destruction it would cause. Remember, it’s a Benchtop Pro so No R&P, all ballscrew.

Just want the safety of the HLFB loop to prevent any damage that could occur.

My one “incident” that way was when a limit switch failed, and the X ballscrew sent the Z carriage right out through the side of the machine during homing… Granted, the machine was made of wood, but it serves as a reminder just how stupidly (and I mean stupidly) powerful they can be.

1 Like

If you think chewing the teeth off that aluminum pinion gear is an exaggeration, sure.

Cool, so a tiny machine with ball screws. An actual use case for the Teknic motors worthy of talking about!

Folks put those motors on the r&p not realizing they get no benefit from them as the repeatability and accuracy is a function of the r&p and not the motors themselves.

Ok, so you could route the HLFB to a relay as you described. Just get a splitter M12 connector or piggyback the wire in the box and you are good.

I might be wrong but I believe the e-stop is NC which might cause problems trying to mix that electrical signal. I would ask the factory about that to make 100% sure.

CORRECTION: The r&p folks do get benefits but not anywhere near what you get from the ball screws. Sorry for they hyperbole…

1 Like

Oh gosh, have I got stories too! I will save y’all the old man schtick and just nod with @djdelorie

It’s basically doing the same thing that the fault error on the spindle VFD is doing. It’s set up in the Screen Lua Script. If it triggers, it actuates a software e-stop.


Why not just mark that input directly as an e-stop? The Lua engine is a secondary process to the core so there is a significant delay between the Lua engine and the core execution.

I could do that but would have to wire them through the Physical e-stop circuit (in my case P2-15). This would work as the signal is linked through 4 NO contacts in series for the relay’s. The only issue is determining a way to indicate it’s a drive fault, and not just a hardware e-stop (button press).

Just go into your configurations and set that signal to e-stop. No need merge like I said earlier. I didn’t realize you still had inputs left open, must be nice :rofl:

Myself I would much rather see when I am getting into trouble as oppose to shutting everything down after the trouble has arrived. The “ASG-VELOCITY WITH MEASURED TORQUE” is a good thing to display so you can reach over and tweak the speeds and feeds as needed.

Most of the time I am bumping things up because I was to conservative.

But, its your machine! When you are comfortable with your machine and quit breaking things you can switch over to velocity and torque and tune your machine during runs. That would be a huge win for the guys cutting aluminum with these machines.

Can I have 2 E-stop input ports? If so, i’m not quite sure how to set that up. I’ll need to keep my mechanical Oh Sh%t button wired in. Again, i’d like for it to give me a text block output telling me if there was a drive fault.

My machines with Teknic motors are all LinuxCNC so that might be where I am making a mistake. Warp9’s ESS is the bottleneck. It kind of just does a 1-to-1 routing scheme and not a many-to-1. I would check with Andrew over at Warp9Ltd and make sure that is the case.

All it would tell you is you have a problem. I would refer to the “APPENDIX A: TROUBLESHOOTING
LED BLINK CODES” because that is going to tell you want really went wrong.

Best of luck!

Yeah. that was my thinking. I may switch my entire Hardware/Software setup to Centroid Acorn. I have that setup on a converted Mill and really like it.

tell us a story grandpa!

Is there anyway to get realtime feedback like that from my nema 34’s?

I’ll add you could always put in a relay, to convert one set of signals to multiple contacts, so you could wire them into multiple places (one set for estop, another for spindle status)

1 Like

Yeah, got your attention didn’t I?

Sadly, not from a standard stepper but you can from the Teknic SDSK motors via the HLFB wire.

In the motor setup you can tell the embedded controller to use PWM and convey information about the operation of the motor. So you could set up lights like an LED graph and have it display torque and velocity. A little work and you could use it to tune the performance of your machine while running gcode.

It will even give you pulses per revolution but sadly not at the level required for true positional feedback.

I have long thought about building a system using the LED display from a graphic equalizer to show all of the motors and their velocity / torque peaks. So like as those numbers rise the LEDs would turn yellow and eventually to red as they top out. Maybe even have the little peak indicator hold a second before falling animated style so you don’t miss peaks. Sure you have see those before.

We can all dream, right? Maybe a project soon? I have to finish this dern carousel first!

Yes I have see equalizer display hold the high and then trickle off into the current display. That would be a great project (for you) to do, you certainly don’t see that kinda feedback on any machine that I have seen. Might be your billion dollar idea. A million dollars don’t go as far as it used too

1 Like

I see you have had a few spirited discussions over on the cnczone and maybe some others, I lurk mostly, just trying to soak up some knowledge. Well I have been trying to figure out how to machine with constant rotation on the 4th axis. I have seen others do it with a special PP and a custom configuration in mach. And using vetric software, not f360 or deskproto. I have been chasing this rabbit down the hole for a long time. From what I read you may have some insight into adding a 4th and 5th axis to a cncrouterparts machine. Me not being a programmer, editing a post processor seams daunting. Maybe I should have started a new topic, I doubt I’m the only one trying to expand my 4th axis horizons.

So, I applied all the changes mentioned in my 1st few posts/responses, and everything seems to work perfectly. With changes to the screen script, I checked the fault condition, and it works instantly (or as instant as my eyes can see milliseconds).

So, I guess I answered my own questions. So in summary, for the Clearpath SDSK servos, with the HLFB I …

  1. Connect HLFB+ to input of 1 relay on a 4 relay block
  2. With 4 motors, should have 4 inputs on 4 relay block
  3. Power relay block with +5V
  4. HLFB- goes to ground of system
  5. Used P2-11 as input from relays. Relays are wired in NO series so if 1 drive faults, the signal to P2-11 goes low and e-stop is triggered.
  6. Updated screen LUA script to include command mentioned above.

Cheers, and thanks!

And the solution …