Machsupport Forum

Mach Discussion => Mach4 General Discussion => Topic started by: Brian Barker on April 23, 2014, 09:24:44 PM

Title: Comments about Mach4 in Demo
Post by: Brian Barker on April 23, 2014, 09:24:44 PM
Hi, As I stated in my message I would like to have input on the interface so we can get any changes made before we start making the docs docs for running the software. Please post them here and I will get a message that some one has posted. I have been building a list and we will review the list in a few weeks to see what we need to change / add.

Thanks
Brian
Title: Re: Comments about Mach4 in Demo
Post by: MadDogSTrack on April 23, 2014, 10:27:26 PM
Brian;
Thanks for the opportunity to preview.

Mach4 won't install cleanly for me, get MACH4GUI Error  "Failed to retrieve file times for 'C:\somestuff\m6end.mcc' (error2 ... cannot find the file specified.)

Not sure if this is expected or not, as Mach 4 does launch...

Using a Win 8.1/ 64 bit system

-Regards.
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on April 23, 2014, 10:58:31 PM
Tool Path page, dro's do not show movements while jogging or gcode running.

Keyboard Jog button does not toggle, can't jog from keyboard.

Jog Mode led's out, toggles through3 jog modes ... Cont., Step and 3rd mode that does nothing.

MDI does not exe. from keyboard ENTER key...(I know, it says hit CYCLE START to exe. but more convenient to use ENTER ... possible ?

Pretty COOL ! !

Russ


Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 23, 2014, 11:50:23 PM
Alt-Enter executes the MDI from the keyboard.  Since it is multi-line, alt-UP and alt-down cycle through the previous commands.

Keyboad control is via a plugin that has not been released.  Just mouse around for a bit until we release the keyboard stuff.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on April 23, 2014, 11:57:08 PM
Thanks Steve,
Found the led's with wrong assignment, dro's also, OK now.

I like the quick edits , very nice.

Time to play, thanks again,
Russ
Title: Re: Comments about Mach4 in Demo
Post by: FocusPaul on April 24, 2014, 02:01:44 AM
About Box: Copyright 2001-1013
The early bird ... ;D

The new version looks very promising. I also like the whole concept of decoupling Mach4 core from UI. Well done!
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 24, 2014, 02:10:17 PM
LOL!!!  You don't know how many times I have said I would fix that date!!!  I'm going to do it NOW!  :)
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 24, 2014, 02:59:10 PM
Under Config -> Homing/Softlimits, mouse clicking in the Soft Enable column doen't toggle states. You have to input from the keyboard '0' or '1' to toggle states.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: Calum on April 24, 2014, 06:19:03 PM
Looking good, I like the screen editor, simple and intuitive.  I was able to fix many of the issues in the default screen without too much trouble.  It would be good if there were some bold text that could be used on the screens, my eyesight isn't good these days.  Some of the LEDs are a bit dim, hard to tell if they are on or off.

I have my profile configured for metric and notice the feed rate is still in inches, needs a conversion.

I have observed a few strange behaviours when running some of my old part programs but haven't pinned them down yet, restarting often helps.  I have found that a crash will leave the core running so I need to use Task Manager to kill it before a restart will work.

Cheers
Calum
Title: Re: Comments about Mach4 in Demo
Post by: chuckels on April 24, 2014, 08:15:48 PM
nice work guys. :o
any way to pan on the tool path screen after you zoom?
also can you show the tool path extents  on the tp page, I guess that's possible to do with the editor?

Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on April 24, 2014, 09:20:50 PM
any way to pan on the tool path screen after you zoom?

Left mouse=tilt
Right mouse=zoom
Left AND right=Pan
Russ
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 24, 2014, 09:30:29 PM
Pan the tool path with both mouse buttons.

Other hints:
Left double click orients the path in the top down view.
Right double click orients the path in the ISO view.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 24, 2014, 09:54:42 PM
When will we get a LPT plugin to use ??

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: RogerRetro on April 24, 2014, 10:04:05 PM
Very trivial considering, but...
Please include the standard colors dialog in the color editing popup.
Thanks,
Roger Blair
Title: Re: Comments about Mach4 in Demo
Post by: RogerRetro on April 24, 2014, 10:57:49 PM
Tool Path Limits persistence would be good for me...
Thanks,
Roger Blair
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 24, 2014, 11:17:21 PM
When will we get a LPT plugin to use ??

(;-) TP
There might not be one.  Not decided yet.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: zafarsalam on April 25, 2014, 01:17:56 AM
Couldn't install it on C: partition of my HD. I am using Windows 7 32 bit. Couldn't write files in the Mach4Hobby folder. I tried D: drive and it installed ok.

Zafar
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 25, 2014, 01:24:49 AM
Are you running the install as Administrator?  Because you have to have admin privs to install to the root of the system drive.  This sometimes entails right clicking the installer program and selecting "Run as administrator" even though you may be logged in as Administrator.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: zafarsalam on April 25, 2014, 03:10:11 AM
At first I didn't do it as administrator. Second time I ran it as administrator but, I guess, since a folder was already created in C:\Mach4Hobby it didn't allow to add files to it. I will try to delete that folder and install again in C:.
Title: Re: Comments about Mach4 in Demo
Post by: TomKerekes on April 25, 2014, 03:37:22 AM
Nice.  Is there any info yet on how to start developing a Motion Plugin?

TK
http://dynomotion.com
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 25, 2014, 08:44:28 AM
No news on the Kflop a this time.. We are working on some of the more hobby level controllers at this time.
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 25, 2014, 09:38:43 AM
Tried to create a MDI group and control but does not seem to work as expected. Must be in a group I see from the MDI screen, but I am missing something.

tried inputting a M3 and M4 on the MDI page and the Diagnostic tab shows it and the history shows Clockwise but no CCW or reverse for M4
Also noticed the m3 led does not lite on the spindle ON Button when using MDI M3.

Have the "If Then Else" statements been added and function-able?
Id like something like
if (mySwitch1) then M30 Else M99
to replace the M47

Why no window minimize button, I have to use Alt Tab to toggle through other available programs? so I could snip the screen and capture. Preference is for sizable windows instead of full screens, always doing more than one thing, don't you? Cut and Paste, Captures, Write Scripts, etc...

Is the scripting code functioning?

are we alpha testers  ??? Thou I like where Mach4 might be headed it looks awful raw to me ::)
I've developed user interfaces in the past so I have some industrial bruises myself.
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 25, 2014, 09:43:39 AM
Hi Ya-Nvr-No,
I think your minimize issue is that you have a screen that is low resolution and the top of the window frame is off the screen. Do a Maximize from the task bar and I think that will fix you.

Thanks
Brian

Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 25, 2014, 10:17:41 AM
Running this off a Lenovo laptop, Says I am at 1366 x 768
Not getting anything other than what I show below (reduced the image by 50% for uploading and viewing)
Tried loading it as window Maximize, no changes.
Used to be a way to move windows around with the arrow keys, but I forgot, hell to get old.
Odd... centers itself and I have no access to the outer edges to resize it.

Guess it might be an issue with my laptops.
Found some issues with Terry's Wizard Screens that they would not all display correctly either.  But just in the vertical.
These Laptops work fine with Mach3 and KmotionCNC.

Thanks Brian.


Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 25, 2014, 10:25:32 AM
As you can see I am using MachGUI.exe with a screen set and I have all the normal windows Max Min close junk...

Did you make a special profile and have it load the profile with the command line switches? If so can you show me what you are doing for a call?
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 25, 2014, 10:28:37 AM
Nope right from the install for mach4 no changes that I know of.

C:\Mach4Hobby\Mach4GUI.exe /p Mach4Mill
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 25, 2014, 10:30:37 AM
Looks like you are running XP 32Bit?
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 25, 2014, 10:36:09 AM
I found it  ;D

default is Full screen, under the VIEW menu, I unchecked it and it resized.

I am running Win7 32bit
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 25, 2014, 11:01:07 AM
I find entering numbers in the DROs rather inconvenient comparing to how it used to be in Mach3 where a single click would highlight the whole number. Now you have to highlight the the number with the mouse. While it's the typical Windows way to do this, I think it is not suitable for a machine control. When I do it in the web browser or google, for instance, sometimes the whole string doesn't get highlighted and there is a character left (sure it happened to you a few times) and then you notice the mistake when you see the wrong search result. In a machine control this type of mistake could have more devastating outcome. Also this way of doing things is completely not suitable for a touch screen.

And speaking of touch screens, there is the very handy auto calculator that pops up in Mach3 and is very handy with touch screens. Eliminating wondering between the keyboard, mouse and screen.

Also posted this one earlier but it seems it slipped unnoticed:

Under Config -> Homing/Softlimits, mouse clicking in the Soft Enable column doen't toggle states. You have to input from the keyboard '0' or '1' to toggle states.

Dan

Dan
Title: Re: Comments about Mach4 in Demo
Post by: TomKerekes on April 25, 2014, 02:42:51 PM
Hi Brian!

Quote
No news on the Kflop a this time.. We are working on some of the more hobby level controllers at this time.

I know this   ;D

We were wondering when something would be available so we could get started.  Probably a bad time to ask and maybe the wrong place.  But when you have something be sure to let us know.

Regards
Tom Kerekes
Dynomotion
Title: Re: Comments about Mach4 in Demo
Post by: Fastest1 on April 25, 2014, 04:27:09 PM
How would you have it recognize your limit and or home switches? How do you set up a key to activate a command? Like the Hotkeys were in M3?
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 25, 2014, 04:56:39 PM
Wonderful Tom, We would would love to get you started and we have examples and so on we can get to you..

Contact us and Todd will get you the paperwork for getting the API and Steve and I will be here to help you .

Thanks
Brian
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 25, 2014, 07:30:25 PM
When will we get a LPT plugin to use ??

(;-) TP
There might not be one.  Not decided yet.

Steve

RUT ROW , (;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 26, 2014, 07:30:43 AM
Hi Brian,

Are you taking notes of the comments and reports, or are they getting consistently missed...? What's the purpose of this thread then anyway? Would be nice of you (or Steve) could confirm that a comment posted has been noted.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 26, 2014, 10:12:37 AM
figured out how to add a MDI group to the Diagnostic tab
I needed to edit the Cycle Start Button Script
added an elseif for the tab 3 (Diagnostic) and direct it to where to get the MDI data from.
Wish the copy and paste worked a little better as you have to use a text editor to hold the copy.
Once you close the scripter the copy is gone. You'll get used to it, I am sure.
I am starting to enjoy this, just wish I could drive some motors.  ;)

Code: [Select]
if (tonumber(tab) == 1) then
    local state = mc.mcCntlGetState(inst);
    if (state == mc.MC_STATE_MRUN_MACROH) then
        mc.mcCntlCycleStart(inst);
    else
        scr.ExecMdi('mdi1');
    end
    --Run MDI
    mc.mcCntlSetLastError(inst, "Do MDI")
    --wx.wxMessageBox("Do MDI")\
elseif (tonumber(tab) == 3) then
    local state = mc.mcCntlGetState(inst);
        scr.ExecMdi('mdi3');
    --Run MDI
    mc.mcCntlSetLastError(inst, "Do MDI")
    --wx.wxMessageBox("Do MDI")\
else
   --Do CycleStart
    mc.mcCntlSetLastError(inst, "Do Cycle Start")
    mc.mcCntlCycleStart(inst)
    --wx.wxMessageBox("Do Cycle Start")
end
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 26, 2014, 11:02:39 AM
Also figured out how to get the m3 m4 to work right with MDI or in the gcode
had to edit the mcs scripts as shown below
notice the direction is -1 for reverse.
I added a new button and led for reverse on the Spindle group
all works well now, come on I'm ready to move something. ;D
just not sure if these need to be local or not.
might change it to forward and reverse as it is just a message that is displayed in history

Code: [Select]
function m3()
mc.mcCntlSetLastError(inst, 'Spindle Clockwise')

local inst = mc.mcGetInstance();
local sigh = mc.mcSignalGetHandle(inst, mc.OSIG_SPINDLEON);
local sigState = mc.mcSignalGetState(sigh);

    mc.mcSpindleSetDirection(inst, 1);
end

Code: [Select]
function m4()
mc.mcCntlSetLastError(inst, 'Spindle Counter Cockwise')

local inst = mc.mcGetInstance();
local sigh = mc.mcSignalGetHandle(inst, mc.OSIG_SPINDLEON);
local sigState = mc.mcSignalGetState(sigh);

    mc.mcSpindleSetDirection(inst, -1);
end
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 26, 2014, 11:43:54 AM
Bug report:
after leaving screen edit mode
the Enable button is blinking, should either be Disable or Axis Status should have been disabled on return. Little confusing.

question:
tried to turn off the Outputs Enable 0-3 led's but they get reset to default ON every time when Enable button pressed.
where do they get the status set to default ON from? Every output is not setup on the config page.
Tried setting the screen led default to OFF for each but no luck.
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 26, 2014, 12:15:28 PM
BTW: For some reason the m3 m4 does not work again, though the code is still there. Only thing I think I did was save it as a new screen and shut it down and restarted mach4. Temper mental or what? worked fine for quite a few test, now other than the button for reverse and the led the mdi does not work again but just for the spindle.
 :o
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on April 26, 2014, 03:49:02 PM
Found my BONE HEADED mistake   :D or at least it better be,  ;D

local inst = mc.mcGetInstance();
Has to be declared before you use it, that's why on restart it was no longer declared.

