Machsupport Forum

Mach Discussion => Mach4 General Discussion => Topic started by: joeaverage on April 20, 2020, 07:20:31 PM

Title: Mach4 feature vs Mach3
Post by: joeaverage on April 20, 2020, 07:20:31 PM
as most of you know I post here and other places frequently about CNC generally and Mach4 in particular.

I find myself trying to describe why Mach4 is so much better and more sophisticated than Mach3. The problem is
that when I go to write about it I'm overwhelmed with ideas and features I find it hard to encapsulate all of it in
readable fashion.

What I am hoping to do is start this thread and have users post what they particularly like (or don't) and thereby
develop a list that may be presented to a person tyring to decide whether to go with Mach3 or step up to Mach4.

I'm going to start with some features that I really like about Mach4 that exceed the similar facility in Mach3:

1) Zero Brane Editor. I like the file tree that you don't get is Mach3. I like the breakpoint assignment features,
step wise run features, its more sophisticated and flexible than Mach3 and approaches the level of flexiblity
that you might expect in an IDE like MSStudio. I like also the stack dump and other diagnostic messages that you get
but don't get with Mach3.

2) The PLC. In Mach3 you have but one macro pump, any and all macros that need to run continuously must all be incorperated
into the one macro pump macro. The PLC is an analogougus place in which to concerntrate such code but can be done in
individual functions. In Mach3 any fault in one part of the macropump code screwed the rest of it, not so with the PLC where
individulal functions can be tested without upsetting the others. The PLC rate is determined by setting and is an order of magnitude
faster than Mach3 by default and can be programmed to run faster again.

3) I like the slave axis arrangement with Mach4. In Mach3 if you wanted a slave axis you had to use the A axis and re-imagine it
as a linear axis slaved to another. With Mach4 you do not have to re-imagine any axis just to get a slave, any axis can have up
to four slave motors. Further these slave motors can be programmatically linked and unlinked via API calls for sophisticated
synchronization schemes.

4) The Mach3 Modbus feature is a nightmarish confusing beast which I now refuse to involve myself in. The Mach4 Modbus
plugin is a dream by comparison. I especially like that Modbus variables have a register, thus you can use the data from
a macro, PLC or PMC whereas in Mach3 the Modbus data was available only as a Brain, the conceptual equivalent to PMC.
Likewise youcan use a macro or PLC or PMC to set the register and that data will propogate out to the Modbus
superior to Mach3.

Ok, these are the features that I like and come to mind on the fly. I hope others will post what they like and we might start
to build a bullet list of features, maybe  with liknks to individual posts to flesh out the bullet points.

Title: Re: Mach4 feature vs Mach3
Post by: mcardoso on April 23, 2020, 11:57:37 AM
LUA vs VBA: I was a heavy custom programmer in Mach 3 VBA and was able to get everything I wanted to do done, but I found that the development process was difficult and even when I got things working, sometimes it just wouldn't run as expected. When I jumped to Mach 4, I was very quickly overwhelmed by how complex LUA seemed. I dove in headfirst and with the support of this forum, got over the learning curve in a month or so. I can definitively say that LUA, the ZeroBrane editor, and most importantly, the Mach 4 API are just lightyears ahead of Mach 3. The documentation is pretty good and centrally located (unlike Mach 3 where all you had was a bunch of cheat sheets people had made). I've coded some pretty complex things in Mach 4 (including a serial communication module for diagnostics with servos) and find that the object oriented structure of LUA allows you to build your code up in logical layers. The custom code executes blindingly fast and I feel unrestricted unlike Mach 3. This was my biggest reason for switching to Mach 4.

Menu and Graphics: Mach 4 is just pretty. The menus are logical and the screens are clean and well laid out. This is contrasted by Mach 3's piecemeal menus and lack of uniform style.

Screen Editor: The screen editors in both Mach 3 and Mach 4 are not great honestly. Mach 4 is quite a bit better than Mach 3, but still is missing a lot of features seen in other software packages. If NFS reads this, can we please add grouping, alignment, layers, shared properties, and an undo button? Thanks!

Online community: Mach 3 has a ton of users but is rather unsupported. A lot of forums will strongly suggest that you switch to Mach 4 before offering help. Mach 4 on the other hand has a vibrant and engaged community, on this forum as well as others. There is a quick and easy way to get your questions answered. NFS is also actively supporting and developing the product.
Title: Re: Mach4 feature vs Mach3
Post by: Cbyrdtopper on April 29, 2020, 09:42:29 AM
I will second everything that has been said so far, especially the Zero Brane editor and the Modbus communication.  I use PLCs with TCP Modbus to handle most of the IO on the larger machines that I retrofit at work.  it is so fast and easy to set up and I don't have to worry about anything because PLCs are incredibly robust.

