Hello Guest it is May 31, 2026, 11:27:43 AM

Recent Posts

Pages: 1 2 3 4 5 6 7 8 9 10
1
General Mach Discussion / Re: xbox controller
« Last post by Charlie_M on May 31, 2026, 11:17:52 AM »
do you have any inputs not being used?
2
General Mach Discussion / Re: xbox controller
« Last post by Doily on May 31, 2026, 10:03:17 AM »
I have all the shilling buttons full with task. since shilling was made the newer controllers added buttons . I have done some experimenting with macro and they work well with buttons the are on the setup map. was hoping to set macro for trigger buttons that are not on shilling setup thanks for the help Charlie
3
General Mach Discussion / Re: xbox controller
« Last post by Charlie_M on May 31, 2026, 04:31:03 AM »
OK So reading through the shilling manual, you can call macros with button presses.
Make a Macro to turn on/off your spindle  and call it with a button. It all in section 4.6.1.

Hope this helps.
 
4
General Mach Discussion / Re: xbox controller
« Last post by Doily on May 30, 2026, 10:25:46 AM »
MSI Force GC30V2 got it from amazon. Has a bunch of buttons I would like to assign task. But program does not allow.  Xbox schilling does not have options to program any more to add . works great he triggers that are noton schilling thanks for the help
5
MachPro General Discussion / Vista CNC usb Control Pendat
« Last post by Wallerawang on May 30, 2026, 03:40:12 AM »
Hello

Would anyone know if I can use my VistaCNC control pendant in MachPro before I upgrade please?

Thanks

Steve
6
MachPro General Discussion / Pokeys Control Panel
« Last post by Wallerawang on May 30, 2026, 03:37:24 AM »
Hello

Would anyone know if I can use my Pokeys control panel (various buttons, MPG and override sliders) in MachPro?

Thanks

Steve
7
General Mach Discussion / Re: xbox controller
« Last post by Charlie_M on May 28, 2026, 05:06:57 AM »
What plugin are you using?
8
MachPro General Discussion / Re: RC ATC Dustboot
« Last post by cd_edwards on May 27, 2026, 11:40:10 AM »
I get no messages. I renamed the UserMCodeModuleDefault.mcs to UserMCodeModule.mcs  added your two functions on a clean install of MachPro and made sure I had Open-Close set. As far as I can tell, it never attempts to run those two functions.

9
MachPro General Discussion / Re: RC ATC Dustboot
« Last post by paul.stephens on May 26, 2026, 11:57:04 AM »
Run the following script, let me know if you have any Message Boxes come up. On Local testing, I have no issues with this.

Make sure that your "Tool Changer Dust Cover Behavior" is set to a value of "Open-Close" While running a Tool Changer. I had my Tool Changer set to manual for this test. --- Be careful that you're not just modifying the "Tool Setter Dust Cover Behavior" setting.

Code: [Select]
function UserMCodeModule.TC_PreOpenDustCover()
wx.wxMessageBox("Pre Open Dust Cover")
return nil, true, w.FunctionCompleted()
end
function UserMCodeModule.TC_PreCloseDustCover()
wx.wxMessageBox("Pre Close Dust Cover")
return nil, true, w.FunctionCompleted()
end
10
MachPro General Discussion / Re: RC ATC Dustboot
« Last post by cd_edwards on May 25, 2026, 09:20:24 AM »
I spent the weekend attempting to get this working in my UserMCodeModule.mcs   it doesn't seem to matter what I set the tool dust cover settings to, this code will not run via invoking M6. It will run with M112/M113

Code: [Select]
function UserMCodeModule.TC_PreOpenDustCover()
------------------ Add user code below this line ------------------
-- Two persistant registers are needed. One tracks location of the dust boot (docked/undocked), the other set's an ignore flag.

local inst = mc.mcGetInstance()
local DustBootX = 45.79
local DustBootY = 36.4
local DustBootZ = -4.443
local DustBootRateY = 75
local DustBootRateZ = 100
local DustBootYSlide = 5
local DustBootSafeZ = -0.1


