What's more popular, Mach3 or LinuxCNC?

Home Model Engine Machinist Forum

Help Support Home Model Engine Machinist Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Status
Not open for further replies.
Im surprised that mach3 has a bigger share than emc2, granted i am an emc2 user - but there has never been anything that i couldnt do with emc2 that would make me want to pay for mach3. Also I would never trust any machine tool with Windows as an operating system. How does your poll compare to usage on here?
 
I never cared that Mach costs money.
But I did care that it can't handle glass scales properly.

I retrofitted a MAHO MH700C with LinuxCNC. Glass scales, gearbox with 4 speeds, DC servos with +/-10 V ... won't work with Mach.


Nick
 
If you don't already know Linux, coming up to speed on it is very painful for most would be CNC'ers. They already have a steep enough learning curve, especially if they don't already have manual machining experience.

I'm surprised LinuxCNC is as popular as it is, given that issue. However, there is sufficient overlap between people who already know Linux and those who want to CNC to carry it off. And there are always those that just want the very best (Hi, Mueller Nick!).

I view LinuxCNC as having the most ultimate potential and Mach3 as being the easiest to get up and running with and achieve moderate to good potential. Art tells me that Mach4 will achieve even more potential as he is completely rewriting the parallel driver.

As far as trusting any machine tool with Windows as an OS, there are tons of pro controls that use it and have going back for many years. See my link below for details. The secret is they're not doing anything that requires real time support in Windows. They farm that out to the drives. We can do that now too on hobby class systems using Smoothstepper and similar solutions:

http://blog.cnccookbook.com/2011/12...-from-hobby-class-to-industrial-grade-part-1/

Of course such things are available for LinuxCNC as well. They're an improvement in either case, but they bring more cost and complexity too.

I am working on an article that goes into how to configure Windows for best use in CNC Control situations. I'll publish it on the CNCCookbook blog soon. It's been quite an interesting research project.

I'm also thinking of putting together some resources to simplify the LinuxCNC learning curve. While I think the current installed base of LinuxCNC relative to Mach3 is surprisingly large, I think there would be even more demand if it could be made easier for the non-Linux familiar.

So many projects, so little time. Don't know if I'll get to the latter or not.

Cheers,

BW
 
Thats a really interesting post, i see what your saying with regards to farming out the output from windows to an external driver, that makes sense. I must look into that a bit more, as you say its the realtime thats the issue, and windows does not like deadlines.

On the issue of the learning curve: assuming that you can dedicate a pc to the cause, it was really simple, as i never needed to interact with linux at all. It was download the live cd, choose install, wait... Then once you have a desktop run the stepconf wizard - which is very similar to mach3 settings. Obviously this assumes a very simple setup using just steppers for control.

You seem to have a fair bit of knowlege in this area, would you know how the controller software talk to the external driver? Does the driver process the gcode directly for example, or just the next position for the axis?

Thanks

G
 
The secret is they're not doing anything that requires real time support in Windows [by adding dedicated hardware]

plus this quote from your article:
It turns out the idea that an industrial grade CNC controller can’t be built on top of Windows is false. We can dispense with that objection right away with an existence proof.
Well it is false, because Windows alone can't do that reliably. You admitted that later.

And that's exactly where Mach has its deficiencies. There is no hardware that does the stepping. On LinuxCNC, the time critical parts runs on a reserved kernel of the CPU and can not be slowed down. You can stress the UI with whatever you want. Even so bad that you have to wait for seconds for a window to react upon a click. The other core isn't influenced and keeps on running at the same speed.

Also, it is a quite an old story always told that LinuxCNC is hard to configure. If you have a hobbyist's mill with steppers, use the PnPConf (or how it is called). You will have it running quite quickly!
Yes, it is true. The more your mill/lathe asks for (when you do make a retrofit), the deeper you have to dive into LinuxCNC. The nice thing is, there are almost no limits. If you lack something, write a component. I have written two. One for the gear box, and one for the remote jog wheel with an LCD that display the axis values (comm via ModBus).