The flexibility with the screen editor is pretty cool too. 
I totally redid the OD Grinders we have in the shop by making my own custom screen full of buttons, leds, user input boxes, etc... I was able to use Mach4 industrial to make a pretty solid Macro Program.  I basically made one giant conversational screen right in Mach4 and the operator has all the controls right on the main screen.

As far as machining goes, Mach3 was good for machining but Mach4 IMHO is so much better, it handles High Speed Machining toolpaths far better, in my experience, over Mach3.  As far as G Code goes, it is more particular about what is needed to run, mainly in canned cycles, but to me that means it is a much more robust G Code interpreter than Mach3.
Title: Re: Mach4 feature vs Mach3
Post by: smurph on May 11, 2020, 08:39:02 PM
Wow...  Thanks guys! 

I liked Mach 3, for sure.  It was really good stuff.  But as with anything, it can be improved upon with time.  Whether Mach 4 is an improvement is probably a matter of opinion that can be debated, but we honestly did try to improve upon Mach 3.  We had a list of items that users constantly asked to be added to Mach 3.  But a lot of them simply could not be added to Mach 3 just because it simply would be incompatible with the way the internals of Mach 3 worked.  I don't remember exactly how many items were on this list, but I seem to remember it being on the order of multiple of hundreds of items.   This is what we started with when we endeavored upon creating Mach 4.  We really did LISTEN to what our customers wanted and tried to give it to them if at all possible.  I sometimes scratch my head at some of the resistance some people have to moving from Mach 3 to Mach 4.  I guess even change for the better is sometimes hard to embrace. 

Some of the big items in my mind were:

1.  Always needing a custom CAM post processor made for Mach 3.  We decided to make Mach 4 Fanuc compatible so that ANY already made Fanuc post processor could be used.  This forced the more "particular" G code interpreter that Chad mentioned. 
2.  More I/O.  Mach 3 could only access 53 inputs and 30 output via the ports and pins mechanism.  For any extension beyond this, the aforementioned Brains and Mach 3 modbus had to be used.  I was just speaking with someone about this today, actually.
3.  Less delay in input detection.  It could take up to 100 milliseconds for Mach 3 to "see" an input change state.  It is as instant as it can be with Mach 4 and the given topology used.  Modbus is still limited by its polling frequency, however. 
4.  I loved Klaus' screen editor for Mach 3.  However, you had to restart Mach 3 after every screen edit.  Having a built in screen editor makes on the fly screen edits possible and therefore can quicken development time.  There are alignment feature in the Mach 4 screen editor, BTW.  Layers just can't be done with the wxWidgets framework that we use.  But still, I believe custom screen development is greatly sped up with Mach 4.
5. The C style programming API.
6. Compiler independence.  You don't have to use the same development tools that we use.
7. Up level plugins can run with down level Mach 4 builds if programmed correctly.
8. We found the FASTEST scripting language and used it.  This made tool change type script WAY less clunky. 
9. GUI elements that can be enabled/disabled based on machine conditions.  BIG ONE to me.  I always hated that a Mach 3 button was always active, even thought pressing it in an invalid state wouldn't do anything. 
10.  Developing a Mach 4 plugin is WAY more streamlined as compared to Mach 3.  However, people that developed Mach 3 plugins constantly try to use Mach 3-isms in their Mach 4 plugins.  :(  It is better to forget everything you ever knew about Mach 3 plugin development if you endeavor to build a Mach 4 plugin. 

I'm hungry now and I will will proabaly think of more after I eat.  :) 

Title: Re: Mach4 feature vs Mach3
Post by: smurph on May 11, 2020, 11:34:50 PM
11. Screw mapping.
12. Surface mapping.
(Fixing hardware in software since 2011.)  :)
13. Multiple probe capability.
14. Full Fanuc Macro B support (Industrial)
15. Built in popup keypads for touch screen support.
16. Multi-level block delete support.  It rocks if you ever have to use it.
17. A much nicer tool path with built-in views (left, right, top, bottom, ISO, etc...) and custom colors PER tool path. 
18. Support for tool arm style tool changers. (Tool pre-loads)
19. Up to 999 tools.
20. Tool Life Management (Industrial)
21. Full Fanuc type C cutter compensation. 
22. In Mach 4, you can't inadvertently stomp on resources that have already been used by something else.  There were a lot of OEMLED and OEMDRO clashes in Mach 3.
23. Awesome plugin script control is possible (if command registers are provided by the plugin).

I'm tired now... All of this thinking!!! 

