Sunday, July 9, 2017

P.I. Engineering Macroworks 3.1 for X-Keys running impossibly slow under Windows 7

Update August 2022:  The solution below did NOT work for me, so three more years of putting up with this nonsense.

Pretty much every time I ran Macroworks, it would hog the CPU to the point where the machine became almost completely unresponsive.  It took 20-25 minutes just to start Task Manager and kill it. 

However, I may have found another solution:  Set Macroworks' "Priority" in Task Manager to "Low".  This seems to let it hog the CPU without actually getting in the way of anything.

This is (again) a new development and I don't know if it is going to pan out, but it's worth a shot.


Update Oct 2019:  Per the comments below, I updated to the latest MW (as of mid-Oct) and  it seems to be completely fixed.

Oddly, PI does not mention this anywhere that I could find.  Perhaps they don't want to admit they had an issue, or perhaps the issue really was confined to a few lucky users.

However, you DO need to manually uninstall MW before performing the new install.  PI Engineering does <u>not</u> mention this <u>anywhere</u>, so shame on them, but it's true.

I highly recommend the following:

1.  Save your scripts before nuking the old install.  They are in:

\Users\[Your User Name Here]\AppData\Local\PI Engineering\MacroWorks 3\MyScripts.  Look for "Script_xxxx_x.mw3" files.

Place them in a safe place.

Note: If you're not regularly backing up this folder, you're asking for it.

2.  Export your key legends and put the file(s) in a safe place.   Alternatively, copy the *.lgd files in your MyScripts folder.

The process below will nuke them too.  So be sure to do it!

3.  Follow the instructions in this thread to completely nuke the old install.

4.  Reboot.

5.  Install the latest MW.

6.  As noted in the thread, before first run, click the "Run as administrator" box.

7.   Re-load the scripts from File\Load Script, legends from File\Legends\Import Legends.

I did not unplug my devices, and it seems to have worked.

However, I did get "Dragdrop did not register" errors - or something similar, I didn't write it down.  I just kept hitting "Continue" and eventually they went away.  It seems no harm was done.

I have not tried running it without the "Run as administrator" option checked, and I probably won't bother.


Update Jan 2018:  I had problems with Acrobat so I restored my PC from a backup and had to reinstall Macroworks 3.1.  The latest version  (v., Dec 2017) >appears< to have fixed issues with speed and the X-Keys programming key not working correctly.  Time will tell.

However, I do still recommend running Macroworks  in admin mode, as described below.  Setting the Windows "Run this program as an administrator" flag the Compatibility tab >seems< to do the job.

Update:  No, it didn't.


Problem:  Macroworks 3.1 starts to run / respond slower and slower until it pretty much hangs completely.

Note this is for "MacroWorks3g.exe", which is the GUI interface.  MacroWorks3r.exe, which is the system tray utility, doesn't seem to have any problems.

One possible solution:

-  Exit the GUI (kill it if you have to)
-  Optional:  Exit the system tray utility.
-  Go to where these files are (likely C:\Program Files (x86)\PI Engineering\MacroWorks 3.1)
-  If necessary, right-click MacroWorks3r.exe, and choose "Run as administrator".

OK, here's the trick: when you want to access to GUI:

You >must< go to  C:\Program Files (x86)\PI Engineering\MacroWorks 3.1\MacroWorks3g.exe, right-click, and "Run as administrator".  Do this EVERY time you want the GUI.

What will not work:

-  If you access the GUI from an elevated system tray program, it will NOT behave.
-  If you check the "Run this program as an administrator" in the Compatibility tab, it will NOT behave.
-  If you use the programming switch on the Xkeys to invoke the GUI, it will NOT behave.
-  If you run it from any ordinary shortcut, it will NOT behave.

Again, you have to manually run the GUI as admin EVERY time.

For some reason, this works differently than the "Run this program as an administrator" in the Compatibility tab. I had that checked but it didn't help.  Running the program manually in admin mode using the right-click menu did work.  Don't ask me why, but it cleared up all the hesitation on my machine.

If that doesn't work on it's own, try going to the Compatibility tab for both programs and setting Compatibility Mode to "Windows XP (Service Pack 3".  I did both and I don't know if it made a difference.

Note you can avoid much of the inconvenience of having to run the GUI as admin by minimizing the GUI when you don't need it, rather than closing it.  Then it will stay running properly all the time.

Note this may cause the programming switch on your Xkeys to stop working.  Also, you will no longer be able to press an Xkeys button to get it to program - you have to double-click the key in the GUI.

These effects are probably because the stick hardware can no longer control the MacroWorks program when it is running as admin.  This is because admin programs direct other programs, not the other way around.  But these are a small price to pay to have a properly programmable X-Keys system again.

[Edit Dec 2017]:  The GUI frequently crashes if it's left sit for a long time.  I plan to try plugging the Stick directly into a proper USB hub instead of the keyboard USB port, to see if that fixes anything.

[Edit Nov 2020]:  Still no fix - in fact, with the second-latest update (, things seem worse than ever.  I know it's not just my Stick since I unplugged it, and MW behaves the same with just my jog keypad.  

 As PI is obviously never going to fix this, I would not recommend purchasing Xkeys products.


  1. Thank you so much. I've been frustrated by the unresponsive GUI for over a year. This works!

  2. I still have to bug PI Engineering as to why I am having so many issues with the X-Keys Stick. I will update this post if I learn anything useful.

  3. There is a new update v. and it is a great improvement, the application runs as it should now. User will need to manually uninstall any previous versions of MW3.1 via control panel