Code: [Select]
function m3()
local inst = mc.mcGetInstance();
local sigh = mc.mcSignalGetHandle(inst, mc.OSIG_SPINDLEON);
local sigState = mc.mcSignalGetState(sigh);
mc.mcCntlSetLastError(inst, 'Spindle Forward')
    mc.mcSpindleSetDirection(inst, 1);
end

Code: [Select]
function m4()
local inst = mc.mcGetInstance();
local sigh = mc.mcSignalGetHandle(inst, mc.OSIG_SPINDLEON);
local sigState = mc.mcSignalGetState(sigh);
mc.mcCntlSetLastError(inst, 'Spindle Reverse')
    mc.mcSpindleSetDirection(inst, -1);
end
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 27, 2014, 01:50:50 PM
Hi Brian,

Are you taking notes of the comments and reports, or are they getting consistently missed...? What's the purpose of this thread then anyway? Would be nice of you (or Steve) could confirm that a comment posted has been noted.

Dan

Sometimes I don't get the reply notifications from the forum.  I'm reading this thread today for the first time since I last posted to it, so I really haven't had time to ACK every post.  Just put the items/comments in here and we will see them.

As to your points about the Soft Limits click issue and the DRO entry, consider them duly noted.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 27, 2014, 02:19:05 PM
Hi Steve,

Thanks for the response. For your convenience, below is a quote of my previous post. To summarize it, there are three points:

1. DRO entry. Highlighting the number in the DRO by single click.
2. For touch screen users, adding the auto-calculator like in Mach3.
3. A small bug under  Config -> Homing/Softlimits

Dan

I find entering numbers in the DROs rather inconvenient comparing to how it used to be in Mach3 where a single click would highlight the whole number. Now you have to highlight the the number with the mouse. While it's the typical Windows way to do this, I think it is not suitable for a machine control. When I do it in the web browser or google, for instance, sometimes the whole string doesn't get highlighted and there is a character left (sure it happened to you a few times) and then you notice the mistake when you see the wrong search result. In a machine control this type of mistake could have more devastating outcome. Also this way of doing things is completely not suitable for a touch screen.

And speaking of touch screens, there is the very handy auto calculator that pops up in Mach3 and is very handy with touch screens. Eliminating wondering between the keyboard, mouse and screen.

Also posted this one earlier but it seems it slipped unnoticed:

Under Config -> Homing/Softlimits, mouse clicking in the Soft Enable column doen't toggle states. You have to input from the keyboard '0' or '1' to toggle states.

Dan

Dan
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 27, 2014, 09:03:40 PM
I forgot to mention that the DROs highlight with a double click. 

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 28, 2014, 02:38:24 AM
Yes, noticed that, but again not as good for touch screens. Also, the behaviour of DROs not quiet clear with the introduction of the cursor. Fill in a number in the X DRO, hit Enter and the cursor moves to the Y DRO, allowing you to fill in numbers, but not allowing you to save them with the Enter key...? The cursor ahould have disappeared after hitting Enter in the X DRO I think...

Anyway, it is my opinion that a cursor type DROs in a machine control system is not as practical and is a source for machine operator's mistakes.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 28, 2014, 02:46:50 AM
Is there a setting for persistent DROs after restarting Mach4, like there is in Mach3?

Dan
Title: Re: Comments about Mach4 in Demo
Post by: bri999 on April 28, 2014, 10:14:53 AM
Is it going to be possible to remotely access and control Mach4 as I could with Mach3 using third party software such as:
Mach = (Mach4.IMach4)Marshal.GetActiveObject("Mach4.Document");
Script = (Mach4.IMyScriptObject)Mach.GetScriptDispatch();

Then using script.Code(Gcode);  to send the command to Mach4 to move the steppers etc.
I have tried this with the Mach4 demo but it wont connect or respond.
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 28, 2014, 10:18:52 AM
Hi Brian,

Are you taking notes of the comments and reports, or are they getting consistently missed...? What's the purpose of this thread then anyway? Would be nice of you (or Steve) could confirm that a comment posted has been noted.

Dan

We are reading this thread and talking about it. At the same time I am getting data from the Yahoo forum and direct mails. Many updates have been done but we are programing and working to quickly to note every comment.. but we are reading them all!
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 28, 2014, 10:24:00 AM
As soon as I have some free time I will try to make an on screen Keyboard plugin.. We should be able to connect it to the DRO's somehow LOL
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 12:44:47 PM
Is it going to be possible to remotely access and control Mach4 as I could with Mach3 using third party software such as:
Mach = (Mach4.IMach4)Marshal.GetActiveObject("Mach4.Document");
Script = (Mach4.IMyScriptObject)Mach.GetScriptDispatch();

Then using script.Code(Gcode);  to send the command to Mach4 to move the steppers etc.
I have tried this with the Mach4 demo but it wont connect or respond.

There is no DCOM interface.  Mach4 is cross platform and we had to choose a way of doing the remote stuff that is also cross platform.  There is a library that you will link to in order to accomplish this.  The full API is exposed.  Running scripts, etc...

Steve
Title: Re: Comments about Mach4 in Demo
Post by: bri999 on April 28, 2014, 03:46:59 PM
Is it going to be possible to remotely access and control Mach4 as I could with Mach3 using third party software such as:
Mach = (Mach4.IMach4)Marshal.GetActiveObject("Mach4.Document");
Script = (Mach4.IMyScriptObject)Mach.GetScriptDispatch();

Then using script.Code(Gcode);  to send the command to Mach4 to move the steppers etc.
I have tried this with the Mach4 demo but it wont connect or respond.

There is no DCOM interface.  Mach4 is cross platform and we had to choose a way of doing the remote stuff that is also cross platform.  There is a library that you will link to in order to accomplish this.  The full API is exposed.  Running scripts, etc...

Steve
Thank you for the info. I look forward to being able to use the new version with my pick and place machine and software. Will I need to register as a developer to have access to the API ?
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 04:35:14 PM
If writing a plugin or a third party app, yes.  Contact Todd Monto.  You might want to get things rolling.  However, we won't release the API until all of the documentation is done.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Tig-140 on April 28, 2014, 08:30:09 PM
Are there systems requirements? I'm looking at using an Asus Vivo PC VM40B computer to Mach 4 on my Bridgeport.
Specs:
Processor: 1.5GHz Intel Celeron 1007U
Cache:    L3: 2MB
Memory: 4GB    Type: DDR3 SDRAM
Graphics Card    Type: Integrated
Installed: Intel HD Graphics
Hard Drive: 500GB 7200rpm
Operating System: Windows 8 (64-bit)
Want to use Galil DMC 4080 motion control.
and PoKeys 57E connected to PoNET kbd48CNC
Still using AMC drives to Baldor servo motors.
Hoping Galil plugin for Mach4 will not take too long.
Title: Re: Comments about Mach4 in Demo
Post by: geh7552 on April 28, 2014, 08:40:28 PM
Well... after the years of anticipated wait and Artsoft's much toted PR (and seems to be BS now) about the ALL NEW Mach 4 "Completely rewritten from the ground with less than 1% of Mach 3 code... what we have is a Mach 4 bug ridden flop! No plug ins, no parallel port option and the list of screwups is growing.  A piece of advice to Artsoft... don't quit your day job.

Title: Re: Comments about Mach4 in Demo
Post by: Fastest1 on April 28, 2014, 08:42:30 PM
Why do we need a PP option? That is what M3 was for. It is an outdated platform. It is time to move on. M4 will be fine.
Title: Re: Comments about Mach4 in Demo
Post by: geh7552 on April 28, 2014, 08:45:55 PM
Maybe for the 95% of Mach 3 users using a PP... that's why.
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 08:48:55 PM
Where do you get your stats from? 
Title: Re: Comments about Mach4 in Demo
Post by: geh7552 on April 28, 2014, 08:51:26 PM
Please feel free to post your stats to prove me wrong.
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 28, 2014, 09:02:34 PM
Well... after the years of anticipated wait and Artsoft's much toted PR (and seems to be BS now) about the ALL NEW Mach 4 "Completely rewritten from the ground with less than 1% of Mach 3 code... what we have is a Mach 4 bug ridden flop! No plug ins, no parallel port option and the list of screwups is growing.  A piece of advice to Artsoft... don't quit your day job.



LOL You are a nice guy, Did you see that we are not willing to release? Steve didn't say anything about the P Port because I am working with Art.. The fact is that the P Port is mostly done. You can stop your feet, bite your nails and bitch all you like. The fact is this all takes time and because it is new it will have bugs. We did what we could to make it work as well as we could for the testers. I wish we where infallible but we can only test so much and program so many hours in a day. So be constructive and tell us what you would like to see worked on. That is what this phase is all about. If you want finished 100% software spend the money and get a Fanuc. They will take your money and they will give you one heck of a system.



 
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 09:09:18 PM
Now to the constructive stuff...

I think you will be fine with what you have below.  I run it on an atom D2700 board with a Galil 4080.  If you have problems, you can turn the refresh rates down a bit.  We have them pretty stoked as compared to Mach3.  You should be able to run @ 25ms refresh rate though. 

Are there systems requirements? I'm looking at using an Asus Vivo PC VM40B computer to Mach 4 on my Bridgeport.
Specs:
Processor: 1.5GHz Intel Celeron 1007U
Cache:    L3: 2MB
Memory: 4GB    Type: DDR3 SDRAM
Graphics Card    Type: Integrated
Installed: Intel HD Graphics
Hard Drive: 500GB 7200rpm
Operating System: Windows 8 (64-bit)
Want to use Galil DMC 4080 motion control.
and PoKeys 57E connected to PoNET kbd48CNC
Still using AMC drives to Baldor servo motors.
Hoping Galil plugin for Mach4 will not take too long.
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 09:14:54 PM
Why do we need a PP option? That is what M3 was for. It is an outdated platform. It is time to move on. M4 will be fine.