Smoothstepper:
You know what an inner closed loop and an outer closed loop is? Smoothstepper and all the ad-on-crutches for Mach only do provide an inner closed loop. There is no outer closed loop, the trajectory planner doesn't know where any axis is, he is just guessing!

Art tells me that Mach4 will achieve even more potential as he is completely rewriting the parallel driver.
You should never buy a product based on promises. Mach4 has been announced for many years. Nothing visible happens.


Nick
BTW: I liked it that you included my tool setter video on your page!
 
Im working on getting a cnc set up, I have Alibre for my cad and I love it. Coming from turbo cad Alibre was an easy learn for me.
If one has to learn either Mach or linx which would be better off in the long haul? I plan on getting the Tormach 1100 very soon and doubt I would ever be able to upgrade to anything else due to cost and size constraints. The tormach will clear my ceiling by only 1/2"....
 
If one has to learn either Mach or linx which would be better off in the long haul? I plan on getting the Tormach 1100 very soon and doubt I would ever be able to upgrade to anything else due to cost and size constraints. The tormach will clear my ceiling by only 1/2"....

Tormach. like many other machine builders, use Mach, so if you buy a Tormach it will come with mach and you will have no use for linux. I do not think there is a single machine builder that uses LinuxCNC.

This topic comes alive every once in a while, and the linuxCNC guys jump all over the supposed mach deficiencies. Yet there are many thousand Mach uses, and many dozens of machine builders happily using Mach and making parts.

The discussion is about as useful and meaningful as the Red Sox vs Yankees topic.
 
My advice for anyone setting up a machine would be - find a local who uses mach and one using linuxCNC, and pay them a visit, ask them to show you some things similar to what you want to do. Then you can decide having seen both sides. Hobbiests usually love to show off there workshop, so im sure you could find someone who would give you a quick demo.
 
Tormach. like many other machine builders, use Mach, so if you buy a Tormach it will come with mach and you will have no use for linux.

Tormach also sells their mills/lathes with LinuxCNC. Preconfigured, ready to run.


Nick
 
I'm new to Cnc and have found mach 3 has been an easy program to learn. Making the hill less steep

Dave
 
MuellerNick, there is nothing false about it. With a hardware controller such as Smoothstepper, Mach can do the job reliably. In fact, there is evidence it'll be more reliable than LinuxCNC without hardware which is also not really real time grade if you look at articles like this one:

http://www.anderswallin.net/2012/12/real-time-tuning/

So now we are basically arguing degree.

You are correct that it can't "close the loop" at the controller level, however, we have to quantify what that really means. What are the real concrete benefits of closing the loop at the controller versus closing it within the servo drive and faulting if the following error exceeds some threshold?

Turns out, there are not an awful lot of them, though if you need them, I suppose they are essential. You have mentioned you want to use glass scales, for example. That'd be one. Rigid tapping is another. Certain minor advantages in recovering position after a fault (you don't have to rehome the machine) are another. Despite having been through a number of these discussions with LinuxCNC afficionados on all the boards, I haven't found any others yet. Maybe you can contribute some.

Those are not at all deal breakers for most hobby-class CNC, not even close, and there are work arounds.

For example, it turns out there are a lot of ways to solve the problem that glass scales solve. Most of the lower end pro-class machines don't have glass scales and I'm talking Fadals and Haas class machines. One slick way to solve the problem that will work on hobby-class machines with Mach3 is to use in-process probing. Renishaw did this to good effect in doing super-precision manufacturing of their probes on cheaper VMC's and I write about it here:

http://blog.cnccookbook.com/2011/06/06/ramtic-fast-super-precision-manufacturing-on-cheap-machines/

Eventually my Conversational CNC product will make it easy to create such probing routines for any control, including Mach3 and LinuxCNC. But this starts to be arguing about how many angels dance on the head of a pin for most hobby CNC work. Most people don't need it and may never need it.

