Hello Guest it is April 19, 2024, 08:56:44 PM

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.

Topics - subnoize

Pages: 1
I posted a question in ModBus but it might be a Mach4 scripting question more than ModBus; https://www.machsupport.com/forum/index.php?topic=45738.0

Thanks for the help!

Hello, scripting/ModBus question;

I have set up ModBus and I can see the values being written out in the diagnostics window. I have made the connection between the discrete input to an input signal in Mach4. Now, when I go to "signal wait" on the input it never seems to be available to the mc.mcSignalWait(...) call.

If I do this I can manually pause on the signal but its ugly...

Code: [Select]
local isig = mc.mcSignalGetHandle(inst, mc.ISIG_INPUT50)
local state = mc.mcSignalGetState(isig)

while mc.mcSignalGetState(isig) > 0.0
-- snore

So why doesn't this work?

Code: [Select]
rc = mc.mcSignalWait(inst, mc.ISIG_INPUT50, 0, 30) -- Wait 30 seconds for input 50 to go low

And, yes, I do put a wx.wxMilliSleep(25) to force Mach4 to see the next read from ModBus (which is disappointing but not unexpected) and it still doesn't seem to get the value.

And yes, I tried all this in reverse, waiting for it to go high.

Thanks for the help!

Modbus / ModBus as a Input Signal
« on: July 29, 2021, 08:06:31 PM »

I set up the ModBus and everything is all green and happy.

Then I go into the Control Configuration / Input Signals and the drop down for devices has my ModBus, great! I select it. Then I click on the Input Name and I get an empty list.

What am I missing? I can access the values via scripts but I really want them as first class Input Signals and I can't seem to get it to work.

Thanks for the help!

I just add the RS-485 board to my Hypertherm 45XP and got a USB/RS-485 cable for the PC.

SheetCAM just doesn't give me the tools that I need so I was thinking ProNest or something similar. I do a lot of holes that need to be bolt ready so Hypertherm's True Hole is high on my list of "wants."

Now, the noob questions;

Is there a standard setup for the inputs and output I should follow in Mach4 with ModBus + Hypertherm RS-485?

I assume there will be a post processor for the Hypertherm software and a bunch of Mcodes that will be implemented. Has anyone else used Mach4 + ProNest (either LT or pro)?

Thanks for the help!

Mach4 Toolbox / Troubles with ATC script and Disable / Stop
« on: September 09, 2020, 12:36:44 AM »
Hello! I tried to search this but the search engine for this forum doesn't like me or something. If I am asking an old question, a link will suffice.

I am trying to prohibit the drawbar from releasing the tool when the Disable or Stop button are pressed during a tool change.

   local machEnbld = mc.mcSignalGetState (mc.mcSignalGetHandle (inst, mc.OSIG_MACHINE_ENABLED))
   local eStop = mc.mcSignalGetState (mc.mcSignalGetHandle (inst, mc.ISIG_EMERGENCY))
   if machEnbld == 1 and eStop == 0 then
      -- drawbar release code here

What is worse is if I run that code with the machine Disable button flashing green "Enable" then that code works. However while it is in motion that code does not work. The Disable button pushed in a tool change will make the code execute straight through with none of the moves slowing it down until it reaches the end of the code and then it says the tool has been changed! Of course in the process it just dropped the tool it had on the floor.

Now, the e-stop is a different story. That works. The Feed Hold is fine but the Stop? What is that signal?

During testing my code tonight I kept hitting the Disable and Stop buttons and after a few time it was like the Z axis lost it's position and did a rapid down into the tool carousel from about an inch above it. It was suppose to rapid up to 0 first but just went straight down the moment I hit the Cycle Start MDI. Maybe I was hitting the Cycle Start after a Stop? I don't remember but my recollection was hitting Disable.

If anyone can help it will make me a much happier person!


I have developed a really nice USB based 10 slot Automatic Tool Carousel for Mach4. Right now the Mach4 side of things is all Lua. I think writing it in C++ would be better for many reasons, especially when dealing with the USB and Mach4 connection. The Lua engine exhibits behavior that makes me nervous releasing it as a commercial product.

I have been trying to find the"Getting started with Mach4 and C++" tutorial but I can't seem to find it. Does anyone know where I can get the info I need to get started writing native plugins for Mach4?




Firstly, I did try to search for this so I apologize if I missed any previous posts.

I needed 4 axis support in both G93 and G94 modes and LinuxCNC doesn't support G94 and angular axis so I'm giving Mach3 a try in a dual boot. With all of the things that drove me crazy about LinuxCNC, configuring it wasn't one of them. Mach3's manual makes it sound as if I'm doing all of the math manually and the motor tuning screen is a bit perplexing at best.

My first run through the manual I did all the math to find the values but in the end I could never find where these numbers were to be entered! Its like finding the pitch of my ballscrews but then were do I enter that value? It almost sounds like I'm adjust the steps per revolution to somehow make the system work but then that doesn't make any sense if I'm doing microstepping at 4 or 6 as 10 creates resonance in my Z axis that cause premature stalling. So how does the driver know which microstepping I'm using?

So, new system and learning to set it up is frustrating and hopefully somebody has written down a shortcut to get poeple like me up and running as quickly as possible. If anyone has some tutorials for someone jumping from LinuxCNC to Mach3 it would be great!



Pages: 1