Thanks for your support!  We hope Mach4 will be worth the wait.  And some of these guys are having a blast with it!  Which is really nice to see.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 28, 2014, 09:18:57 PM
That is a good point ... I forgot to tell them that they can lower the refresh rate... Mach3 is set to 100ms as a bench mark (and you can't change it). In Mach4 the IO updates and so on are not effected my the screen refresh. So you could set the refresh on the screen to 250 ms if you want to see 1990 Cad Graphics LOL
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 28, 2014, 10:01:04 PM
Brian Actually Steve DID mention possibley NOT having a LPT version in this post. My opinion is Mach4 without a LPT driver would be a HUGE mistake in marketing BUT that is your call.

IF all the art explained about the LPT driver is good then a dedicated motion controller FUNTION is going to have to really be good to beat the lpt ver.

I do understand that with a OEM controller the burden of support goes to the OEM not artsoft as they only supply the Control CORE ??

BUT I would dare say there are probably MORE lpt users out there than all the  other types put together.

Just my opinion, you mileage may vary due to local conditions.

(;-) TP


When will we get a LPT plugin to use ??

(;-) TP
There might not be one.  Not decided yet.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Steve Stallings on April 28, 2014, 10:59:09 PM
The parallel port has enjoyed a long and successful
life as the hardware interface of choice for many
control systems (CNC and otherwise) because it
could be manipulated directly from the control
application without interference from the operating
system.

Unfortunately direct access to hardware is a major
risk to system security in this day and age of virus
and malware programs. Because of this Microsoft is
doing everything in its power to restrict direct
access to the hardware. Art may succeed in making it
possible to run a parallel port with current versions
of Windows, but it will be a moving target and
Microsoft has an army of programmers and an almost
unlimited budget available to develop ways to "protect"
the system from unwanted access to the parallel port.
Soon the 32 bit versions of Windows that are needed to
run with direct access to the hardware may be eliminated
entirely as the consumer market transitions to 64 bit
systems entirely. It is already difficult to get 32
bit software from many off the shelf computer vendors.

At some point it becomes impractical for vendors like
Artsoft to expend large amounts of effort to circumvent
the protection measures that Microsoft creates. Artsoft
can offer us more and better software if they do not
have to focus on doing something that Microsoft does
not want them to be able to do in the first place.

Yes, we (PMDX) have a profit motive in selling alternatives
to the parallel port, but we also currently survive by
selling hardware that depends on the parallel port. We
have reluctantly concluded that the time has finally come
to figure out how to live without it in the future.

Nothing prevents users who like and depend on the parallel
port from using it along with Mach 3 and older versions
of Windows software to run systems based on the parallel
port, but this should not become a barrier to progress
for systems that do not run using parallel ports.

Regards,
Steve Stallings
PMDX
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 28, 2014, 11:39:28 PM
Well said Steve!

We do not control our own destiny with the parallel port.

I have already felt the sting of hardware obsolescence with the ISA Galils. I was NOT happy.

I'm not arguing with you Terry.  Just being realistic, honest, and frank.  You haven't even felt the pain yet.  But you will.  Get ready.  Its coming.  :(  Maybe we can prolong the inevitable one more time.  We shall see.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Chaoticone on April 29, 2014, 12:14:45 AM
Hey, what else can you say about Steve Stallings? His logic is flawless in more ways than one.  :)  I just moved to Windows 7 this past November myself so I too hate change. The only thing in the universe more consistent than gravity is change.

Brett
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on April 29, 2014, 06:47:30 AM
On the topic of 'to be or not to be'  LPT port, has anyone considered targeting an address configurable LPT card?

Let's say an LPT card costs about 10 bucks. This is not going to impact any rational decision to purchase MACH4. Most new computers don't have LPT ports anyway, so purchasing an add-in card is pretty much a given.

Would it be possible to have MACH4 talk to the UART on an LPT card thru a specific address which is not recognized (and blocked) by the OS. i.e. just use the hardware on an LPT card as an 'interface' between MACH4 and existing LPT based systems. If the OS does not see the UART functioning as an LPT, theoretically it would not interfere. Many moons ago I was trying different LPT cards and several did not register with Windows as LPT ports. They had drivers that emulated the LPT and passed the data stream to the hardware on the card. Absent that driver, the OS pretty much ignored the card.

Alternately, a USB device to simply mimic the simple on/off behavior of the handful of LPT pins would not be complicated or expensive to produce. MACH4 could then just send words to the device to be decoded into the pin array that matches the LPT layout.

There are a  lot of ways to skin this cat, but the overall idea would be to have an alternative to a full motion control solution (Kflop, Smoothstepper, etc) at a low cost that would simply mimic an LPT port. If outside the OS, the valid arguments about Microsoft unexpectedly mucking things up would be eliminated.

Just thinking out loud . . . 

Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on April 29, 2014, 08:06:47 AM
Brian Actually Steve DID mention possibley NOT having a LPT version in this post. My opinion is Mach4 without a LPT driver would be a HUGE mistake in marketing BUT that is your call.

IF all the art explained about the LPT driver is good then a dedicated motion controller FUNTION is going to have to really be good to beat the lpt ver.

I do understand that with a OEM controller the burden of support goes to the OEM not artsoft as they only supply the Control CORE ??

BUT I would dare say there are probably MORE lpt users out there than all the  other types put together.

Just my opinion, you mileage may vary due to local conditions.

(;-) TP


When will we get a LPT plugin to use ??

(;-) TP
There might not be one.  Not decided yet.

Steve

Steve only knew what we had talked about at Cabin Fever. I talked to Art and made sure he was willing to do the P Port.. So don't get upset at him,  He told you what he knew at that time. The P port is going to be done but we expect it to have a very short life..
Title: Re: Comments about Mach4 in Demo
Post by: Jeff_Birt on April 29, 2014, 08:19:33 AM
I'm wondering if all you guys who are in love with the LPT still use 5.25" or 3.5" floppy discs. How about 40 column wide dot matrix printers? All of these items were great in their day but have long since been surpassed by much better technology. The parallel port was once all we had and Art really did the impossible with the parallel port driver (He did the impossible and that made him mighty, ten points if you know the sci-fi reference :) ) For the past 5-6 years we have had better choices. I was talking with a customer yesterday who upgraded his router tale with a Ethernet SmoothStepper, he was able to double his speeds because the pulse stream is much more stable. If his PC ever dies it is a simple matter to plug the ESS into a new PC and copy over his XML, no farting about trying to find a PC with a parallel port that will work.

All hardware will be obsolete at some point in time. At some point you have to quit beating a dead horse. I still have a few things that are parallel port controlled, they are working OK now but when the PC dies they will get upgraded to an external motion control like the 99.99% of the systems I have built for other people over the last 5 years.
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on April 29, 2014, 08:30:28 AM
Steve Stallings...........   Preach on it my brother.

Scott
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on April 29, 2014, 10:00:56 AM
I'm wondering if all you guys who are in love with the LPT still use 5.25" or 3.5" floppy discs.

Jeff,

I don't think it is a question of what is the best solution. My assumption is that the entire LPT  topic is alive only because of the many hundreds (or thousands) of existing systems that run on LPT and would move to Mach4 if and only if they could do so without also making a simultaneous leap to a complex and potentially troublesome motion control board.

Smoothstepper has a very spotty reputation and Kflop is definitely not a product for a novice user. Everything else (that I am aware of ) is very expensive.

If MACH4 is all it is hyped to be, and it comes in a 'hobby' version, then why penalize the masses who do not choose (or are understandable afraid of) moving to a motion control solution?

One point is inarguable; for Newfangled, a $200 sale is a $200 sale. It would be an extreme blunder (in my opinion) for them not to provide an inexpensive 'no brainer' solution for their many hundreds of potential buyers using LPT, regardless of how primitive it may be.

Rather than dwelling on the downside, perhaps an enterprising individual with the resources and talent might come up with an inexpensive and bulletproof solution as I described in an earlier post. Personally I have neither, but I'd wager there are more than a few in the MACH community that do.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 29, 2014, 10:05:46 AM
I UNDERSTAND your points BUT (;-)

Why would you want to leave ALL those LPTers stranded in the desert. All their hardware is going to work as long as thier PCs still functions(not dead) and they can still find parts to fix the PCs. AND they are still the CORE of Mach users.

I am NOT saying not to move on as everyone else in the modern world HAS moved to a motion control card.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on April 29, 2014, 10:18:47 AM
I UNDERSTAND your points BUT (;-)

Why would you want to leave ALL those LPTers stranded in the desert. All their hardware is going to work as long as thier PCs still functions(not dead) and they can still find parts to fix the PCs. AND they are still the CORE of Mach users.

I am NOT saying not to move on as everyone else in the modern world HAS moved to a motion control card.

(;-) TP

I agree with you 100%.

Were I in the business of selling motion control boards, I might see this as a marketing opportunity to provide an inexpensive product that would be a solution for the LPT issue and also provide a seamless upgrade path to my flagship motion control product.

Taking the idea a step further, if such a product couple be produced for say US$50, it could be bundled with MACH4 with a $50 off coupon or a trade-in privilege to move to the full motion control product.




Title: Re: Comments about Mach4 in Demo
Post by: Steve Stallings on April 29, 2014, 10:27:02 AM
simpson36,

It is not a simple question of using a port address that Windows does not
normally treat as a printer port. The newer versions of Windows, especially
the 64 bit versions, control ALL access to ports and memory. The only way
to get data to a device is to ask Windows to do it for you. Unfortunately
Windows wants either certified device drivers, or devices that mimic the
standard printer, USB, or Ethernet that consumers use. Note that Windows
will allow you to write to a "printer" but not to the pins of a printer port.
The difference is how it gets done. Windows will deliver all the data, just
not with the timing that you are hoping to achieve. For this reason a
printer port under Windows 64 bit or any USB "printer" device will not
provide reliable timing for the step pulses used for CNC control.

Steve Stallings
www.PMDX.com

On the topic of 'to be or not to be'  LPT port, has anyone considered targeting an address configurable LPT card?

Let's say an LPT card costs about 10 bucks. This is not going to impact any rational decision to purchase MACH4. Most new computers don't have LPT ports anyway, so purchasing an add-in card is pretty much a given.

Would it be possible to have MACH4 talk to the UART on an LPT card thru a specific address which is not recognized (and blocked) by the OS. i.e. just use the hardware on an LPT card as an 'interface' between MACH4 and existing LPT based systems. If the OS does not see the UART functioning as an LPT, theoretically it would not interfere. Many moons ago I was trying different LPT cards and several did not register with Windows as LPT ports. They had drivers that emulated the LPT and passed the data stream to the hardware on the card. Absent that driver, the OS pretty much ignored the card.

Alternately, a USB device to simply mimic the simple on/off behavior of the handful of LPT pins would not be complicated or expensive to produce. MACH4 could then just send words to the device to be decoded into the pin array that matches the LPT layout.

There are a  lot of ways to skin this cat, but the overall idea would be to have an alternative to a full motion control solution (Kflop, Smoothstepper, etc) at a low cost that would simply mimic an LPT port. If outside the OS, the valid arguments about Microsoft unexpectedly mucking things up would be eliminated.

Just thinking out loud . . .  


Title: Re: Comments about Mach4 in Demo
Post by: Jeff_Birt on April 29, 2014, 11:17:52 AM
Nothing stops you from continuing to use Mach3 with a parallel port. When you need to move on to a new PC you will likely be out of luck. Brian has already said they are working with Art to get a parallel port plug-in, so what are you guys whining about?
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on April 29, 2014, 01:49:11 PM
simpson36,

It is not a simple question of using a port address that Windows does not
normally treat as a printer port. The newer versions of Windows, especially
the 64 bit versions, control ALL access to ports and memory. The only way
to get data to a device is to ask Windows to do it for you. Unfortunately
Windows wants either certified device drivers, or devices that mimic the
standard printer, USB, or Ethernet that consumers use. Note that Windows
will allow you to write to a "printer" but not to the pins of a printer port.
The difference is how it gets done. Windows will deliver all the data, just
not with the timing that you are hoping to achieve. For this reason a
printer port under Windows 64 bit or any USB "printer" device will not
provide reliable timing for the step pulses used for CNC control.

Steve Stallings
www.PMDX.com

I get it that Windows will not allow you to write to LPT pins, however, my thought was that if windows did NOT know it there were pins or that it was an LPT. Talking directly the UART thru a driver *seems* to me like it would not be significantly different from talking to a DSS or a DAC or any other LSIC and there are lots and lots of those kind of special purpose cards that do all sorts of stuff that Windows would not have traps for.

Development goes on for the Smoothstepper and now (as of this thread) the Kflop so apparently a special purpose device can be reached thru USB and Ethernet ports with current 64 bit versions of Windows. My question, in a nutshell, was why could not those same methods be used for a much simpler card that only generates the a matrix of on/off for the pin array by decoding a simple pre-defined command set? Toggling the physical pin array would be done on the other side of the driver from Windows and outside of memory space, so why would Windows interfere?

Timing, of course is another issue altogether. Windows does allow the priority to be set on each process, and the top setting is 'real time', but in my experience, that does not actually get full time attention for any process, even with multiple processors and the affinity set to an otherwise unused processor.

It seems I have not considered the larger problem of timing, yet there must be some solution as the Smoothstepper and Kflop do work. I wish I knew more about the issue. It looks like an interesting challenge. 

Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on April 29, 2014, 02:06:01 PM
Nothing stops you from continuing to use Mach3 with a parallel port. When you need to move on to a new PC you will likely be out of luck. Brian has already said they are working with Art to get a parallel port plug-in, so what are you guys whining about?

First of all, Jeff, 'we' if I may be presumptuous, are not whining with selfish motive. We are whining at the behest of the unfortunate huddled masses who, unlike ourselves, do not enjoy the benefits of third party motion control. It is a noble cause . .  and a thankless one . .  but somebody has to speak up for the unblessed among us.  :P

Secondly, the question has evolved past doing an LPT driver and speaking for myself only, I was addressing the comment of being at Microsoft's mercy and the desire to have some 'control of our destiny'. Circumventing the guard dogs in the OS would accomplish that . . if it is doable.

Greg and Tom come to mind as people with the skill set to make a 'Smoothstepper-Lite' or 'Baby K-flop'.  Had I the skill set, I would be doing it instead of simply whining about it. Alas, I do not. However, I am good at whining, and therefor the best option is to throw some seeds to those who have the talent and see if anything grows.  ;)

Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on April 29, 2014, 02:21:17 PM
Hey guys, why not open a separate thread for the LPT topic and discuss this there. Why cluttering this thread which was supposed to be for Mach4 comments...

Dan
Title: Re: Comments about Mach4 in Demo
Post by: Jeff_Birt on April 29, 2014, 04:29:10 PM
If Mach3 were a video game then the parallel port (driver) would be its gaming system. The parallel port (driver) is like the Atari 2600, a ground breaker, and one of the best inventions of all time. Over the years there have also been other system you could play Mach3 on: Galil, DSPMC, SmoothStepper, NCPod, PoKeys, etc. All of these alternative systems offered their own advantages and disadvantages but they all offered an advantage over the old parallel port gaming system.

Now the brand new game everyone has been waiting for is coming out, Mach4! Mach 4 is faster, has better graphics, is more power and more user configurable. Just a better game all the way around. Since Mach4 is new it is designed to take advantage of more modern gaming systems and the guys with the old parallel port gaming systems are feeling left out. The game developers at Mach said they are doing everything in their power to provide a interface to let owners of the old parallel port gaming systems play Mach 4. But, the guys with the parallel port gaming systems are still not happy. Even though there are a raft of alternative gaming systems in every price range that will play Mach4 they are still not happy.

Yes it sucks when technology moves on and leaves you in the dust. My CD player won't play my old records and my DVD player won't play VHS tapes. So, I can choose to take advantage of the newer, better technology or sit around mumbling to myself about how great vinyl really was....
Title: Re: Comments about Mach4 in Demo
Post by: RICH on April 30, 2014, 08:42:04 AM
Nothing can stand still, it either moves forward or withers and dies since this is just a rule of nature.
That said, accept nature's rule.
--------------------------------------------------------------

A lot of folks will stay with Mach 3 for a long time until absolutely forced to deal with the inevitable.
If Mach3 does what they want it to do for them they may not upgrade. They see new computer,
new Mach, new controller board, new software, new printer, new scanner, new + new +new = $
in the big picture, and face it, one just gets tired of  the "change" since value recieved is not justified in their big picture at their operating level. So I think that is truely what is in the thought cloud above
folks heads.

---------------------------------------

A lot of time has been spent on Mach4.
I just hope that whatever external motion devices that will be available are cost effective, work first time around ( ie; that it does not mean you purchase something, then need to update, and update, takes years for it to do what is required and spending money on it it along the way.

So take your time motion device folks to compliment Mach4.

----------------------------------------------

Just my penny FWIW............, ;)

RICH



Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 11:31:54 AM
For the Record I just HOPE that when Mach4 hits the market that ALL primary CNC calls and controls are Complete and ready to sling chips. Things like G68 , G31, all Canned cycles working,etc