local hreg = mc.mcRegGetHandle(inst,"iRegs0/DustBoot/ignoreDustBoot")
local ignore = mc.mcRegGetValue(hreg)
local hreg = mc.mcRegGetHandle(inst,"iRegs0/DustBoot/DustBootStatus")
local val = mc.mcRegGetValue(hreg)

if (ignore == 1) then
mc.mcCntlSetLastError(inst, "Dust boot ignore")
do return nil, false, w.FunctionCompleted()end
end

if val == 0 then
mc.mcCntlSetLastError(inst, "Dust boot already dropped")
return nil, true, w.FunctionCompleted()
end
-- =========================================================== drop dust boot =============================================================================

GCode = string.format("G00 G90 G53 Z%.4f\n", DustBootSafeZ) ------ Z Up
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode =  string.format("G00 G90 G53 X%.4f Y%.4f\n", DustBootX, DustBootY) ------ TO DUSTSHOE ENTRY Y
mc.mcCntlGcodeExecuteWait(inst, GCode)

-- We need to make sure that we don't wipe out the dust boot dock when moving both x/y
GCode =  string.format("G00 G90 G53 Z%.4f\n", DustBootZ) ------ TO DUSTSHOE ENTRY
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G0 G90 G53 Y%.4f F%.4f\n", DustBootY - DustBootYSlide,DustBootRateY) ------ MOVE Y INTO DUSTSHOE HOLDER
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G00 G90 G53 Z%.4f\n", DustBootSafeZ) ------ PICK UP Z --- DROP SHOE IN HOLDER --
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode =  string.format("G00 G90 G53 Y%.4f \n", DustBootY) ------ MOVE TO SAFE Y
-- mc.mcCntlGcodeExecuteWait(inst, GCode)
mc.mcRegSetValue(hreg, 0)
return nil, true, w.FunctionCompleted()

end

function UserMCodeModule.TC_PreCloseDustCover()
------------------ Add user code below this line ------------------

local inst = mc.mcGetInstance()

local DustBootX = 45.79
local DustBootY = 36.4
local DustBootZ = -4.3513
local DustBootRateY = 100
local DustBootRateZ = 50
local DustBootYSlide = 5
local DustBootSafeZ = -0.1

local hreg = mc.mcRegGetHandle(inst,"iRegs0/DustBoot/ignoreDustBoot")
local ignore = mc.mcRegGetValue(hreg)
local hreg = mc.mcRegGetHandle(inst,"iRegs0/DustBoot/DustBootStatus")
local val = mc.mcRegGetValue(hreg)

if (ignore == 1) then
mc.mcCntlSetLastError(inst, "Dust boot ignore")
do return nil, false, w.FunctionCompleted()end
end
--  ============================================================ PICKUP DUST SHOE ==========================================================================
local toolnum, rc = mc.mcToolGetCurrent(inst)
    if (toolnum == 0 or rc ~= 0 or val == 1) then
mc.mcCntlSetLastError(inst, "Dust boot already picked up")
do return nil, false, w.FunctionCompleted()end
end

GCode = string.format("G00 G90 G53 Z%.4f\n", DustBootSafeZ) ------ Z UP
mc.mcCntlGcodeExecuteWait(inst, GCode) ------ Z UP

GCode =  string.format("G00 G90 G53 X%.4f Y%.4f\n", DustBootX, DustBootY-DustBootYSlide) ------ To DustShoe Entry X
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G00 G90 G53 Z%.4f\n", DustBootZ+0.75) ------ G00 Quick down to 20mm above DustShoe Pick Up
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G00 G90 G53 Z%.4f F%.4f\n", DustBootZ,DustBootRateZ/2) ------ DustShoe Pick Up
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G00 G90 G53 Y%.4f F%.4f\n", DustBootY,DustBootRateY) ------ DustShoe SlideOutY
mc.mcCntlGcodeExecuteWait(inst, GCode)

GCode = string.format("G00 G90 G53 Z%.4f\n", DustBootSafeZ) ------ PICK UP Z --- DROP SHOE IN HOLDER --
mc.mcCntlGcodeExecuteWait(inst, GCode)
mc.mcRegSetValue(hreg, 1)

------------------ Don't Edit below this line -----------------------

return nil, true, w.FunctionCompleted()
end
Pages: 1 2 3 4 5 6 7 8 9 10