Read how I made the macro pad, and how I added a config editor to it.
Mini Macro Pad (go-mmp) is a tool for creating and running macros, shortcuts, and other automated actions at the press of a button.
It works with hardware like Arduino-based macro pads or directly through a desktop GUI, making it versatile for various workflows.
What kind of macros can you make?
- Shortcuts:
- CTRL+C, CTRL+V, CTRL+SHIFT+ESC, etc.
- Adding Media keys to skip songs, change the volume, or even add back the HOME and DELETE keys to a TKL keyboard.
- You can press whatever key you want, as long as it’s in the list.
- Macros:
- Type “gg” in game, rage quit a game, or do something more useful in Excel!
- Repeat keypresses (or mouse button presses)
- Playing cookie clicker? Press your macro to repeatedly press your mouse button down until you click the macro again
- Whatever you can think of, feel free to submit PRs!
Getting started
If you have a arduino/serial macro pad ready, great! You get to use the full functionality of go-mmp!
See the the 3D Printing & Hardware section to get started with the physical device.
Don’t have an Arduino but still want to run macros? You can use the GUI-only mode, which is the default, so you’re all set!
Just click on the buttons to run Macros.
Getting set up
- Download the latest exe
- Double click the Mini Macro Pad.exe file
- It will generate a configuration file in your home folder.
- e.g.
C:\Users\ssebs\mmpConfig.yml
or/home/ssebs/mmpConfig.yml
- e.g.
- When you press a button on the Arduino based MacroPad, it will run a Macro that’s set in your config.
Change your Macros on the fly
New in v2
, you can now update your Macros in the UI instead of from the config file.
Just go to Edit > Edit Config, and drag-and-drop your macros into the correct positions
Here’s the “gg” Macro for example:
3D Printing & Hardware
You’ll need a microcontroller, some key switches, and a 3D Printer. I’m using a Teensy LC, but you could use an Arduino Micro or ESP32.
My 3D Printed housing is available on thangs.com.
Wiring under the hood (please forgive the newbie soldering)
Got an arduino all hooked up?
- You’ll need an arduino/serial based device that sends [0-9] numbers over a serial connection.
- See the arduino-mmp.ino source code.
Connecting and understanding baudrate, etc. is out of the scope of this guide.
- Just edit your config, edit metadata, and set the Serial Port Name, Baud rate, and change
GUIMode
toNORMAL
.- If your device sends 1 for the first button instead of 0, you can set the Indexing setting to 1
- Medatata Editor:
If you’re curious, check out the older python code at https://github.com/ssebs/MiniMacroPad/