Ron is right to point out that thousands are using Mach3 successfully and that there are commercial machines configured for it. Being able to get something up and running quickly and then improve from there as you learn is a virtue. That's where I think LinuxCNC falls down. It adds too much to the learning curve and has a much smaller community to draw experience from. The suggestion to find someone local you can work with is spot on. You'll likely find someone with Mach3, but LinuxCNC will be hit or miss depending on where you are.

For an expert that wants it all, by all means go to LinuxCNC. For the average guy that wants to get on with making parts sooner, give Mach3 a try, you won't be disappointed.

Of course I've also had this discussion with many pro machinists even as recently as my holiday vaca and their opinion is why mess with either Mach3 or LinuxCNC? They're buying Centroid, Siemens, and Fagor and paying as little as $900 for a used controller ready to retrofit to their machine. Add a set of Yaskawa drives and motors and they say there is no comparison. Trouble free and accurate operation all day long.

It's similar to what the racers say:

Speed costs money, how fast do you want to go?

You can have a lot of fun without the expense of a Formula One car. I've seen amazing results from the people making routers out of particle board. My servo driven RF-45 produces great results too. And you can go up the food chain as far as you like.

But don't spend all day arguing the best this or that like the bench racers do on cars, jump in and start swimming. The water is fine!

Cheers,

BW
 
OK, things are getting funny. I know that when Mach users try to defend their controller.

MuellerNick, there is nothing false about it. With a hardware controller such as Smoothstepper, Mach can do the job reliably.

Smoothstepper … OMG!
Smoothstepper started as a desperate move, because the printer port seems to slowly disapear. So they started to build a device that does stepping remotely (Mach can only do stepping, nothing else). The connection initially was via USB. When I fist got aware of SM and read USB, I had a loud laugh! USB isn't suited for this environment. No need to further discuss that.
They found out later. So they have a Ethernet version now. But still, there is one single market for that contraption. The hobbyist who doesn't care of glitches with his control. Why? 5V TTL I/O has nothing left to do on an application like this. No need to discuss further.

In fact, there is evidence it'll be more reliable than LinuxCNC without hardware which is also not really real time grade if you look at articles like this one:

First, you tried to convince the readers, that Windows is the right OS. Then, in your article you gave an example but had to admit near the end of the article, that this Siemens control used some dedicated hardware. Then you try to compare Mach with hardware (you should read what I wrote about that before you put on your pink shades and buy it) with LinuxCNC without hardware. And give a link that you obviously didn't read nor understand. If you would have read the related thread, you wouldn't have posted it.

You are correct that it can't "close the loop" at the controller level, however, we have to quantify what that really means.


This simply means that the contol and the user knows exactly where the axis are. No matter how big the threshold, no matter what backlash, no matter how many steps lost, no matter wether one axis stalled due to overload. LinuxCNC uses this while in rapid. It doesn't matter if the axis is 1 mm behind, the control will catch up. It also allows different laging behind. Less when going slow, more when going fast. And an exact stop is just that. An exact stop!

Most of the lower end pro-class machines don't have glass scales and I'm talking Fadals and Haas class machines.

They do have a feedback that is read from the machine. They are not guessing like Mach does.
Btw: Do you know the OS of the Haas controls? Linux!

Ron is right to point out that thousands are using Mach3 successfully and that there are commercial machines configured for it.

I don't know of a single commercial machine that uses Mach. With commercial, I mean being sold and NOT directed at the hobbyist like Tormach. But I know a few machines running in production and with LinuxCNC. I also do know retrofitters that use LinuxCNC.

Being able to get something up and running quickly and then improve from there as you learn is a virtue. That's where I think LinuxCNC falls down.

That's being repeated over and over again. Once more, that was true some years ago. A dumb machine that Mach could handle is as easy to setup with LinuxCNC as with Mach.

They're buying Centroid, Siemens, and Fagor and paying as little as $900 for a used controller ready to retrofit to their machine. Add a set of Yaskawa drives and motors and they say there is no comparison. Trouble free and accurate operation all day long.