Title: Re: Mach4 feature vs Mach3
Post by: smurph on May 12, 2020, 07:41:36 PM
24. Separate interpreters for the different control types.  Meaning the Mill interpreter is different than the Lathe interpreter.  Mach 3's Lathe interpreter was the same as the Mill!  This led to conflicts with canned cycles, among other things.  There is a G76 cycle in a milling application AND a lathe application and they do not do the same thing. 
25. Multiple planners.  This allows stuff like Retract and Cut recovery to work.  Plus there is a jog planner for every axis and all can be run with their own settings.
26. Out of band axes, aka non coordinated axes.  This just didn't exist in Mach 3.
27. A customizable tool table.  Add your own fields if you need them!!! 
28. A proper reset function.
29. All of the motion is chained together better in Mach 4 vs. Mach 3.  It makes it feel more smooth and graceful, and less clunky.  Even if running in exact stop mode. 
30. Real parameters that can be set with G10L50. 
31. SETVN implementation.
32. M code scripts that can parse letter arguments.
33. Global data in the script environment (big on the mach 3 wish list)!
34. DRO update and modify scripts.  You can do some wicked stuff with these.
35. #var expansion in comments for G code program debugging purposes.  e.g.  "#123 = 64 (#123 = #[123])"  This will print "#123 = 64" in the status history. 
36. Fully Fanuc compatible expression evaluation.  e.g.  "#100 = [#124 - #123] * [#124 - #123]"  Try that one in Mach 3 and watch it bomb. 
37. Set outputs and read inputs directly in G code.

Whew...  I feel a bit like Bubba telling Forest what all you can do with shrimp.  :) 

Title: Re: Mach4 feature vs Mach3
Post by: joeaverage on May 12, 2020, 09:15:55 PM

Whew...  I feel a bit like Bubba telling Forest what all you can do with shrimp.  :)

Kool Steve, this is exactly the sort of material that new or potential new users need to see.

Title: Re: Mach4 feature vs Mach3
Post by: Brian Barker on May 13, 2020, 03:13:23 AM
Steve you forgot about
38. Lua panels To allow users and OEM’s to put custom controls and items on the screen (font engraving and the lathe can cycles are an example)
39. Plugins can put data on the panels as well and allow users to place them
40. More screen designer objects
41. You can modify anything programmatically that is a property I. The screen designer.

Many more but some that came to mind as I was reading ;) The funny part is 90% of the people don’t care about all the features. My hope  is that some day we can make a place where people can share and exchange Lua panels , plc’s and code chunks.
Title: Re: Mach4 feature vs Mach3
Post by: Brian Barker on May 13, 2020, 03:24:20 AM
I had a thought after I typed this and it really sums it up.

Mach3 grew organically , Mach4 was designed.

So without the community and work that it took to grow 3 we never would have known what was needed to design into 4. Heck you guys have not seen multi instance! That came from a conversation Art and I had walking around a wood working show in Vegas. That idea was put into action on the first day we started on 4. It has never been released but it is getting closer all the time.  The modular design architecture of 4 is simply its number one feature and everything grows from that. Most people don’t realize you can run M4’s core with your own exe!  It is an amazing bit of software and a real pleasure to work on over the years to solve problems with.
Title: Re: Mach4 feature vs Mach3
Post by: joeaverage on May 13, 2020, 03:57:41 AM

Mach3 grew organically , Mach4 was designed.

That is a perfect desription....I'll use it.

Title: Re: Mach4 feature vs Mach3
Post by: Tweakie.CNC on July 16, 2020, 04:43:53 AM
There is no doubt that Mach4 is indeed an excellent product but it is only as good as it’s Motion Controller will allow it to be and choosing the right Motion Controller can be difficult with pitfalls for us all.
The manufacturers of some Controllers are extremely active at keeping up with new developments in Mach4 whereas other manufacturers are extremely slow and there is no definitive list of the good and the bad to help us choose.

I use a CO2 laser and there are a number of things which I can do using Mach3 that I still cannot do using Mach4 (despite waiting some 6 years). This is certainly not the fault of Mach4 (which is more than capable) the issue lies with the Motion Controller. One day, I am sure the problems will be solved but how long do I wait ?

There is a lot to be said for having the software development of the Motion Planner and the software development of the Motion Controller under the same roof. Perhaps something Artsoft / NFS may consider in the future.

Title: Re: Mach4 feature vs Mach3
Post by: Stuart on July 16, 2020, 07:20:59 AM

A quick question when are we going to get an upto date version ok mach4 4300 is a bit long in the tooth now dev ver is ( well you know what it is)

Any clues as to when


Industrial lic holder
Title: Re: Mach4 feature vs Mach3
Post by: smurph on July 16, 2020, 01:17:00 PM

This covid crap has most of us working from home and therefore the testing that goes on before a GA release just hasn't been possible.  But 4517 seems to be doing well.  There are a few new features that are not finished in it (Timer control, multi-touch support, etc...).  But it is stable otherwise.  Try it out.

But as to when will there be a new release, I just can't say.  When will there again be normalcy?  No one knows at this point.  :( 

Title: Re: Mach4 feature vs Mach3
Post by: Stuart on July 16, 2020, 03:56:41 PM
Thanks for your reply

I have run 517 and ESS 260 all is fine with the screen set provided

Thanks for you and your team during this strange time we are in,

My wife and myself are 73 so as per the UK rules/guides we have to only go out for essential needs but we are both ok

Look after yourself and your family and be safe