Machsupport Forum
Mach Discussion => General Mach Discussion => Topic started by: mhdale on August 03, 2007, 07:09:43 PM
-
Hello all, I think I am having a problem with my macropump..... When I first Start my MACH3 i get a popup window that is empty but has the title RunLoop Macro thread dummy. Has anyone seen this before? My Macropump is also not doing what it is supposed to.. at least as far as I can see.....
Any Clues? Anyone?
Thanks
Mike
-
Open your macro pump code in the editor and single step the code... Do you get any errors?
Also please be sure that you have the code in the proper profile.
Thanks
Brian
-
Brian,
I did open the macropump cpde, I single stepped through it and it all seems to work. It is stored in the Macros directroy in the proper profile subdir. I Placed a Message command which should execute every 4 times the code runs..... I get nothing. The macropump is monitoring all of the inputs on the system. I have the inputs emulated by hotkeys for testing, so if I press the right hotkey the macropump should light the appropriate led... Right?
I think I must be missing something silly (As usual) but for the life of me cant find it..
Mike
-
Post your XML and I will have a look at it
Thanks
Brian
-
Brian, This is the XML I am Using. The machine I am currently running MACH on is just a test platfrom to prove out the interface. so Its configuration is not necessarily setup completely or correctly. The FInal System is running with a GREX which I dont have connected to this one... and may possibly have a MOD-IO board as well... so If the Macropump issue might be caused by something to do with the configuration my apologies in advance.
Thanks
Mike
-
Hello,
I also have the same problem.
Macro pump is enabled in the config.
saved in macros folder.
I am also very much interseted in the solution.
Thanks
john
-
You need to have the macro named
macropump.m1s
and for that XML you need to have the file in the Mach3/macros/spRUNG directory. If you do that it will work... Also you need to restart Mach3 to activate OR change the macro pump.
Hope that helps
Brian
-
Brian, I am working on this project in a couple of places, on the machine I use at Home which is networked with work and accesses the same Mach DIR XML etc I get the Macropump Thread dummy pop-up, but on my system at work I dont get the popup. I am trying to test out the input configuration etc, I have this in my macropumo code to mintor Inoput and set an LED in response to an INPUT The Output 1 get activated on a Software ESTOP but that is about the only thing that happens.....I have never had much luck with inputs, my own system has the triggers assigned to buttons and not using the macropump as I could never get it to work..... so any pointers would be appreciated....
Mike
[ Macropump code ]
ES=GETLED(0)
If ES=True Then
ACTIVATESIGNAL(OUTPUT1)
Else
DEACTIVATESIGNAL(OUTPUT1)
END IF
IN_LED1=ISACTIVE(EMERGENCY)
IN_LED2=ISACTIVE(INPUT1)
IN_LED3=ISACTIVE(INPUT2)
IN_LED4=ISACTIVE(INPUT3)
IN_LED5=ISACTIVE(OEMTRIG1)
IN_LED6=ISACTIVE(OEMTRIG2)
IN_LED7=ISACTIVE(OEMTRIG3)
IN_LED8=ISACTIVE(OEMTRIG4)
IN_LED9=ISACTIVE(OEMTRIG5)
IN_LED10=ISACTIVE(OEMTRIG6)
IN_LED11=ISACTIVE(OEMTRIG7)
IN_LED12=ISACTIVE(OEMTRIG8)
IN_LED13=ISACTIVE(OEMTRIG9)
IN_LED14=ISACTIVE(OEMTRIG10)
IN_LED15=ISACTIVE(OEMTRIG11)
IN_LED16=ISACTIVE(OEMTRIG12)
SetUserLED(1201,IN_LED1)
SetUserLED(1202,IN_LED2)
SetUserLED(1203,IN_LED3)
SetUserLED(1204,IN_LED4)
SetUserLED(1205,IN_LED5)
SetUserLED(1206,IN_LED6)
SetUserLED(1207,IN_LED7)
SetUserLED(1208,IN_LED8)
SetUserLED(1209,IN_LED9)
SetUserLED(1210,IN_LED10)
SetUserLED(1211,IN_LED11)
SetUserLED(1212,IN_LED12)
SetUserLED(1213,IN_LED13)
SetUserLED(1214,IN_LED14)
SetUserLED(1215,IN_LED15)
SetUserLED(1216,IN_LED16)
-
for a test put this line in the macro pump
Call SetDRO(0,0)
then try to jog the X axis ... it should keep writing the axis to zero
also if you would like to set the led you need to have a Call
Call SetUserLED(1000,1)
Hope that helps
Brian
-
Here is your code and I have tested it in the macro pump... so test this and see if it work..
Sub Main()
ES=GETLED(0)
If ES=True Then
ACTIVATESIGNAL(OUTPUT1)
Else
DEACTIVATESIGNAL(OUTPUT1)
End If
Call SetUserLED(1201,IsOn(INPUT1))
Call SetUserLED(1202,IsOn(INPUT2))
Call SetUserLED(1203,IsOn(INPUT3))
Call SetUserLED(1204,IsOn(OEMTRIG1))
Call SetUserLED(1205,IsOn(OEMTRIG2))
Call SetUserLED(1206,IsOn(OEMTRIG3))
Call SetUserLED(1207,IsOn(OEMTRIG4))
Call SetUserLED(1208,IsOn(OEMTRIG5))
Call SetUserLED(1209,IsOn(OEMTRIG6))
Call SetUserLED(1210,IsOn(OEMTRIG7))
Call SetUserLED(1211,IsOn(OEMTRIG8))
Call SetUserLED(1212,IsOn(OEMTRIG9))
Call SetUserLED(1213,IsOn(OEMTRIG10))
Call SetUserLED(1214,IsOn(OEMTRIG11))
Call SetUserLED(1215,IsOn(OEMTRIG12))
Call SetUserLED(1216,IsOn(EMERGENCY))
End Sub
Function IsOn(sig)
If(ISACTIVE(sig))Then
IsOn = 1
Else
IsOn = 0
End If
End Function
Main
thanks
Brian
-
Brian,
I Think my Macropump is working..... But I need to get a Grex hooked up on my tests system so I can Check Inputs as Hotkeys dont work in flash. So I will let you know when I get that setup.
Thanks
Mike
-
I tested your code and it was not working... Please use the code that I posted and test in the 1024.set file Then after you have seen it work in that screen set test it in Flash.
thanks
Brian
-
Brian, I COULD HUG You! Except it would be UN-MANLY ;D Thanks Your code works great! I am getting a response out of my Screenset and hopefully will get this wrapped up this week!! THANK YOU! THANK YOU!!!
Mike
-
Cool :) I was thinking that would fix your trouble
Thanks
Brian
-
Hello all,
may be a bit off topic, but searched for "ActivateSignal":
My problem is this: I just installed a 2nd PCI printer port to my PC, now wanted to test the signals.
I configuren Mach's outputs #10...#15 to Port 2 Pin 1...6.
Q: How can I Activate and Deactivate these outputs by a macro? I tried "ActivateSignal(10)" but compiler gave me syntax error. What is the proper syntax? The manual/wiki reads that an integer must be in the brackets. But which one e.g for Output#10 ?
Thanks for helping an beginner in macro-programming.
Regards
Holger
-
Holger,
Use:
ActivateSignal(OUTPUT10) 'the all caps for output is needed, download the VB off the wiki for signal names
DeActivateSignal(OUTPUT10)
Scott
Hello all,
may be a bit off topic, but searched for "ActivateSignal":
My problem is this: I just installed a 2nd PCI printer port to my PC, now wanted to test the signals.
I configuren Mach's outputs #10...#15 to Port 2 Pin 1...6.
Q: How can I Activate and Deactivate these outputs by a macro? I tried "ActivateSignal(10)" but compiler gave me syntax error. What is the proper syntax? The manual/wiki reads that an integer must be in the brackets. But which one e.g for Output#10 ?
Thanks for helping an beginner in macro-programming.
Regards
Holger
-
Thank you Scott, I overlooked just this page in the Wiki.
These VB Constants are related to the designations in the "Config - Ports and Pins"-Menu? There it reads Output #10 and ActivateSignal(OUTPUT10) will switch just this pin?
Thanks
Holger
-
Thanks again, I just tested this ActivateSignal(...) positive!
How often will WinXP change the address of this PCI printer port card? How to fix it to a permanent address? Mine was different from yesterday, when I installe the card.
Regards
Holger
-
XP should only change the address if you add other PCI cards or move that one to a different PCI slot.
Hood
-
Hello Hood,
I'll keep an eye on this. After the initial tests on the printer port I really installed an USB-card, then tested only the USB matters (camera window in mach). So this was the reason surely.
btw, Mach did not show any problem with the address in the 0x4000 or ox7000 range.
Thanks & Regards
Holger
-
Holger go to the device manager and LOCK the port config so that Windows will NOT change it in the future.
(;-) TP