Haha! A used controller for $900 that works and fits exactly that machine. Good luck! And "just add Yaskawa drives". Why should I throw out 3 servos and three servo amps just to either buy Yaskawas (you forgot the amps) or rip out any axis drive and replace it with a stepper?
You switched to retrofit! And whenever someone makes a retrofit with Mach, the first thing is to open the cabinet and throw out everything in there. You won't get it running with Mach. Then, they rip out the servos and replace them with steppers. That makes no sense to anybody who has some brains.

jump in and start swimming. The water is fine!
Try LinuxCNC, don't listen to the sheeple!


Nick
 
MuellerNick, furious tap dancing and name calling doesn't change any reality.

1. Smoothstepper moved the unreliable part (pulse generation) of Mach3 to hardware and did so cheaply. Could it have initially chosen a more noise resistant interface than USB? Sure. But so what? Lots of folks on Mach and LinuxCNC are sending 5V TTL around to do all sorts of things because that's what the breakout boards offer. Could this be done better? Sure, but so what?

In fact, the Mesa FPGA boards so beloved of the LinuxCNC crowd are, drumroll please, 5V TTL! And guess what, a lot of the encoders to be used with servos are also 5V TTL. Hmmm, what were they thinking?

2. Why don't you explain which part of that LinuxCNC thread I didn't understand? All I've said is that Linux is not Real Time either, so we are basically arguing a matter of degree. The thread concurs and quantifies the degree to which it is not reliably Real Time. There's threads all over Linuxcnc.org that connect jitter to the max step rate that Mach users think in.

In the end, both Mach3 and LinuxCNC have the same problem in that the underlying OS is not really Real Time if you look closely enough. It is a matter of degree with LinuxCNC starting with a little advantage. Both need the same fix to eliminate this problem, outboard hardware, so why keep waving your hands about it?

Here's Andy Pugh himself saying essentially just that:

http://www.linuxcnc.org/index.php/e...nuxcnc-questions/10613-centroid-cnc4?start=36

He suggests an external step generator such as Pico or Mesa if there is too much jitter. Gee, sounds just like a conversation about Smoothstepper.

3. "This simply means that the contol and the user knows exactly where the axis are. No matter how big the threshold, no matter what backlash, no matter how many steps lost, no matter wether one axis stalled due to overload. LinuxCNC uses this while in rapid. It doesn't matter if the axis is 1 mm behind, the control will catch up. It also allows different laging behind. Less when going slow, more when going fast. And an exact stop is just that. An exact stop!"

My Mach3 servo-based system does all that. It will catch up just like that system you mention. The lag changes based on prevailing conditions, it catches up, and that all happens regardless of backlash, axis stalling, sticktion, and even phases of the moon. Did you not understand how servos work under Mach3? None of the things you've mentioned are the reasons to carry the loop back to the control. You still fail to provide a concrete example of what you're getting for your theoretical advantage beyond the three things I have already mentioned in my first post.

4. "They do have a feedback that is read from the machine. They are not guessing like Mach does." And again you fail to provide any example of why this matters? Sounds good, but it is hand waving otherwise.

5. "Btw: Do you know the OS of the Haas controls? Linux!" And Siemens, Cincinnati, and many others have used Windows. So what? Oh golly, here is an announcement that Centroid is going to stop supporting Linux and will exclusively be on Windows 7:

http://www.elrodmachine.com/Centroidcnc.htm

Centroid, BTW, is one of the most popular retrofit control systems around.

6. "That's being repeated over and over again. Once more, that was true some years ago. A dumb machine that Mach could handle is as easy to setup with LinuxCNC as with Mach." Nope. Linux desktop market share not only has not gained, it has fallen off due to this issue. It never has taken off except in cases where it is totally embedded like a Tivo box or where it is being used by the Geeks. If you're already a Linux Geek, more power to you. If you're just an ordinary bloke, it's a problem. Or, go back and read the Centroid release where they say the same thing.

