LPHK
A Novation Launchpad Macro Scripting System.
Install / Use
/learn @nimaid/LPHKREADME
LPHK (LaunchPad HotKey)
A Novation Launchpad macro scripting system.
<img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/LPHK_update_4.png" alt="Update 4"/>Table of Contents
<a href="https://github.com/nimaid/LPHK"><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Homepage"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Homepage"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/LPHK_icon_square.png" height="50px" hspace="0" alt="LPHK Homepage"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Homepage"/></a><a href="https://discord.gg/mDCzB8X"><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Discord Chat"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/discord.png" height="50px" hspace="0" alt="LPHK Discord Chat"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Discord Chat"/></a><a href="https://www.patreon.com/user?u=16848673"><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Patreon"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/patreon.png" height="50px" hspace="0" alt="LPHK Patreon"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Patreon"/><img src="https://raw.githubusercontent.com/nimaid/LPHK/master/README_FILES/spacer.png" height="50px" hspace="0" alt="LPHK Patreon"/></a>
- Links
- What does it do?
- Compatibility
- Installation
- How do I use it? (Post-Install)
- What is LPHKscript?
- Known Issues / Troubleshooting
- TODO List
- DONE List
Links [Table of Contents]
- Video Tutorial, Updates, and Plans
- First Look
- Scheduling System
- Hackaday Early Writeup
- DOOM on a Launchpad
- Mouse Commands Demo - Maze
- Medium.com Advanced Soundboard Writeup
What does it do? [Table of Contents]
The goal of this project is to implement a macro scripting system for the Novation Launchpad, in order to use the launchpad as a scriptable, general purpose macro keyboard.
It uses "LPHKscript", a very simple scripting language similar to DuckyScript, and has a GUI to enter scripts, set colors, and to save/load your setup.
LPHK can be used for the following:
- Gaming, to bind:
- Items
- Volume
- Attacks
- Typed commands
- Automatic Glitch/Trick Execution (think ABH or propsurfing in Source)
- Repetitive tasks (grinding)
- Reference Website launcher
- Window switcher
- Streaming, to bind:
- Sound effects
- Streaming software hotkeys
- Quickly open a folder with assets
- Editing, to bind:
- Cuts/insertions
- Modes
- Effects
- Render
- Preview
- Scrubbing
- Automate repetitive tasks
- Programming, to bind:
- Repetitive re-formatting
- Commenting code
- Auto-typing function/loop templates
- Compiling/executing
- Breakpoints
- Debugger
- As an interface to other programs with hotkeys
- ... and many more!
LPHK has all of its core features functional and ready to use! There are a lot of new features wanted, and there are massive bugs that need fixing, and it needs some more polish, but you can still do quite a lot with it as it is currently!
LPHK is still a work-in-progress, so things will be changing often. See below for a todo list. I have a life (a crazy one at that), so no promises on a delivery date. Feel free to offer your help! You can see project updates and ask questions on the official Discord server! You can also donate on the official Patreon page to help speed up development, or just say thanks!
Compatibility [Table of Contents]
I have specifically chosen to do my best to develop this using as many cross platform libraries as possible, with a hard requirement that Linux and Windows be supported, and a strong preference for Mac as well. The GUI is driven by TK, which works on all of the above plus Unix. The interface with the launchpad and several script functions are built on pygame, which is compatible with basically everything ever. Pretty much everything else is standard Python 3.
Current compatibility:
- Windows
- Strong compatibility
- Everything works
- This is the platform it is developed on
- Includes pre-built binaries with nothing else required (PyInstaller)
- Graphical installer (Inno Setup)
- Portable version (Single
.exe)
- Strong compatibility
- Linux
- Weak compatibility
- Many bugs, mostly with system permissions
- Most systems are unable to run it at all
- Please try to install and report your issues on the Discord or as a Github issue.
- Include
LPHK.log
- Include
- Pre-built binaries building, but not released
- If anybody installs on Linux successfully and lets me know, I will start releasing binaries.
- Weak compatibility
- Mac
- Completely untested
Installation [Table of Contents]
Note: Files used in the installation are named with a version number, and will change with each new release. The word VERSION is used in the below filenames and paths to denote where this version number will be. When going to https://github.com/nimaid/LPHK/releases/latest, it will redirect to the page with the latest versions of these files, so the correct value of VERSION should be plainly obvious.
Note: Because pyautogui is used you may need to install some extra libraries to your machine, more info on this page: https://pyautogui.readthedocs.io/en/latest/install.html
Windows Install/Run Instructions [Table of Contents]
Is these pre-built binaries do not work for you, please share the issue in the Discord or as a GitHub issue. In the meantime, advanced users can use INSTALL\environment.yml to install the LPHK conda environment, and then run python LPHK.py after activating it.
- If you want the installed version (recommended)
- Download the latest
LPHK_setup_VERSION.exefile from https://github.com/nimaid/LPHK/releases/latest - Run LPHK_setup_VERSION.exe` and follow the on-screen setup instructions.
- To run LPHK, use one of the shortcuts, either the
Start MenuorDesktopone (if you selected that option). - You can uninstall LPHK like any other program, with the Windows
Add or remove programsutility.- There will also be an uninstaller named
unins000.exein the program folder. You can open the program folder by clicking the menu optionHelp > Program folder....
- There will also be an uninstaller named
- LPHK also creates a folder in
My DocumentsnamedLPHK. This is where layouts, scripts, sounds, and the log is stored. You can open this folder by clicking the menu optionHelp > User folder....
- Download the latest
- If you want to run LPHK portably (advanced)
- This method lets you use LPHK by simply downloading
LPHK_portable_win_VERSION.zipand extracting it to a folder of your choice. You can then move the folder to a flash drive, between computers, etc. - It takes much longer to start up this way
- Run
LPHK.exe
- This method lets you use LPHK by simply downloading
