View Full Version : Brain transplant - swapping ESS for UC300ETH

11-06-2021, 09:37 PM
About 6 months ago I bought a second-hand CNC mill - a Wabeco machine. Similar in size, I guess, to the larger Sieg machines, give or take. Not as robust (not so much iron!) as my Warco VMC which I had been intending to convert to CNC, but it was the right price, came from someone just up the road, and meant that I wouldn't be spending a few months re-engineering the Warco. In fact, it's a more suitable machine for the sort of small fiddly stuff I generally work on, so a better bet for CNC in my workshop.

Essentially it was the Wabeco top-of-the-range machine with genuine Hiwin 25mm profile rails, ballscrews, counter-balanced spindle and motor assembly with 7500rpm spindle speed, BT30 spindle, PC, etc. However, although Wabeco do CNC versions of this, this one had been "converted" by a US company, with Clearpath servos, Ethernet SmoothStepper, and Mach3 running a custom screenset. 3D touch probe (cheap and cheerful but it works), tool height setter, and all the macros to make that lot work - well, after a bit of tweaking by me, including discovery of undocumented Mach3 functions. And once I had the software side sorted, it all worked fine, including with my existing wireless MPG.

Well, most of the time it worked. I have had a series of Mach3 crashes, mainly to do with the ESS, I believe. Internal ESS error, out of data, and similar. I never actually broke a tool but did have to write off the odd workpiece that was halfway through and where I couldn't pick up reference coordinates again. No idea if it was ESS, Mach3, or some combination of the two but I decided that a brain transplant was the way forwards.

Master plan - replace ESS with UC300ETH and Mach3 with UCCNC. No issues about BOBs as that functionality already existed in the control box. What could possbily go wrong?

More in next post...

12-07-2021, 12:54 PM
If there is something go wrong is that u use mach 3 .
When u move to uc300eth , u need one or 2 BOB for protection of uc300eth .

13-07-2021, 12:33 AM
If there is something go wrong is that u use mach 3 .
When u move to uc300eth , u need one or 2 BOB for protection of uc300eth .

Haven't been able to try my UC300eth yet. The UCBB board I got with it is pretty smart though. I need nothing else. No relays, no extra boards etc.

13-07-2021, 10:37 PM
Bit of a pause while on holiday...

Andrei - I have been using Mach3 on a couple of machines, and I've never been entirely happy with it. The odd random crash, plugins that don't play well together, etc. That was on both my home-built CNC router and this commercial milling machine. The faults that I have had on the milling machine with its ESS could have been Mach3, the ESS plugin, the ESS hardware, or some combination. I wanted to move away from Mach3.

I didn't need to add a BOB for protection or any other reason in this case. BOBs mainly perform two functions - they act as a kind of convenient junction box with more useful connectors than a typical motion controller, and they might be useful for input/output protection and level-shifting (e.g. 24V signalling). However, in my case, this functionality was already in place on the motherboard that held all the other electronics, I/O connectors, etc.

When I looked closely at the control box, I saw that it was not even a standard ESS. Two of the five I/O connectors had been moved to the "wrong" side of the board (actually, it looked as if it had been manufactured like this, not a resoldering job) so that the ESS could plug into two matching connectors on the motherboard. I checked with the Mach3 configuration screens and confirmed that only these two ports were used, and I could identify which ports/pins were used for which purpose - including the two probe inputs which are not supported by Mach3, if you read the documentation. In fact, my machine used an undocumented function call embedded in various probing macros to be able to switch between probes as required. Comparing the I/O connections with the UC300-5PLT, it looked as if the two ESS connectors used could be emulated by two of the UC300 ports - the ones that resemble standard LPT parallel ports (that is, ports 2 and 3). By mounting the UC300 in the control box, I could make up a couple of ribbon connectors to go between the UC300 ports and the motherboard ports. I configured "ports and pins" in UCCNC to match the ESS configuration, and somewhat to my surprise it all worked. I took things like motor tuning and "pulses per..." straight across from the original Mach3 screens to UCCNC, played about with things like table travel, homing parameters, etc, and it was all fine.

The network setup was straightforward - just needed to change the ethernet address of the dedicated ethernet port on my PC. No need for a crossover cable or anything like that.

The only thing that gave me grief was the spindle speed control. I copied the Mach3 parameters as best as I could understand them to UCCNC, but speed control was poor. The spindle would take a long time to get up to part-speed, then after a bit it would get up to full speed. However, the speed reached was not very linearly linked to the demanded speed. Eventually, I discovered that one of the parameters that appeared to relate to pulse rate for the PWM output on the Mach3 spindle config page was nothing of the sort; the actual value was on another page completely. So when I changed the pulse rate from 50Hz (which is what I thought it was under Mach3) to 5KHz, which is what it should have been, all was well. Speed pretty accurate across the range, although not brilliant at the very lowest speeds which doesn't worry me too much. I don't expect to be using cutters that need spindle speeds much below 500rpm on this machine anyway.

Only job left now is to convert the tool-height setting macros that ran under Mach3 to run under UCCNC. The idea is that M6 toolchange automatically sets tool height by going to the fixed tool-setter device on the table on every tool change. It's not as good as a tool-changer but a whole lot better than manual height setting on every tool change. I also need to finish setting up the probe screens to match my hardware - that's the next job on the list.

Overall, I found the ESS to UC300 changeover to be more painless than I expected (almost just an exercise on paper to get ports and pins to match), and it has moved me away from an old hardware design and obsolete software from different manufacturers to current hardware and software from the same supplier, which must be a better bet for reliability and compatibility.

14-07-2021, 09:22 AM
I hope you will be happy with the swap. I know that I am. I left Mach3 a long time ago and never looked back. I think that the only thing missing is the lathe control, but for those who don't need it, it is indeed an upgrade in every aspect.