7. "I don't know of a single commercial machine that uses Mach. With commercial, I mean being sold and NOT directed at the hobbyist like Tormach. But I know a few machines running in production and with LinuxCNC. I also do know retrofitters that use LinuxCNC."

Oh do come along. This is your biggest fabrication yet. Because a couple guys have retrofitted LinuxCNC to some old machine you're going to declare that Tormach is not a commercial machine? Or that bunches of CNC Routers and Plasma Tables are also not commercial machines? Pick and place machines too and the list goes on. Even though their owners are running shops and making products that are their livelihoods that's not commercial? What in the world is "commercial" if making your living with it doesn't count?

Are all the machines using MachMotion just hobby machines?

http://machmotion.com/

8. "Haha! A used controller for $900 that works and fits exactly that machine. Good luck! And "just add Yaskawa drives". Why should I throw out 3 servos and three servo amps just to either buy Yaskawas (you forgot the amps) or rip out any axis drive and replace it with a stepper?
You switched to retrofit! And whenever someone makes a retrofit with Mach, the first thing is to open the cabinet and throw out everything in there. You won't get it running with Mach. Then, they rip out the servos and replace them with steppers. That makes no sense to anybody who has some brains."

Okay Nick, you apparently never met anyone doing much retrofitting. I meet them all the time and talk to them in great detail about it through CNCCookbook. And where did I say anyone was switching to steppers? As for the Yaskawas, frequently the reason you can find the controls so cheap is they're parted out separately or the drives and servos are burnt out.

9. "Try LinuxCNC, don't listen to the sheeple!" And still more name calling without any facts. Not very professional or engineer-like, but it's fun for you, I'm sure. Facts are usually more persuasive, if less entertaining.

Sincerely,

BW
 
And in this corner hailing from Germany "Nick Mueller" VS "Bob Warfield" of cnc cook book Hailing from the USA!!
This bout is scheduled for 13 post and its anyboodys guess who will be the winner Ready!!! Post!!! :D
 
Happy mach3 user here. I use a dedicated processor with parallel port interface and no other programs running. No internet connect and no OS updates. Thumb drive for program download.
 
first of all the idea that linux is difficult is false.
yes there is much more to the command line interface and scripting languages. it is no secret that posix systems have a robust commandline interface so it may take a while to master it but the installers for the ubuntu and similar distros make it easier to get running than windows. the rest is stuff that you would likely have to learn with mach anyhow.

the real key to emc2/linuxcnc is the real time componant. it is true that linux doesn't natively have a real time scheduler. but that is why emc2/linux cnc is bundled with a specific version of ubuntu and a real time kernel that has a specific scheduler for the real time functions, it is true much of the system doesn't run in real time but the g-code interperater and parallel driver do. with the real time application interface things that usually need to be off loaded to a buffered type device to execute in real time can be handled on the application processor. that allows for things like probing and double feedback position sensing and correction to be done through software and therefore can be updated and improved without hardware upgrades. since the real time feature allows for external position sensing and allows it to be used for real time correction machines can be driven with a number of different types of motors and backlash can be compensated for instead of relying on expensive steppers and high precision ball screws to position the machine. this could definately be an advantage on a retrofit for an old machine that still has some use left in it but needs a modern control.

i think people need to be more open minded about linux in general. i doubt as if anyone would have much problem using my lmde machine to browse the internet or edit a document. it knows what applications open what types of files, just click on files and they open. yeah ubuntu sets the file permissions to non executable to protect you but it's only one thing to learn how to set to run software or scripts. and if they knew that mint offers proprietary software like flashplayer out of the box and how easy system upgrades really are they wouldn't be so scared. with the graphical package manager my system upgrades are one click, it doesn't interupt what im doing or bog the computer, things still run, infact i'm doing upgrades right now, and when it's done i don't need to restart my computer other than some rare occasions where it is recommended.
 
MuellerNick, furious tap dancing and name calling doesn't change any reality.

