Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - smurph

351
Mach4 General Discussion / Re: mcCntlGetGcodeFileName ...Crashes M4
« on: January 03, 2017, 08:49:10 PM »
An explanation on the lower case M code functions:

When the interpreter reads a line/block of G code, it first converts the whole line to lower case.  It then removes all of the spaces in the block.  So

G00 X1
S2000 M03

becomes

g00x1
s2000m03

So when the M3 macro is called, the core will look for a macro named "m3.mcs" and look for a function named "m3()" within it.  On Windows, the filenames are NOT case sensitive and it will find a file named "M3.mcs" or "M3.MCS" or any other combination of upper and lower case letters.  However, it will still look for a lower case function name!!!  Because that is what is fed to LUA and LUA is case sensitive. 

So the convention is now to use lower case names for both files AND functions to maintain cross platform compatibility. 

Steve

352
Mach4 General Discussion / Re: What is this error???
« on: January 03, 2017, 08:25:00 PM »
Daz,

When you hit Cycle Start, the FIRST thing that is done by the core (LUA plugin) is to look at all of the .mcs files and compare them to the date/time of the byte code .mcc files.  If a .mcs file is newer than its' accompanying .mcc file, the .mcs file is assumed to be modified and the LUA plugin tries to recompile it.  Once all of the .mcs files are compiled into .mcc files, all of the .mcc files are rolled up into one big chunk called mcLua.mcc.  If any of this fails, it will result in a MERROR_NOT_COMPILED error return.  So SOMETHING is causing it.  Mach will continue to run on the old mcLua.mcc file if it cannot compile a new one.  

You are correct that the screen LUA scripts are just snippets that get rolled up into a larger script.  That script is what you can see in the Diag menu.  When the GUI starts, it takes all of the screen element scripts and rolls them up into one big script.  So you really can't edit that one because it is generated.  Any changes you made to it would get overwritten once you restarted the GUI or made changes to the screen in the editor.  

I'll try and make a way to find the errors more easily.  Like blanking out the failed .mcc file to zero bytes if it failed to compile.  That way, it would be easy to see which .mcs file has the error in it.  

Steve

353
Mach4 General Discussion / Re: What is this error???
« on: January 03, 2017, 12:12:08 PM »
It means you have a problem with one of your macro scripts.  One of them has a problem that will not compile the LUA script into a chunk.  If you have recently modified a script, open that one up on the LUA editor and try compiling it in the editor.  Do this for every macro script if you don't know which one is giving the problem. 

As Craig mentioned, it could possibly be in a screen script.  But since you are getting it with Cycle Start, I'm thinking macro.

Steve

354
Mach4 General Discussion / Re: Selectivly show toolpaths from subs
« on: December 06, 2016, 05:00:29 AM »
Maybe you could use Block Skip?  I think we can handle 9 levels or something like that.  You would need to add buttons for the added levels on the screen, etc...

Or, you could generate the main G code file that calls the subs on the fly.  It would be easy to do in LUA.  Generate a main file and load it with a push button or something. 

Just throwing out ideas...  Maybe one of them is decent.  :)

Steve

355
Mach4 General Discussion / Re: Loading toolpaths directly to Mach4
« on: November 30, 2016, 01:47:50 AM »
Mach 4 will not use the DDE method like Mach 3 did.  So whatever their software did for Mach 3 will not work for Mach 4.  Mach 4 has an inter-process communications (IPC) library that could be used to accomplish the same thing.  However, that would require that Vectric compiles against this Mach 4 IPC library.  All I can say is I don't believe they have contacted us about doing anything like that.  

That being said, the next build will have a command line interface for loading files.  When Mach4GUI is running, simply calling "Mach4GUI -o <gcode file path>" will load a file.  If Mach4GUI is not running, it will launch Mach4GUI and load the specified file at startup.

Steve

356
Mach4 General Discussion / Re: License questions
« on: November 27, 2016, 06:21:09 PM »
Contact Todd, not Scott.  toddm -at- machsupport -dot- com

Steve

357
Mach4 General Discussion / Re: Looking 4 Onsite Mach4 setup/help
« on: November 27, 2016, 06:15:49 PM »
Mike is...  well, Mike.  :)  A supremely good guy.  Glad you guys met up and got things working!

358
Mach4 General Discussion / Re: Rename A axis to U axis?
« on: November 21, 2016, 11:32:12 PM »
Glad you are working now! 

I looked at the docs and this was unmentioned in the mill manual.  So I updated the docs.  :) 

Just to be clear for everyone, this is for mill.  For turn, UVW are used for incremental moves of the XYZ axes.  There is no G91 in turn anymore for Mach 4. 

Steve

359
Mach4 General Discussion / Re: Looking 4 Onsite Mach4 setup/help
« on: November 21, 2016, 10:29:21 PM »
Mike, I figured you might be able to help Cattle out.  :)

360
Mach4 General Discussion / Re: Re: Mach 4 and Galil
« on: November 21, 2016, 03:08:18 AM »
Ok, I finally found this post to reply to it.  The Mach 4 Galil plugin has been release and it is up on the website.  

The new "special" Galil firmware is NOT released yet.  You must use the latest GA firmware releases, 1.2d or higher for the 41x3 controllers and 1.2e or higher for the 40x0 controllers.  

It is probably not a good idea to try this on an older Optima or Econ controller.  Why?  I have not had time to even test with them.  :(  This means they are not officially supported.  If you buy the Galil plugin and try it with the older controllers and it does not work for you, expect little or no response/help/support.  Galil had to fix their firmware for the 41x3 and 40x0 controllers to allow for faster communication.  (See above firmware versions.)  I have no idea if they are merging that fix into the older controller's firmware updates or even if they need it as it could possibly only needed for their new generation of controllers.  I just don't know.  I also don't know, at this point, when or if I will get a chance to look at any of the older controllers to check them out.  

The reports are sweet though for the 41x3 and 40x0 controllers.  :)

Steve