COntrols such as Run From Here, Reverse RUN,etc

AND we are not left to our own to have to try and create such things in LUA.

LUA is NOT simple to the average person from my experience (non programmer). YES I think it is great that MACH4 still allows for one to create something SPECIAL and that will open up a SPECIAL function market$$  for clever programmers but all the NORMAL modern CNC based controls should be up and running and working correctly.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 03:44:46 PM
HIYA Brian , looking at the fixture and tool tables I see that we can now use the keyboard to move around in the values windows to do updates to the values which is VERY GOOD  BUT I do not see a way to EXIT out with a mouse.

Also reviewing the G98/99 calls I see we can now GOTO a sequence line.  Can I assume the the sequence number is the LINE # ??

Can we expect conditional in the near future to make that useful.

Also the calls are not consistant.

M98 Pxx Qxx Lxx      Where Q calls the GOTO line #

M99 Pxx                Where P calls the goto Line #

Would it not be more consistant for the Q to be used in both cases to call the GOTO line#  ??

Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 04:05:39 PM
I also noticed that the Gcode comments are not displayed on screen.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 30, 2014, 10:14:10 PM
I also noticed that the Gcode comments are not displayed on screen.

(;-) TP

This is an option now.  It is set on the general tab of the configuration dialog.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 30, 2014, 10:22:11 PM
HIYA Brian , looking at the fixture and tool tables I see that we can now use the keyboard to move around in the values windows to do updates to the values which is VERY GOOD  BUT I do not see a way to EXIT out with a mouse.

Also reviewing the G98/99 calls I see we can now GOTO a sequence line.  Can I assume the the sequence number is the LINE # ??

Can we expect conditional in the near future to make that useful.

Also the calls are not consistant.

M98 Pxx Qxx Lxx      Where Q calls the GOTO line #

M99 Pxx                Where P calls the goto Line #

Would it not be more consistant for the Q to be used in both cases to call the GOTO line#  ??

I think you can close the table windows with the standard ALT-F4.  But I will see if I can make it work with the Escape key.  Maybe I can make that work.  But we are getting into the weeds of the window framework there.  If it won't work across all platforms, I'm kind of stuck with the least common denominator.

I did the M98/M99 with the help and direction of a very experienced Fanuc programmer and the Peter Smid book.  I think it is correct.  But I will look at it.

Ok, I just checked.  There is no Q address for M99.  P it is.  Inconsistent, yes.  Incorrect, no.  The sequence number is defined by the N address, not line number.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 10:43:42 PM
HIYA Steve, while you are looking at teh exscape sequence could you take a look at the values entry sequence ? As is on a line say tool #3 when you enter in a value an press ENTER it skips DOWN to the next Tool # line instead of to the right in order to finish adding values for THAT tool #.

It makes it very clumsy to add tool /fixture parameters as after each entry you then have to shift back up then move over to the right in order to add the next tool parameter.

I tested the M99 P## earlier but it stuck in the loop over and over in the sub call BUT the M99 Q seemed to work ok. Maybe I muffed the test somehow I will go back and retest the sequencing again.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 11:21:23 PM
HIYA Steve M99 Pxx it is. When I tried the M99Qxx it just ignored it with NO error code and it just seemed to work. I do notice that there is liitle to no error codes in the gcode side it will take just about anything and just ignore what it does not know and go on without erroring out or wwrning you there is bad code.

Another item When trying to create a new program from edit Gcode you cannot open a new  file. You must first load an OLD program then edit and rename.

Also you say you can turn on comments in config but MY version does not have a mach config, it is greyed out and you cannot access it.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on April 30, 2014, 11:33:26 PM
Another problem with the Gcode editor is sometimes when you return to Mach4 it locks up mach and crashes OR it closes and then tell you it cannot load a file at this time.

Some times it works just fine

???? (;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 30, 2014, 11:38:07 PM
Can we expect conditional in the near future to make that useful.

We already have it.  Full Fanuc custom macro B with full G65 and G66 support as well.  It is a Mach 4 Industrial feature.  Not part of Mach 4 Hobby as Mach3 never had it.  However, it is turned on in the Beta build if you want to try it out.  SETVN and gcode labeling of subs is not finished yet.  Passing an E address as a parameter to a G65 is not legal either as we use E as scientific notation.

One thing to note is that CV is NOT interrupted with the conditional statement.  So the conditions are evaluated at the point at which the look ahead processes them.  So if you want the condition to be evaluated in sync with the machine run, then you must use an exact stop preparatory code right before the conditional statement.  That is the mode that we are currently using.  This mode has advantages in producing smooth movement with calculated moves.  The other option is that all conditional statements will break the CV chain ensuring that the evaluations are always synced with the machine run.  This mode is not used at this time and favors code path switches based on external inputs.  I will possibly make a switch so that a M code can control which mode.  But for now only the first mode it supported as I feel it is the most flexible because you can control when the evaluation happens with exact stop.

IF [condition] GOTO <seqnum>
IF [condition] <statement>
WHILE [condition] DO<level>
...
END<level>

We support the standard 3 level nesting.

HIYA Steve, while you are looking at teh exscape sequence could you take a look at the values entry sequence ? As is on a line say tool #3 when you enter in a value an press ENTER it skips DOWN to the next Tool # line instead of to the right in order to finish adding values for THAT tool #.

It makes it very clumsy to add tool /fixture parameters as after each entry you then have to shift back up then move over to the right in order to add the next tool parameter.

I tested the M99 P## earlier but it stuck in the loop over and over in the sub call BUT the M99 Q seemed to work ok. Maybe I muffed the test somehow I will go back and retest the sequencing again.

The entry sequence in the grid is controlled by the window framework.  I can't change it.  I have already tried.  :(

Let me know the results of your M98/M99 test.  Because I had that working flawlessly at one point.  Looking at the code, any Q address on the M99 will be ignored.  It is definitely looking for a P address.  Also, keep in mind that the M99 P address must refer to a sequence number in the calling program, not a line number.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: smurph on April 30, 2014, 11:48:11 PM
HIYA Steve M99 Pxx it is. When I tried the M99Qxx it just ignored it with NO error code and it just seemed to work. I do notice that there is liitle to no error codes in the gcode side it will take just about anything and just ignore what it does not know and go on without erroring out or wwrning you there is bad code.

Another item When trying to create a new program from edit Gcode you cannot open a new  file. You must first load an OLD program then edit and rename.

Also you say you can turn on comments in config but MY version does not have a mach config, it is greyed out and you cannot access it.

So the M99 question is answered then. 

As for the errors...  Don't produce bad code!  :)  All kidding aside the interpreter does not currently check M codes for sanity.  I will look and see what I can do there.

And I will address the editing of a new file.  I never even thought of trying to do that!  I always load up an existing file.  Someone asked what the point of this thread was earlier.  Well...  this is it!!!

We have done our absolute best to get Mach 4 ready with as few issues as possible.  Obviously we have spent a great deal of time on it and even suffered criticism as a result.  But there is no possible way we can cover all of the potential issues as many of them might not show up due to how Brian or I operate Mach.  Each user has their own way of doing things and that is the point of this thread.  To find those problems!

The G code editor file load might be file sharing violation issue.  Two editors open maybe?  See if you can nail that one down as I have not see that.

Disable the control and the Mach config will light up. 

Steve
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 01:21:12 AM
HIYA Steve the error codes are not just a problem in Mcodes(;-)

Try G02     (with no I or Js) it does not error out here it ignores it and goes on.  And there are more.

So with the current mode of conditional I can use the G60 to create an exact stop then call parameters that are ONLY available at that time. My current Fanuc macroB is very rusty BUT it should not take long to knock the dust off of it(;-) I spent a long time converting macroB to Machmacro now I have to go the other way(;-)

I switched Mach4 to ADMIN rights and the crashing of the Gcode editor has stopped for now.

(;-) TP

Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 01:45:31 AM
G02 with no I or Js is perfectly acceptable.  It is a modal command.  Consider:

%
F30
G02
X.. Y.. I.. J..
X.. Y.. I.. J..
X.. Y.. I.. J..
G01
X..  Y..
M02

And:

G02 F30  (switch to G02 mode)
G01 X0 Y0 F30 (switch to G01 mode.  Previous line ends up as a no op)
...

Got any more?  There might be some and I would like the know as I'm not ever using all of the G codes.  I tend to use CAM because I'm lazy.  :)

Steve
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 02:17:26 AM
Well Jimminy crickets MACH4 Conditional does work (;-), Been waiting on that for about 10 years now. IS the syntax the same as Fanuc as far as operators

EQ = equal to
NE = Not equal to
etc
etc

In my testing I will just compile a single list for you when I run across them again.

Have to drag out some Fanuc MacroB macros to test(;-)

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 02:49:48 AM
HIYA STEVE, I ran itno a problem with this macro. IN the G65 call  Instead of the Parameter "A(#1)" being used to set the starting point angle for the macro Mach4 is trying to rotate the A axis to 45 deg at a VERY slow rate.


    O0008 (Main program)
    N005 G54 G90 S800 M03 T02 F100(Select coordinate system, absolute mode, start spindle, get next tool ready)
    N010 G00 X3.0 Y2.5 (Rapid to center of bolt hole pattern)
    N015 G43 H01 Z.1 (Instate tool length compensation, rapid up to workpiece)
    N020 G65 P1008 X3.0 Y2.5 Z0 R1.75 D0.75 A45.0 H8.0 C81. F50 (Machine entire bolt hole pattern with drilling cycle)