Cheap trick, often used when people run out of arguments. But let's see ...

Could it have initially chosen a more noise resistant interface than USB? Sure. But so what?
You just underlined that you do not understand basic facts about electrical installation on machinery.

Sure, but so what?

Hobbyist's question!


In fact, the Mesa FPGA boards so beloved of the LinuxCNC crowd are, drumroll please, 5V TTL!

Wrong! They are 3.3V output, input is 5V tolerant. And ask Mesa if they suggest to use their outputs to drive anything. They won't, they have the right terminal interfaces that can drive lines safely. Have analog in and out, QE in, ...

All I've said is that Linux is not Real Time either, so we are basically arguing a matter of degree. The thread concurs and quantifies the degree to which it is not reliably Real Time.

LinuxRTOS has a predictable response time. No matter how high the load is. Try that with windows.

He suggests an external step generator such as Pico or Mesa if there is too much jitter. Gee, sounds just like a conversation about Smoothstepper.

You seem to switch back and forth between controllers with or without dedicated hardware, just to make your useless point. I see no sense in that style of "discussion".
You say that Mach on Windows is great. As soon as I say it lacks RTOS, you start with those hobbyist's crutches like Smoothstepper. Then you link to Centroid that has some serious hardware to offer that solves that problem. But that hasn't anything to do with Mach and smoothstepper.

Did you not understand how servos work under Mach3? None of the things you've mentioned are the reasons to carry the loop back to the control.

In that context you mentioned Haas. And I told you that they do have a feedback to the control. You seem not to be able to understand this.
Look at the Haas TL-series lathes in manual mode and understand.


My Mach3 servo-based system does all that. It will catch up just like that system you mention.

No, it doesn't and it can't, it lacks the outer control-loop. I already said that and I also gave an example. Dynamic joint follow error is the keyword to educate yourself.

And Siemens, Cincinnati, and many others have used Windows.

With dedicated hardware (not connected via USB). Was the "has" a slip or did you mean they no longer use it?

Nope. Linux desktop market share not only has not gained, it has fallen off due to this issue.

First, a control is not a desctop PC. Second, you seem to have never used Kubuntu (LinuxCNC runs on). I MUST be wrong, because I'm writing this on a Mac.

If you're already a Linux Geek, more power to you.
Always the same FUD. Repeat it often enough 'till you believe it. One has to be more a geek to install MachOS ... oh sorry, Windows suited for Mach as for LinuxCNC. LunuxCNC: Boot from CD, install OS, done! MachOS ... sorry again, windows: Install Windows and remove the drivers etc. that do make problems. Now that is much easier (but just by your definition).


you're going to declare that Tormach is not a commercial machine?
OK, so this Made in China machines are serious. Great! Seems they just recently discovered they should use a decent paint. "PCNC 1100 personal CNC milling machines are now painted with a long lasting 2-part acrylic alkyd-amino resin system that adheres tightly and is resistant to most cutting fluids and oils."
Now what other commerical machinery uses Mach?


And still more name calling without any facts.
It was just as dumb as comparing motor sports to controllers.

This bout is scheduled for 13 post and its anyboodys guess who will be the winner Ready!!! Post!!!

Won't happen. BW already demonstrated enough that he is focused on spreading disinformation and not understanding that much of controller hardware.

Nick
 
Quote:
My Mach3 servo-based system does all that. It will catch up just like that system you mention.
No, it doesn't and it can't, it lacks the outer control-loop. I already said that and I also gave an example. Dynamic joint follow error is the keyword to educate yourself.

It is quite funny! I gave exact stop as an example, and BW simply ignored it. Or doesn't know what exact stop is? As Mach never knows when the exact position is reached, it only can assume it is reached. Not so with an outer loop. The control waits 'till the position is reached, then continues. The PID of the inner loop tries to reach a given position, but there is no guarantee wether that ever happens and if it happens, within what time.
But he's the pro!

Nick
 
Status
Not open for further replies.
Back
Top