M30


    O1008 (Custom macro to machine bolt hole circle)
    #101=1 (Initialize counter)
    #102=#1 (Initialize current angle to A)
    #103=360 / #11 (Constant for incremental angular distance between holes)
    #104=#26 + 0.1 (Constant for rapid approach plane)
    #105=#26 - #7 (Constant for Z bottom position of hole)
    N1 IF [#101 GT #11] GOTO 99 (Test if loop is finished)
    #110=#24 + COS[#102] * #18 (Calculate X position for current hole based on current angle)
    #111=#25 + SIN[#102] * #18 (Calculate Y position for current hole based on current angle)
    G#3 X#110 Y#111 R#104 Z#105 F#9 (Machine current hole)
    G80 (Cancel cycle)
    #101=#101 + 1 (Step counter)
    #102=#102 + #103 (Step current angle)
    GOTO 1 (Go back to test at loop beginning)
    N099
 M99 (End of custom macro)


(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 03:00:26 AM
The reason you waited 10 years is because it was not easy!

I will check it out.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 01, 2014, 06:31:02 AM
    #1
    #11
    #26
    #7
    #24
    #18
    #25
    #3
    #9

did I miss where these got set?
Title: Re: Comments about Mach4 in Demo
Post by: Graham Waterworth on May 01, 2014, 07:02:11 AM
The G65 line passes the values into the local variables in the macro so the X3.0 is passed into #24 and the Y2.5 is passed to #25 Etc.  The #1 to #26 are local to the called macro so to be able to pass them into other macros they must be copied to global variables (#100 upward) or parameter passed.  Here is the list and its # number to receive the passed value.

A = #1
B = #2
C = #3
D = #7
E =  (Mach4 RESERVED SYSTEM WORD at the moment)
F = #9
G (RESERVED SYSTEM WORD)
H = #11
I = #4
J = #5
K = #6
L  (RESERVED SYSTEM WORD)
M = #13
N  (RESERVED SYSTEM WORD)
O  (RESERVED SYSTEM WORD)
P  (RESERVED SYSTEM WORD)
Q = #17
R = #18
S = #19
T = #20
U = #21
V = #22
W = #23
X = #24
Y = #25
Z = #26

As you can see from the list the numbers are not in order so care should be taken when using them, also not all the words can be used as some are system reserved.

Graham
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 01, 2014, 07:37:27 AM
Dag-nabbit...........

Now I have to go and learn Fanuc B......
***donning nerd hat, WITH propeller***

Scott
Title: Re: Comments about Mach4 in Demo
Post by: ger21 on May 01, 2014, 08:29:23 AM
Quote
We already have it.  Full Fanuc custom macro B with full G65 and G66 support as well.  It is a Mach 4 Industrial feature.  Not part of Mach 4 Hobby as Mach3 never had it

You guys do realize that this is going to cost $1000 or more?

Brian, any thought about a reduced price "industrial hobby" version with no phone support? Maybe at $500? There are a lot of advanced hobby users who've always wanted these features, but don't necessarily need support. Provided there's adequate documentation.

Is there a list of what features industrial will have that Hobby won't?
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 09:43:37 AM
I wish there was a way to make the Macro B an option but we need to have a line in the sand. Now what we are going to do for you guys testing this out and helping is the following:

If you Buy Mach4 Hobby during the introduction period we will make a special offer to upgrade your version to Industrial. I want to give you all something for the great effort you are putting in to help us debug. I think that is a far solution and we all win!

Thanks
Brian
Title: Re: Comments about Mach4 in Demo
Post by: Bodini on May 01, 2014, 10:21:08 AM
I find entering numbers in the DROs rather inconvenient comparing to how it used to be in Mach3 where a single click would highlight the whole number.

I too am already annoyed by this.  1 click should highlight the whole field, IMO.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 10:32:50 AM
HIYA Graham, Steve told me that the E parameter was a reserved word and was not used in the Mach version SO there MAY be a difference in the G65 local parameter list. If so that throw a little KINK in directly uses the mass amount of MacroB macros out there BUT it may just be a simple conversion if all one has to do is shuffle around the parmeters a bit.

For once you programers did create something I understand, macroB , conditional and SUBs (;-).

Happy as a pig with a new slop barrel, (;-) Sad as a lost puppy because it cost so much. OOB  ( Out of Budget)


HIYA Steve thanks for staying up so late last night. Another glich in using the Gcode editor is when you exit it or for that matter any outside function it does NOT clear the Message line out. It leaves the last message stuck there. That makes you have to manually clear the history out so so can KNOW if the message you see is valid to the Gcode reloaded.

So far loading mach4 under Admin rights has cleared up the problem of the Gcode editor crashing or locking up.

Do you have a list of the Local G65 Parameters "A=#1 B=#2 C=#3 etc??

I agree with the DRO entry it IS a pain to deal with from a control panel entry.

(;-) TP

Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 01, 2014, 10:36:11 AM
I find entering numbers in the DROs rather inconvenient comparing to how it used to be in Mach3 where a single click would highlight the whole number.

I too am already annoyed by this.  1 click should highlight the whole field, IMO.

I actually like the way it is in 4.
In 3, you had no option to change 1 digit if you wanted to ... and I like that option without the need to retype the entire value.
(this is where I have seen mistakes made)
Could flip the 1 clk/2 cllk functions maybe, but that seems trivial to me.

Just me,
Russ
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 01, 2014, 10:52:18 AM
First play time with MACH4 on Intel Dual processor Win7 Pro 64 bit

GENERAL:

VERY impressive speed. Program feels slick and modern in contract to MACH3

Lua is not going to be a problem (speaking for myself) as it tastes like 'C'.  The ONLY use I have for VBscript is MACH3. Everything else is 'C' or looks like 'C'.

** edit **  FYI the Lua programming reference guide is available in hard copy or a variety of machine readable formats. I purchased the .pdf version for US$23

Built in editors are going to be and welcome addition.

Multi line MIDI - friggin' awesome!

BooBoos:

I think keyboard jog has been mentioned already.

Screen 'lights' next to buttons not working.

Find/Replace in both G-code and Lua editors is sporadic and unpredictable when/if it works at all.
 
QUESTION:

Is Modbus functional in the demo?

Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 10:54:29 AM
Yes Modbus is 100% working in this Demo
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 01, 2014, 11:06:22 AM
Yes Modbus is 100% working in this Demo

Perfect. I'll beat up on it and report results here.

Is there any documentation available yet?
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 12:07:29 PM
Hiya Steve here are a few more items that have a glitch.

1.  On arcs G2/G3 and the IJs are missing you get NO error it just skips over the line and proceeds.

2. On G16/15 functions it tries to process ARCS without an error message. G16 moves are strictly G0/G1

moves and the arc call should have errored out in stead of trying to run.

3.  In G84 it does not allow G95 mode UNLESS the spindle has the speed sensor working. The G95 mode with drilling and tapping is the perfered mode as it makes it easy to program the proper feedrate. AN option to run with the CALLED(programmed) Spindle speed is needed as Many kneemil type CNCs do not have a spindle index signal for rpm indication AND it is difficult to install one as they have split spindle shafts at the mid gearbox and the TOP shaft RPM is different that the actual spindle.

Occationaly I see A axis movement in gocde functions that do NOT have A axis movement code in them. SOmetimes it moves sometimes it does not move A axis. When it does move it is just a very slow creeping move.
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 12:22:00 PM
Yes Modbus is 100% working in this Demo

Perfect. I'll beat up on it and report results here.

Is there any documentation available yet?

Nope :( I did the setup manual but I didn't do a manual for Modbus..
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 12:22:56 PM
We can do R type Arcs in G16 (The manual I looked at said you should be able to do it so I added that in)
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 01, 2014, 12:25:02 PM
From what I can see Id say pay more attention to these wxwidgets pages.
as wx.wx starts everything function-able.

http://docs.wxwidgets.org/trunk/

putting this in a button script, a message box pops up
Your passing the function information into a string that gets displayed in a message box

local dir = wx.wxGetHomeDir();
wx.wxMessageBox("Your Home Directory is == " .. tostring(dir) )

Just as a good habit, remember to hit the disable button before you edit a screen set.

I'm just getting started on a new Tab, Having fun
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 01:08:57 PM
Craig, You are a mad man! I Love it!
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 01:38:23 PM
Hiya Steve here are a few more items that have a glitch.

1.  On arcs G2/G3 and the IJs are missing you get NO error it just skips over the line and proceeds.

2. On G16/15 functions it tries to process ARCS without an error message. G16 moves are strictly G0/G1

moves and the arc call should have errored out in stead of trying to run.

3.  In G84 it does not allow G95 mode UNLESS the spindle has the speed sensor working. The G95 mode with drilling and tapping is the perfered mode as it makes it easy to program the proper feedrate. AN option to run with the CALLED(programmed) Spindle speed is needed as Many kneemil type CNCs do not have a spindle index signal for rpm indication AND it is difficult to install one as they have split spindle shafts at the mid gearbox and the TOP shaft RPM is different that the actual spindle.

Occationaly I see A axis movement in gocde functions that do NOT have A axis movement code in them. SOmetimes it moves sometimes it does not move A axis. When it does move it is just a very slow creeping move.

1.  I thought we discussed that already.  G02/03 are modal commands.  It is perfectly legal to not have ANYTHING on the same line as G02/G03.
2.  Brian addressed this.
3.  I'll look at the G84/G95 thing.

I have not seen the A axis issue.  I will try and duplicate this.  Do you have code that will reproduce this?

Also...  I'm hard at work right now working with the DROs.  Including a popup keypad that will benefit touch screens as per Dan13's suggestions.  However, we are constrained with what can be done in a lot of the screen controls because we have to program for the least common denominator across all platforms.  Making the DRO highlight all with one click is proving to be quite a challenge!

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Jeff_Birt on May 01, 2014, 01:48:33 PM
HIYA Steve, while you are looking at teh exscape sequence could you take a look at the values entry sequence ? As is on a line say tool #3 when you enter in a value an press ENTER it skips DOWN to the next Tool # line instead of to the right in order to finish adding values for THAT tool #.

It makes it very clumsy to add tool /fixture parameters as after each entry you then have to shift back up then move over to the right in order to add the next tool parameter.

I tested the M99 P## earlier but it stuck in the loop over and over in the sub call BUT the M99 Q seemed to work ok. Maybe I muffed the test somehow I will go back and retest the sequencing again.

When you have any sort of grid to input data pressing 'TAB' will move to the right one cell and pressing 'ENTER' will move down one cell. It works this way on every program and operating system I can think of.
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 01:56:29 PM
Do you have a list of the Local G65 Parameters "A=#1 B=#2 C=#3 etc??

What Graham posted is what we use.  Standard Fanuc.  We won't get into mixing or shuffling them up for our own purposes.  We just reserve the E address because the interpreter will look at it as scientific notation.  When I get time, I may try and remove this restriction.  But for now, it is reserved. 

Most of the reserved addresses have a special meaning on the G65 line but they can be accessed in the sub.
E (Mach reserved) would be #8.  it will be loaded with NIL (undefined).
G (RESERVED SYSTEM WORD) would be #10.  It will be loaded with "650" as G65 is what called the sub!  This is how you can know if G65 called the sub or not.
L  (RESERVED SYSTEM WORD) would be #12.  It is loaded the the loop count from the G65 L address.
N  (RESERVED SYSTEM WORD) would be #14.  It is loaded with the sequence number of the G65 line (if provided).
O  (RESERVED SYSTEM WORD) would be #15.  It is not loaded with anything at the moment.
P  (RESERVED SYSTEM WORD) would be #16.  It is loaded with the program number from the G65 P address. (your called sub program number)

Steve
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 02:08:56 PM
Also, a word on sub programs.  We now have the capability of calling system subroutines that are external to the main program.  These subroutines should be placed in the <mach dir>\Subroutines directory with the filename of "O" plus the program number.  No file extension.  For example:

Program number 8000 should be named "O8000" and placed in the Subroutines directory.

Then "M98 P8000" or "G65 P8000" in the main program can call the system sub "O8000" in the Subroutines directory.  Loading the comment on the M98 line with a file name is no longer required (however, it is still supported).  You can't mix the two methods, obviously.  Meaning that if you use the P address on M98 to call an external sub, you should not also use the comment to define it.

There is no limit on sub nesting now.  Well...  the limit is your PC and whatever resources it has.  But we don't confine you to only 5 levels of nesting or the like. 

This is a standard Mach 4 Hobby feature!!! 
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 01, 2014, 06:07:58 PM
Is MACH4 suspended while a SUB is running (as with MACH3 named SUBS) or is it still necessary to insert pauses/delays?

And as long as were on the topic, does MACH4 support named SUBS?
Title: Re: Comments about Mach4 in Demo
Post by: Bodini on May 01, 2014, 07:37:32 PM
DRO bug: a dro placed on the screen is actually "Border>sunken" and not "Border>none" as the properties panel shows.  You have to set the placed DRO to some style other than "none" and then set it back to "none" to get it to actually show as "none".
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 07:59:58 PM
HIYA Steve,  Yes an EMPTY G02 call is fine as it is setting a mode. I do not know of many that would do it that way but yes I agree

BUT G02 X0Y0 is NOT just trying to set a modal call but trying to do an arc with NO I Js. THAT should throw an error on load. HOW else would you know  that you have a block  of bad code UNTIL you crashed the machine ?

The strange A axis creeping is a random thing with the SAME gcode program sometimes it does it somtimes it does not But normally it is with a sub or a macro. Normally if the G65 call has an "A" parameter call then it MAY do it. I will see if I can make it do it everytime or at least give you the code that does it sometimes.

(;-) TP

Hiya Brian , Arcs in G16 (;-) What would be the point ? the G16 does polar point to point moves around a center point. Like for doing a Bolt hole circle. I was testing to see IF you could cut a circle at each polar point in the pattern. It really should have errored out but instead it TRIED to do an Arc with IJs in the code.

Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 08:40:15 PM
Is MACH4 suspended while a SUB is running (as with MACH3 named SUBS) or is it still necessary to insert pauses/delays?

And as long as were on the topic, does MACH4 support named SUBS?

Mach 4 is not suspended.  But I'm not sure what you mean.

And by named subs do you mean the sub file named in the comment?  If so, then Mach 4 supports that.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 01, 2014, 08:49:24 PM
G16 should do Arcs with R only.. I didn't add the code to do the error checking at this time.

Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 09:35:24 PM
hIYA Brian I cannot find an example of arcs in G16 can you give a simple example of how it would be used or called ??

Thanks (;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 01, 2014, 09:57:09 PM
Hiya Steve I found the reason for the "Cannot load file at this time" error.

I was using single block mode and Mach 4  does not load IF it cannot run the postcheck on the Gcode.  A better Error message maybe ??

By the way the LEDS on the screens do not work, I cannot telll IF Single block mode is on or off.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 01, 2014, 10:08:14 PM

By the way the LEDS on the screens do not work, I cannot telll IF Single block mode is on or off.

(;-) TP

Hi TP  :)
I found several buttons and led's assigned wrongly and just change them.
Russ
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 01, 2014, 10:24:59 PM
I think an old screen set was in the build.  It is probably a LED signal is wrong.  Edit the screen and check it out.  In any case, the screen set I'm using will be in the next update and all of that stuff will be fixed.
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 01, 2014, 11:10:09 PM
That would explain it, thanks.
Some of the DRO's are wrong as well.
Been fixing them as I come across them.

Thanks again,
Russ
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 04:46:18 AM
Is MACH4 suspended while a SUB is running (as with MACH3 named SUBS) or is it still necessary to insert pauses/delays?

And as long as were on the topic, does MACH4 support named SUBS?

Mach 4 is not suspended.  But I'm not sure what you mean.

And by named subs do you mean the sub file named in the comment?  If so, then Mach 4 supports that.

Steve
Sorry for confusion. I tend to think of macros as subroutines and intermix the terms.  

When I started modifying MACH3, macros could only be 'named' as 'M*********x'. When called from G-code, the MACH3 interpreter would pass the script execution to VBscript and then immediately move on to process the next G-code block. If the script was producing data used by subsequent G-code, the data might not be updated prior to the G-code block grabbing the data.

The only cure for this was to insert delays to give the VBscript time to execute before the G-code block needing the data was parsed by the MACH interpreter.

By 'named' I refer to scripts contained in external files having any legal windows file name instead of the restrictive 'M*********'.  The behavior of RunScript differed in that MACH3 waited (suspended the g-code interperter) until the script returned before continuing to the next G-code block. Here is the description from the Programmer's reference


RunScript
Function RunScript(ByVal QFN as string) as Integer
This function can be used to run the script in the specified filename.
The qualified file name (QFN) parameter is relative to the Mach install directory.
The function will load the specified script file, compile it, execute it and return when the
script has completed.
Prior to the addition of this call, it was common practice to put script code into a
M*********.m1s macro, and use the Code call to execute the M********* macro. The execution of an
M********* macro involves the use of the Mach GCode interpreter (as what you are really doing is executing a GCode M word block) and can result in the programmer having to
invent and handle semaphores to coordinate the asynchronous execution of the M*********
macro.
It is recommended that the use of the Code “as a subroutine call method” be avoided and
that, when possible, the RunScript call should be used instead.y

First Mach3 version with API:
This API was first implemented in Mach3 version 3.43.06.
On 3.43.6 the API was defined as a Boolean function
Return Value:
True = Script was found and invoked.
False = Script was not found.
This API was revised in Mach3 version 3.43.19 to be an integer function.


When this was implemented, I changed dozens of macros to this method and a lot of timing issues were eliminated and the system as a whole became more stable and reliable, particularly with complex rigid tapping macros. It gets ugly when MACH3 moves while the tap is still in the hole, for example.

So, with Lua replacing VBscript, how is the above described process handled by MACH4? Specifically, does MACH4 suspend the G-code execution until macros return or will the programmer still have to test and insert delays to assure this happens?

Secondly, will macros be able to have any legal windows file name and be called by a 'RunScript' (or equiv) call?
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 05:11:51 AM
Windows 7 pro 64 bit - dual processor - Inlel CPU - Intel MB - 8MB RAM - Intel RAID active - Intel NIC - Nvidia graphics

MACH4 will not start if a Virtual PC is running. Likely would not be an issue for a dedicated PC running a machine tool, so just an FYI
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 05:17:58 AM
MACH Config - Input signals tab - first column is not resizable - text truncated
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on May 02, 2014, 07:32:29 AM
MACH Config - Input signals tab - first column is not resizable - text truncated

Don't see it here...
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on May 02, 2014, 07:36:42 AM
Asked this before, but it again got missed - is there a way to have the DRO's persistent like it is in Mach3?

Also, a few other things:

1. Are there no settings for CV like there used to be in Mach3?
2. While running a program, all the buttons under the the File Ops tab should be grayed out or at least shouldn't do anything if clicked on, like it is in Mach3. Clicking one of them in Mach3 returns a message that you should first Stop the programme running.
3. Can the file loader be made to remember the last location and not default to the root directory of Mach4?
4.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 08:28:31 AM
MACH Config - Input signals tab - first column is not resizable - text truncated

Don't see it here...

The issue is also present on Axis Mapping, Homing, Input, Output and Spindle tabs.

By 'first column, I refer to the gray colored column that has, for lack of a better term, the 'titles' for each line. This column cannot be resized on my system. Some of the 'titles' exceed the available space and are therefor truncated. In most cases, this is not much of a problem, but some of the titles need to be guessed at, which is not a good thing.
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 02, 2014, 08:37:20 AM
Worked on a quick little routine this morning while watching the news.

I like to know the percent of completion the program I am running.

Added the Dro's and text to the tab then
Added this to the PLC Script

Code: [Select]
local TotalLines = mc.mcCntlGetGcodeLineCount(inst);
local GcodeCurrentLine = mc.mcCntlGetGcodeLineNbr(inst);
scr.SetProperty('droTotal', 'Value', tostring(TotalLines));
local GcodePercent = (GcodeCurrentLine/TotalLines) * 100;
scr.SetProperty('droPercent', 'Value', tostring(GcodePercent));

Works well, but I did notice a gcode file this big sure slows down everything you try to do.

Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 02, 2014, 08:38:55 AM
MACH Config - Input signals tab - first column is not resizable - text truncated

Don't see it here...

The issue is also present on Axis Mapping, Homing, Input, Output and Spindle tabs.

By 'first column, I refer to the gray colored column that has, for lack of a better term, the 'titles' for each line. This column cannot be resized on my system. Some of the 'titles' exceed the available space and are therefor truncated. In most cases, this is not much of a problem, but some of the titles need to be guessed at, which is not a good thing.

They ALL drag and display properly here, top row as well as columns.
Dell laptop
XP SP3

Russ
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 02, 2014, 08:43:59 AM

3. Can the file loader be made to remember the last location and not default to the root directory of Mach4?
4.

Dan
I'm with Dan on # 3.

Also, G4 .... anywhere to select ms instead of seconds ?
Is decimal seconds a valid entry ?  ie: 0.25

Thanks,
Russ
Title: Re: Comments about Mach4 in Demo
Post by: MachMotion Development Team on May 02, 2014, 09:17:16 AM

So, with Lua replacing VBscript, how is the above described process handled by MACH4? Specifically, does MACH4 suspend the G-code execution until macros return or will the programmer still have to test and insert delays to assure this happens?

Secondly, will macros be able to have any legal windows file name and be called by a 'RunScript' (or equiv) call?


simpson36,

First I want to explain the main difference between how mach3 handled Mcodes and how mach4 handles Mcodes.  In mach3 every time a Mcode was called from gcode or a RunScript command mach would go find the mcode load that single VB script, compile it and then run it.  So in mach3 every mcode was run on its own thread and the only way to have one mcode pass variables to another mcode was through a DRO, LED ect.

Now lets talk about mach4!! When mach4 starts up it will look at all the Mcodes in the Macros directory and compile them and load them into a single file called mcLua.mcc this is the file mach will run from when a Mcode is called. Now this is where it gets cool! In mach4 when you define a variable you can define it as "local testvar = 123" or a global "testvar = 123" if it is a global variable then any Mcode or script that is in the macros directory can read that variable.

Another big difference is how you must create your mcodes, here is a example.

function m3()
   local inst = mc.mcGetInstance() -- Get the current instance
    local Range, Dwell

   Range = mc.mcSpindleGetCurrentRange(inst);
   Dwell = mc.mcSpindleGetAccelTime(inst, Range);
   
   -- Turn on Spindle FWD Output
   local hReg = mc.mcSignalGetHandle(inst,mc.OSIG_SPINDLEFWD)
    if hReg == 0 then
        mc.mcCntlSetLastError(inst, "Get Handle Error")
      return
    end
   mc.mcSignalSetState(hReg,true)
   
   -- Turn on Spindle On Output
   local hReg = mc.mcSignalGetHandle(inst,mc.OSIG_SPINDLEON)
    if hReg == 0 then
        mc.mcCntlSetLastError(inst, "Get Handle Error")
      return
    end
   mc.mcSignalSetState(hReg,true)
   
   --Dwell while spindle gets up to speed
   wx.wxSleep(Dwell);
end

if (mc.mcInEditor() == 1) then
    m3()
end

Because mach4 compiles all the Mcodes into one script and runs them the only thing that separates Mcodes in the mcLua file are the "function" calls that each Mocde needs to have.

If I was making a custom mcode and needed to run m3 I would simply write "m3()" and because the custom mcode we made is compiled into mcLua along with m3 we can call m3 just like we would call a local function.

This opens up a whole new world of powerful options!!

I hope that helps!!

Andrew Eldredge
MachMotion
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 02, 2014, 09:53:36 AM
Andrew, in your code above, perhaps you could show what you where using: "Range = mc.mcSpindleGetCurrentRange(inst);"  Didn't see where you used it in your m3() code above.

I definitely agree, wxLua and M4 rocks!

Scott
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 02, 2014, 10:07:20 AM
Range = mc.mcSpindleGetCurrentRange(inst);
Dwell = mc.mcSpindleGetAccelTime(inst, Range);

He is passing the variable Range into the Dwell functions second field

There is a whole lot to learn for all of us. Blowing my mind the possibilities. No wonder it took them so damn long. lol
using a Messagebox helps with debugging and seeing what is in the variables, helps me anyways.

wx.wxMessageBox("Range == " .. tostring(Range) )
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 02, 2014, 10:56:54 AM
HIYA Brian a while back we talked about in Mach4 that it "could" display the #vars as real numbers in the Gcode window as the program ran. Did this make it into Mach4 ??

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 02, 2014, 11:07:57 AM
Benny,

Perhaps I need to rephrase the question, I was wondering more what the Range was i.e.  Pulley range, rpm range, acceleration range etc... is that var, represent the total value of the full range, i.e.  Max - Min of what ever range it is measuring, etc.
Should have tried to clarify better.
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 02, 2014, 11:20:29 AM
That seemed like a odd question from your wisdom on programming, but did want to pass on some information to others as to how to get used to this new scripting. And don't be afraid of trying and learning something much more powerful then VB.
We ain't dead yet.

Most of my post are for general knowledge and enlightenment. The ole instructor in me.
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 11:21:18 AM
MACH Config - Input signals tab - first column is not resizable - text truncated

Don't see it here...

The issue is also present on Axis Mapping, Homing, Input, Output and Spindle tabs.

By 'first column, I refer to the gray colored column that has, for lack of a better term, the 'titles' for each line. This column cannot be resized on my system. Some of the 'titles' exceed the available space and are therefor truncated. In most cases, this is not much of a problem, but some of the titles need to be guessed at, which is not a good thing.

They ALL drag and display properly here, top row as well as columns.
Dell laptop
XP SP3

Russ

I do not understand what I could be doing wrong, then. No matter ho slowly or carefully I float
 the cursor over the vertical line between COLUMN 1 and 2, I do not get the expand cursor as I get with every other vertical line between COLUMNS.

To make sure we are on the same page, I am attaching a screen capture with the first column circled. How do I make this column wider?

(http://www.thecubestudio.com/MACH4expandCapture.JPG)
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 11:46:49 AM

So, with Lua replacing VBscript, how is the above described process handled by MACH4? Specifically, does MACH4 suspend the G-code execution until macros return or will the programmer still have to test and insert delays to assure this happens?

Secondly, will macros be able to have any legal windows file name and be called by a 'RunScript' (or equiv) call?


simpson36,

First I want to explain the main difference between how mach3 handled Mcodes and how mach4 handles Mcodes.  In mach3 every time a Mcode was called from gcode or a RunScript command mach would go find the mcode load that single VB script, compile it and then run it.  So in mach3 every mcode was run on its own thread and the only way to have one mcode pass variables to another mcode was through a DRO, LED ect.

Now lets talk about mach4!!


Andrew, thanks for the info. It does help. However, my original question remain:

1) Does MACH4 wait for a return from a 'function' before it parses the next G-code block.
 - and-
2) Can 'named' (sorry, I don't know what else to call them) scripts residing in legally named Windows files be called from a 'function'.

Here is an example:

'© 2012 www.theCUBEstudio.com
'NAME:       M4011
'ACTION:    Runs script to set Lathe mode ON
'USE:          embedded macro

 
If RunScript("\macros\Simpson\4thAxisModeOFF") < 0 Then
MsgBox "RunScript 4thAxisModeOFF returned an error"
End If


The above 'numbered' macro calls the following 'named' macro:

'© 2012 www.theCUBEstudio.com
'NAME:      4thAxisModeOFF
'ACTION:    Macro to set Axis mode
'USE:       Called From M4011 - embed in Gcode
'NOTE       'unconditionally enables 4th axis   - built from 4thAxisModeSWITCH macro


Style1 = 4 + 32   '4=display Yes and NO buttons only 32 = Question Icon
Style2 = 0 + 48  '0= display OK button only 48=Exclamation Icon

GoFlag = true

DriveDisabled = GetUserLED(1003)
IndexON = GetUserLED(1004)
SpindleON = GetUserLED(1005) + GetUserLED(1006)  'Either Spindle ON CW or CCW will = true
CurrentRPM = GetUserDRO(1003)


' activate Turn MODE


 If (DriveDisabled = 1) Then           ' drive is disabled, enable drive
  If RunScript("\macros\Simpson\4thEnableON") < 0 Then
   MsgBox "RunScript 4thEnableON returned an error"
  End If      
 End If
   SetUserLED(1004,0)            ' Index Mode LED OFF
   SetModOutput(4,1)            ' set INDEX mode OFF thru Modbus
   Sleep(300)
sleep(20)


The larger 'named' macro is in the windows file 'c:\MACH3\macros\Simpson\4thIndexModeOFF.m1s'. The delays are primarily to allow enough time for the Modbus to finish processing. Because of the time involved to execute, this macro is problematic to run directly as an 'M*********' macro because MACH3 would be off and crunching thru the next several G-code blocks before the macro completes.

So, if any of the above makes sense, can anyone either answer the two questions above or perhaps just describe how to duplicate this functionality in MACH4?

Much appreciated!

Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 02, 2014, 12:09:20 PM
Is there a listing anywhere of the mc.*********x  codes that have been created for MACH4??
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 02, 2014, 12:25:06 PM
MACH Config - Input signals tab - first column is not resizable - text truncated

Don't see it here...

The issue is also present on Axis Mapping, Homing, Input, Output and Spindle tabs.

By 'first column, I refer to the gray colored column that has, for lack of a better term, the 'titles' for each line. This column cannot be resized on my system. Some of the 'titles' exceed the available space and are therefor truncated. In most cases, this is not much of a problem, but some of the titles need to be guessed at, which is not a good thing.

They ALL drag and display properly here, top row as well as columns.
Dell laptop
XP SP3

Russ

I do not understand what I could be doing wrong, then. No matter ho slowly or carefully I float
 the cursor over the vertical line between COLUMN 1 and 2, I do not get the expand cursor as I get with every other vertical line between COLUMNS.

To make sure we are on the same page, I am attaching a screen capture with the first column circled. How do I make this column wider?

(http://www.thecubestudio.com/MACH4expandCapture.JPG)

My misunderstanding Steve, sorry.
That is the only line that won't move here as well.
But, There is plenty of room, maybe a smaller font than yours ? ?
Stock screen from last Hobby post. (which may not be correct according to smurf's earlier post)

Russ
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 02, 2014, 12:29:24 PM
....well, there IS one that doesn't fit !  :)

Russ
Title: Re: Comments about Mach4 in Demo
Post by: MachMotion Development Team on May 02, 2014, 12:53:02 PM

So, with Lua replacing VBscript, how is the above described process handled by MACH4? Specifically, does MACH4 suspend the G-code execution until macros return or will the programmer still have to test and insert delays to assure this happens?

Secondly, will macros be able to have any legal windows file name and be called by a 'RunScript' (or equiv) call?


simpson36,

First I want to explain the main difference between how mach3 handled Mcodes and how mach4 handles Mcodes.  In mach3 every time a Mcode was called from gcode or a RunScript command mach would go find the mcode load that single VB script, compile it and then run it.  So in mach3 every mcode was run on its own thread and the only way to have one mcode pass variables to another mcode was through a DRO, LED ect.

Now lets talk about mach4!!


Andrew, thanks for the info. It does help. However, my original question remain:

1) Does MACH4 wait for a return from a 'function' before it parses the next G-code block.
 - and-
2) Can 'named' (sorry, I don't know what else to call them) scripts residing in legally named Windows files be called from a 'function'.

Here is an example:

'© 2012 www.theCUBEstudio.com
'NAME:       M4011
'ACTION:    Runs script to set Lathe mode ON
'USE:          embedded macro

 
If RunScript("\macros\Simpson\4thAxisModeOFF") < 0 Then
MsgBox "RunScript 4thAxisModeOFF returned an error"
End If


The above 'numbered' macro calls the following 'named' macro:

'© 2012 www.theCUBEstudio.com
'NAME:      4thAxisModeOFF
'ACTION:    Macro to set Axis mode
'USE:       Called From M4011 - embed in Gcode
'NOTE       'unconditionally enables 4th axis   - built from 4thAxisModeSWITCH macro


Style1 = 4 + 32   '4=display Yes and NO buttons only 32 = Question Icon
Style2 = 0 + 48  '0= display OK button only 48=Exclamation Icon

GoFlag = true

DriveDisabled = GetUserLED(1003)
IndexON = GetUserLED(1004)
SpindleON = GetUserLED(1005) + GetUserLED(1006)  'Either Spindle ON CW or CCW will = true
CurrentRPM = GetUserDRO(1003)


' activate Turn MODE


 If (DriveDisabled = 1) Then           ' drive is disabled, enable drive
  If RunScript("\macros\Simpson\4thEnableON") < 0 Then
   MsgBox "RunScript 4thEnableON returned an error"
  End If      
 End If
   SetUserLED(1004,0)            ' Index Mode LED OFF
   SetModOutput(4,1)            ' set INDEX mode OFF thru Modbus
   Sleep(300)
sleep(20)


The larger 'named' macro is in the windows file 'c:\MACH3\macros\Simpson\4thIndexModeOFF.m1s'. The delays are primarily to allow enough time for the Modbus to finish processing. Because of the time involved to execute, this macro is problematic to run directly as an 'M*********' macro because MACH3 would be off and crunching thru the next several G-code blocks before the macro completes.

So, if any of the above makes sense, can anyone either answer the two questions above or perhaps just describe how to duplicate this functionality in MACH4?

Much appreciated!



simpson36,

To try to answer your question.
1. Yes mach will wait for a return before executing the next block
2. You can use named like 4thAxisModeOFF.mcs and then in your M4011 you could call the script with 4thAxisModeOFF().

When you make your scripts make sure you name the script the same name as the function in the script.

Scott - The range is the pulley range, and in mach4 each range has it own accel and decel parameters.

Andrew
MachMotion
Title: Re: Comments about Mach4 in Demo
Post by: Overloaded on May 02, 2014, 01:03:55 PM
Worked on a quick little routine this morning while watching the news.

I like to know the percent of completion the program I am running.


That's really cool Vince Craig. Very neat.
This just shows % of total lines of code irrespective of the actual time it takes for the file to complete, right ?
If so, how difficult would it be to do similar by displaying a running  % of TIME remaining ?

Very interesting, thanks for posting,
Russ
 :)
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on May 02, 2014, 01:44:16 PM
Worked on a quick little routine this morning while watching the news.

I like to know the percent of completion the program I am running.


That's really cool Vince. Very neat.
This just shows % of total lines of code irrespective of the actual time it takes for the file to complete, right ?
If so, how difficult would it be to do similar by displaying a running  % of TIME remaining ?

Very interesting, thanks for posting,
Russ
 :)


Yes, this is a nice thing. Thanks for sharing, Craig.

But, could we keep this thread strictly for Mach4 bug reports and related comments? And open new threads for other topics. Otherwise the thread is getting cluttered with all sorts of other things and the bugs are getting missed by Brian and Steve and it's not leading to anywhere.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 02, 2014, 02:08:31 PM
Is MACH4 suspended while a SUB is running (as with MACH3 named SUBS) or is it still necessary to insert pauses/delays?

And as long as were on the topic, does MACH4 support named SUBS?

Mach 4 is not suspended.  But I'm not sure what you mean.

And by named subs do you mean the sub file named in the comment?  If so, then Mach 4 supports that.

Steve
Sorry for confusion. I tend to think of macros as subroutines and intermix the terms. 

...



The macros can be named anything.  However, to call one as an M code, it had better start with m!  :)  But inside the scripting environment, you can call a script with any name.

Mach4 syncs on M codes.  The M code may be a macro or it may not (M98 vs. M03, etc..  M codes break the CV chain.  And M codes run to completion before the interpreter advances.
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 02, 2014, 02:13:15 PM
Asked this before, but it again got missed - is there a way to have the DRO's persistent like it is in Mach3?

Also, a few other things:

1. Are there no settings for CV like there used to be in Mach3?
2. While running a program, all the buttons under the the File Ops tab should be grayed out or at least shouldn't do anything if clicked on, like it is in Mach3. Clicking one of them in Mach3 returns a message that you should first Stop the programme running.
3. Can the file loader be made to remember the last location and not default to the root directory of Mach4?
4.

Dan

1. No CV settings at this time.  CV is now using a much more advanced logic than it did in Mach 3.  For most cases, there is simply no need to tweak it.  However, we may add a setting or two soon.
2. This is controlled entirely by the screen set.  You can make it do whatever you want it to do.
3. I will make the file open "remember".
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 02, 2014, 02:15:47 PM

3. Can the file loader be made to remember the last location and not default to the root directory of Mach4?
4.

Dan
I'm with Dan on # 3.

Also, G4 .... anywhere to select ms instead of seconds ?
Is decimal seconds a valid entry ?  ie: 0.25

Thanks,
Russ

I believe you can use decimals with G4.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 02, 2014, 02:18:39 PM
Is there a listing anywhere of the mc.*********x  codes that have been created for MACH4??

In the docs folder.  LuaCalls.txt

It is just a list.  We are working on the full documentations.  And there is a LOT of work left to do.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: Chaoticone on May 02, 2014, 02:52:29 PM


Yes, this is a nice thing. Thanks for sharing, Craig.

But, could we keep this thread strictly for Mach4 bug reports and related comments? And open new threads for other topics. Otherwise the thread is getting cluttered with all sorts of other things and the bugs are getting missed by Brian and Steve and it's not leading to anywhere.

Dan

I just started two new topics, Mach4 bug reports and Mach4 wish list. I know everyone is enjoying all the comments but Dan does have a point. Brian and Steve have a ton of things going on right now and, as much as we want to hear all they have to say and want them to listen all we have to say, it would likely help them address our wants/needs if we had a couple of really clean threads.  
Title: Re: Comments about Mach4 in Demo
Post by: Dan13 on May 02, 2014, 03:28:48 PM
Thanks Brett.

Dan
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 02, 2014, 07:59:52 PM
HIYA steve, Here is a macro example. 3 problems popped up.

1. When I try to single step through the program and it gets to a GOTO call lets say GOTO5. It jumps to the line AFTER the N5 line NOT to it.

2. Every time it runs  the macro STALLS at the Tool change call  and does not proceed you have to hit STOP.

3 Sometimes at the G43 call it stalls as well.

I have not gotten to verifying IF the G65 parameters are compatible with Mach4 I had problems in single step mode.


 O0001 (Main program)

(Machine hole)

N075  (1.0 END MILL)
N080 G54 G90 S1200 M03 T05 (Start spindle)
N085 G00 X2.5 Y2.0 (Rapid to hole-center)
N090 G43 H04 Z0.1 (Rapid approach in Z)
N095 M08 (Turn on coolant)
N100 G65 P1000 X2.5 Y2.0 D3.0 R0.1 Z-1.0 A1.25 T1.0 F5.0 H1.0
(Mill circle)
N105 G91 G28 Z0 M19 (Return to tool change position)
N110 M01 (Optional stop)

(Program continues)

N200 M30 (End of main program)



o1000 (Circle milling custom macro)
(TEST FOR MISSING ARGUMENTS)
N1 IF [#24 EQ #0] GOTO 95 (X)
IF [#25 EQ #0] GOTO 95 (Y)
IF [#26 EQ #0] GOTO 95 (Z)
IF [#18 EQ #0] GOTO 95 (R)
IF [#7 EQ #0] GOTO 95 (D)
IF [#20 EQ #0] GOTO 95 (T)
IF [#9 EQ #0] GOTO 95 (F)
IF [#1 EQ #0] GOTO 95 (A)
IF[#11 EQ #0] GOTO 95 (H)
(A MUST BE BIGGER THAN HALF OF T)
IF [#1 GT [#20/2 +0.1]] GOTO 2
#3000=101(APPROACH RADIUS TOO SMALL)
(RAPID TO APPROACH POSITION)
N2 G00 X#24 Y#25]
Z#18

(TEST FOR HOLE IN CENTER)
IF[#11 EQ 1.0] GOTO 5
G01 Z#26 F#9
GOTO 6
N5 G01 Z#26 F[#9 * 5]

(MOTIONS TO MILL CIRCLE)
N6 G01 Y[#25 + #7/2 - #1] F#9
X[#24 - #1 + #20/2]
G02 X#24 Y[#25 + #7/2 - #20/2] R[#1 - #20/2]
J-[#7/2 - #20/2]
X[#24 + #1 - #20/2] Y[#25 + #7/2 -#1] R[#1 - #20/2]
G00 Z#26
X#24 Y#25
GOTO 99
N95 #3000=100 (INPUT VALUE MISSING)
N99 M99 (End of custom macro)





Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 02, 2014, 08:21:44 PM
What does your m6 macro look like?  Is it the one we provided?  If it is, it should be waiting on you to press cycle start.  The m6 in the build is just an example and it does things for demonstration purposes that really isn't valid.

Single block through the conditional stuff is a work in progress.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 02, 2014, 08:21:56 PM
HIYA Steve you ask for a program that shows the A axis creep. This one does here. It gets to the G65 call then stalls and the A axis SLOWLY creeps towards the "A" value in the call. If you wait until it gets there THEN the program continues. IF you set the A value to ZERO then it does not stall. IF you PRESET the A dro to the" A "value it does not stall.

(;-)TP


O0008 (Main program)
    N005 G54 G90 S800 M03 T02 F100(Select coordinate system, absolute mode, start spindle, get next tool ready)
    N010 G00 X3.0 Y2.5 (Rapid to center of bolt hole pattern)
    N015 G43 H01 Z.1 (Instate tool length compensation, rapid up to workpiece)
    N020 G65 P1008 X3.0 Y2.5 Z0 R1.75 D0.75 A45.0 H8.0 C81. F50 (Machine entire bolt hole pattern with drilling cycle)
M30


    O1008 (Custom macro to machine bolt hole circle)
    #101=1 (Initialize counter)
    #102=#1 (Initialize current angle to A)
    #103=360 / #11 (Constant for incremental angular distance between holes)
    #104=#26 + 0.1 (Constant for rapid approach plane)
    #105=#26 - #7 (Constant for Z bottom position of hole)
    N1 IF [#101 GT #11] GOTO 99 (Test if loop is finished)
    #110=#24 + COS[#102] * #18 (Calculate X position for current hole based on current angle)
    #111=#25 + SIN[#102] * #18 (Calculate Y position for current hole based on current angle)
    G#3 X#110 Y#111 R#104 Z#105 F#9 (Machine current hole)
    G80 (Cancel cycle)
    #101=#101 + 1 (Step counter)
    #102=#102 + #103 (Step current angle)
    GOTO 1 (Go back to test at loop beginning)
    N099
 M99 (End of custom macro)
 %
 
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 03, 2014, 08:42:58 AM
I just want to say, THANKS Brian and Steve, for this AWESOME product!!!! I am blown away by the power and ease to customize/use it!! I am soooo darn pumped!!!!
Yes, there are glitches, but so what, there is always glitches, and you guys stomp them out fast!!!

I for one am VERY pleased with your work so far. Please Ignore all the Negative guys... agian, thank you for this!

Scott
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 03, 2014, 09:48:03 AM
Single block should be ripped out, I don't uses it ..FIXED!
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 03, 2014, 11:00:44 AM
WHAT? Single blocking a program with your hand on the feed over ride is a setup mans sanity!
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 03, 2014, 11:15:09 AM
I know that is what they teach people to do but I find that to be slow and cumbersome. I know many guys that never use it because we use the rapid override and the feed override. Press cycle start nothing happens, slide the sliders and you are 100% in control! We need to add shuttle mode too.. that is an acceptable way to dry run as well :)

We are not going to take it out.. I just needed to tell you that I don't agree with it.. I think it is a vestigial feature from the early CNC's

Thanks
Brian
 
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 03, 2014, 11:31:30 AM
There ya go calling us OLD again  ;D
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 03, 2014, 11:40:10 AM
YA don't have to "agree" with every function BUT you must conform to the NORMAL operations of the masses. There are already enough HYBRID MONKEY controllers out there that make training across multiple platforms a BEAST for management AND operators.

Just a thought, (;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 03, 2014, 11:47:55 AM
I know I just had to take a stab at the Single Block.. Single block and a controller with lookahead is NOT fun.. That along with the fact that I don't use it.. You can see my point :) I want to be lazy!
Title: Re: Comments about Mach4 in Demo
Post by: Ya-Nvr-No on May 03, 2014, 12:01:54 PM
The problem in my life I have to fix my mistakes, so I have learned to prove and verify.

If I was in a Union shop id push the button and stick to the story... "he told me it was ok run" ya better call maintenance.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 03, 2014, 12:42:52 PM
New School , so what if I crashed the machine and ruined the $1000 part I am still FAST 90% of the time.

Old School, Well that just cost me $10,00 for repair and 4 weeks down time on that machine. NO vacation this year AGAIN.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: ger21 on May 03, 2014, 01:06:43 PM
From my experience running $150,000 routers with proprietary controls, I'd rip out 90% of what's in Mach3. You'd get rid of 90% of the support issues that new router users have.
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 03, 2014, 02:07:45 PM
Router what is a router ?? Is it one of those PC networking thingies that direct traffic??

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: BR549 on May 03, 2014, 02:11:02 PM
From my experience running $150,000 routers with proprietary controls, I'd rip out 90% of what's in Mach3. You'd get rid of 90% of the support issues that new router users have.

That is because people REFUSE to learn anything anymore, they EXPECT the machine to do it all for them with NO energy output required on their behalf.

Little do they know IF it keeps up the machines will totally replace them as worker. No job no food no house, just live in the woods and eat grass and bugs.

(;-) TP
Title: Re: Comments about Mach4 in Demo
Post by: Brian Barker on May 03, 2014, 03:14:19 PM
I agree Gerry, So many things could be removed. The issue is that people want fancy buttons to make things "easy" The issue is that 90% of the users don't know how the offsets work. The good news is most of them don't want to learn :) I was like that at one point in my life...

Well I can tell you that this new School guy has less crashes then most :) You can have your way, but there are other ways to do thing safely
Thanks
Brian
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 03, 2014, 10:12:58 PM
Modbus plugin config Serial:

 485 stuck ON
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 04, 2014, 12:07:41 AM
Thanks!  I'll look at that switch.  But if you are using a RS232 port, it doesn't make any difference.  The switch is there to make those RS232 to RS485 converters work... well...  better.  I still am not convinced that any RS232 to RS485 adapters is going to be a real solid solution.  But that is basically what that switch does.  It needs to be fixed.  Just don't let it stop you from using it with a RS232 port.

Steve
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 04, 2014, 02:37:15 AM
Thanks!  I'll look at that switch.  But if you are using a RS232 port, it doesn't make any difference.  The switch is there to make those RS232 to RS485 converters work... well...  better.  I still am not convinced that any RS232 to RS485 adapters is going to be a real solid solution.  But that is basically what that switch does.  It needs to be fixed.  Just don't let it stop you from using it with a RS232 port.

Steve

The 'com' port is virtual. Set up by a driver. The physical connection is thru USB. This has been working fine with MACH3 for a long time. In MACH4, I can get a 'Modbus 0 OK' on the diagnostic, but every function shows an 'Illegal Argument Error' so I don't know if There is actual communication there or not.

Absent documentation, I'm not getting anywhere fast. Is it possible to describe briefly how to get data on and off the Modbus? I saw some mc.********* functions having something to do with MACH Registers, but again, no idea if that it the correct path.

I'm on board with converting all of the macros to Lua, and for me, the multi line MIDI alone justifies the $200 price tag of MACH4, but I will need to get the Modbus working because my 4th axis motor controller uses it extensively. I think I read somewhere that Brains are gone and the example Modbus functions imply that bitwise operation is fixed in MACH4. The Modbus plug-in is slick, but individual registers cannot be passed and Brain cant pass floats and so on. Modbus on MACH3 is basically a collection of workarounds, so I am anxious to see the MACH4 implementation. 
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 04, 2014, 08:53:31 AM
Quote
The Modbus plug-in is slick, but individual registers cannot be passed and Brain cant pass floats and so on. Modbus on MACH3 is basically a collection of workarounds, so I am anxious to see the MACH4 implementation. 

What he said.......
Title: Re: Comments about Mach4 in Demo
Post by: Racer on May 04, 2014, 08:57:28 AM
I like to know the percent of completion the program I am running.

Added the Dro's and text to the tab then

Added this to the PLC Script

Where do I put this? Where is the (PLC Script) to add to?

Thanks

Code: [Select]
local TotalLines = mc.mcCntlGetGcodeLineCount(inst);
local GcodeCurrentLine = mc.mcCntlGetGcodeLineNbr(inst);
scr.SetProperty('droTotal', 'Value', tostring(TotalLines));
local GcodePercent = (GcodeCurrentLine/TotalLines) * 100;
scr.SetProperty('droPercent', 'Value', tostring(GcodePercent));




[/quote]
Title: Re: Comments about Mach4 in Demo
Post by: ger21 on May 04, 2014, 09:00:45 AM
I like to know the percent of completion the program I am running.

Added the Dro's and text to the tab then

Added this to the PLC Script

Where do I put this? Where is the (PLC Script) to add to?

Thanks

Code: [Select]
local TotalLines = mc.mcCntlGetGcodeLineCount(inst);
local GcodeCurrentLine = mc.mcCntlGetGcodeLineNbr(inst);
scr.SetProperty('droTotal', 'Value', tostring(TotalLines));
local GcodePercent = (GcodeCurrentLine/TotalLines) * 100;
scr.SetProperty('droPercent', 'Value', tostring(GcodePercent));




[/quote]

Ya Nvr No has already posted this, possibly in this thread.
Title: Re: Comments about Mach4 in Demo
Post by: Racer on May 04, 2014, 09:05:42 AM
I like to know the percent of completion the program I am running.

Added the Dro's and text to the tab then

Added this to the PLC Script

Where do I put this? Where is the (PLC Script) to add to?

Thanks

Code: [Select]
local TotalLines = mc.mcCntlGetGcodeLineCount(inst);
local GcodeCurrentLine = mc.mcCntlGetGcodeLineNbr(inst);
scr.SetProperty('droTotal', 'Value', tostring(TotalLines));
local GcodePercent = (GcodeCurrentLine/TotalLines) * 100;
scr.SetProperty('droPercent', 'Value', tostring(GcodePercent));





Ya Nvr No has already posted this, possibly in this thread.
[/quote]

I didn't see the answer to my question.

Where do I put this? Where is the (PLC Script) to add to?
Title: Re: Comments about Mach4 in Demo
Post by: poppabear on May 04, 2014, 09:17:28 AM
Open, the M4 screen designer, click on the top profile, go down to the properties window, click on the "Event" button,
looks like a little lightning bolt, find PLC script, go to the right hand side with button thatt has 3 little dots.
click it, it will open the PLC script in you lua editor.

scott
Title: Re: Comments about Mach4 in Demo
Post by: Racer on May 04, 2014, 09:24:09 AM
Open, the M4 screen designer, click on the top profile, go down to the properties window, click on the "Event" button,
looks like a little lightning bolt, find PLC script, go to the right hand side with button thatt has 3 little dots.
click it, it will open the PLC script in you lua editor.

scott
Thanks Scott,
That works.

Jerry
Title: Re: Comments about Mach4 in Demo
Post by: smurph on May 06, 2014, 01:28:37 AM
HIYA STEVE, I ran itno a problem with this macro. IN the G65 call  Instead of the Parameter "A(#1)" being used to set the starting point angle for the macro Mach4 is trying to rotate the A axis to 45 deg at a VERY slow rate.


    O0008 (Main program)
    N005 G54 G90 S800 M03 T02 F100(Select coordinate system, absolute mode, start spindle, get next tool ready)
    N010 G00 X3.0 Y2.5 (Rapid to center of bolt hole pattern)
    N015 G43 H01 Z.1 (Instate tool length compensation, rapid up to workpiece)
    N020 G65 P1008 X3.0 Y2.5 Z0 R1.75 D0.75 A45.0 H8.0 C81. F50 (Machine entire bolt hole pattern with drilling cycle)
M30


    O1008 (Custom macro to machine bolt hole circle)
    #101=1 (Initialize counter)
    #102=#1 (Initialize current angle to A)
    #103=360 / #11 (Constant for incremental angular distance between holes)
    #104=#26 + 0.1 (Constant for rapid approach plane)
    #105=#26 - #7 (Constant for Z bottom position of hole)
    N1 IF [#101 GT #11] GOTO 99 (Test if loop is finished)
    #110=#24 + COS[#102] * #18 (Calculate X position for current hole based on current angle)
    #111=#25 + SIN[#102] * #18 (Calculate Y position for current hole based on current angle)
    G#3 X#110 Y#111 R#104 Z#105 F#9 (Machine current hole)
    G80 (Cancel cycle)
    #101=#101 + 1 (Step counter)
    #102=#102 + #103 (Step current angle)
    GOTO 1 (Go back to test at loop beginning)
    N099
 M99 (End of custom macro)


(;-) TP

Try running this without an offset on your A axis.  I think this is actually a G81 issue.

Steve.
Title: Re: Comments about Mach4 in Demo
Post by: simpson36 on May 06, 2014, 12:04:24 PM

Thanks!  I'll look at that switch.  But if you are using a RS232 port, it doesn't make any difference.  The switch is there to make those RS232 to RS485 converters work... well...  better.  I still am not convinced that any RS232 to RS485 adapters is going to be a real solid solution.  But that is basically what that switch does.  It needs to be fixed.  Just don't let it stop you from using it with a RS232 port.

Steve
Absent documentation, I'm not getting anywhere fast. Is it possible to describe briefly how to get data on and off the Modbus? I saw some mc.********* functions having something to do with MACH Registers, but again, no idea if that it the correct path.

Bumping this to see if I can get a response. I started a new thread with Modbus in the title. Scripts and screens and G-code is easy and fun, but without Modbus working, continuing the MACH4 eval is pointless for me. I can get MACH4 hooked up with Serial and TCP. MACH4 says 'Modbus OK' but there is no Modbus communication and I can't make any sense out of the plug-in config.
Title: Re: Re: Comments about Mach4 in Demo
Post by: Analias on July 18, 2014, 01:54:57 AM
Why do we need a PP option? That is what M3 was for. It is an outdated platform. It is time to move on. M4 will be fine.

Thanks for your support!  We hope Mach4 will be worth the wait.  And some of these guys are having a blast with it!  Which is really nice to see.

Steve


HIYA Brian , looking at the fixture and tool tables I see that we can now use the keyboard to move around in the values windows to do updates to the values which is VERY GOOD  BUT I do not see a way to EXIT out with a mouse.

Also reviewing the G98/99 calls I see we can now GOTO a sequence line.  Can I assume the the sequence number is the LINE # ??

Can we expect conditional in the near future to make that useful.

Also the calls are not consistant.

M98 Pxx Qxx Lxx      Where Q calls the GOTO line #

M99 Pxx                Where P calls the goto Line #

Would it not be more consistant for the Q to be used in both cases to call the GOTO line#  ??

Sent from my Xoom using Tapatalk
Title: Re: Comments about Mach4 in Demo
Post by: awander on August 05, 2015, 09:22:16 PM
nice work guys. :o
any way to pan on the tool path screen after you zoom?
also can you show the tool path extents  on the tp page, I guess that's possible to do with the editor?



I am also missing the Toolpath Extents info that Mach3 provided after loading a program. Has this been addressed? I looked for DROs that might have this info, but couldn't find anything that looked right.
Title: Re: Comments about Mach4 in Demo
Post by: dude1 on August 05, 2015, 09:45:18 PM
look in diagnostic/regfile/core/inst you can added them to a screen set as well they are they just not added
Title: Re: Comments about Mach4 in Demo
Post by: awander on August 05, 2015, 11:05:24 PM
Hmm, looking there I found:

PathXmax: 0.00245
PathXmin: 0.00245
PathYmax: 0.002375
PathYmin: 0.002375
PathZmax: a ridiculously long number, 2.***************************x
PathZmin: the same ridiculously long number as the Zmax

This is with the roadrunner tap file loaded.

Are these the correct registers?
Title: Re: Comments about Mach4 in Demo
Post by: dude1 on August 06, 2015, 02:27:56 AM
yes but it dont look right
Title: Re: Comments about Mach4 in Demo
Post by: Dazed+Confused on August 06, 2015, 02:52:57 AM
@awander
Do extents numbers look correct if you zero your Axis and Regenerate Toolpath?
Title: Re: Comments about Mach4 in Demo
Post by: awander on August 06, 2015, 08:42:28 AM
If I zero the axes and regen the toolpath, the numbers change slightly, but they are still very small, ans the MAX and MIN values for each axis are identical to each other.
Title: Re: Comments about Mach4 in Demo
Post by: dude1 on August 06, 2015, 03:41:05 PM
I would say M4 has gone bad it will need reinstalled
Title: Re: Comments about Mach4 in Demo
Post by: awander on August 07, 2015, 03:43:03 PM
Well, thanks for that suggestion. A re-install fixed it.
Title: Re: Comments about Mach4 in Demo
Post by: dude1 on August 07, 2015, 08:37:32 PM
with M4 its the simple things that go wrong (brain fart) a reinstall always helps if there is one silly little thing wrong just for fun if you goto http://machremote.dyndns.org:8080/ its mach help desk there is a probing screen set