lal12 / macromykbd Goto Github PK
View Code? Open in Web Editor NEWmacroMyKBD
License: MIT License
macroMyKBD
License: MIT License
I used to use TaranVH's HASU_USB and intercet.
https://github.com/TaranVH/2nd-keyboard
Now I'm using macroMyKBD to call AHK.However,I obviously feel macroMyKBD's speed is slower than QMK and intercept.
I even recorded a video of these two methods,then compare them frame by frame on Premiere.
After a lot of data analysis,I find that macroMyKBD is 3.5 times slower than HASU_USB and intercet.
I hope that you can speed up macroMyKBD.
I've just started using this tool and the only minor annoyance i have is having to manually close the cmd window and restart the utility every time i edit actions.yml. Gets quite tedious especially as i fine tune my workflow.
Is there any way to have this hot reload every time actions.yml is edited?
If I understand correctly this is a current goal:
//TODO: repeat pressed keys
,
when passthrough is enabled.
I don't even know if this should be a goal, because the autorepeat when you press down a key, only comes from the driver, good explained in this post. Anyway to achieve something like this, you will probably need to get the current KeyState. There already is a npm package for this, but it would need VK Keycodes to be added. Another way would be to keep track of the KeyStates just with the KBDEvents, inside of MMKBD.
As described in #10 spawning a new AHK process for each key event has significant overhead, so a better solution is needed.
Passing through the keys and wrapping them in (e.g. F24) might be a solution, even if not the best one.
For my specific keyboard, there is a third field next to USB ID, which is the interface field, which is also shown next to the device name at the top
(Note: the screenshot is from a vm running in vmware, but when I tried it on my host, it was the same. Just the device name is "USB Keyboard" instead of "VMware". There is still a third field for the interface.)
The installation guide in the README of this repository does not mention the interface at all. I tried to install the driver for the first interface, in the 2nd interface, in both of them. But in all cases when I try to use the first two fields in mmkbd, it just shows a lot of errors. I think this is because it doesn't have support for interfaces or something, I'm not entirely sure.
I think it's difficult for many people to understand macroMyKBD,I really hope that you can make a video tutorial on Youtube,thank you very much.
I'm not sure if this is a MacroMyKBD problem or a driver problem, but every so often the software stops working a throws an error along the lines of WARN - hid-handler:91 - 17321.5s - error received : { [Error: LIBUSB_TRANSFER_STALL] errno: 4 }
.
This happens after a random number of keystrokes, however it appears to be more of an issue when using resource-intensive programs, namely Adobe Premiere Pro. I've had this happen after 3 keystrokes before, but I've also had times where it has ran fine for an entire day. It's quite confusing.
For Example if you have passthrough enabled and you press the right controll Key the left is being pressed.
I get that it is more readable in the output and in the actions.yml like this, however many keyboards have keys like media keys or others which cannot be assigned like this.
when i click save or ctrl+s it comes up with a save as and when i click on the actions.yml currently in the directory it says i dont have permission to change the file. i have the vbs file for opening and hiding upon system start but i cant find it anywhere to stop the process either. and while im at it, how do you restart mmkbd after editing the actions?
@KGT1 @lal12 #1
Thank you for your video tutorial.It works!
But how to integrate all key's AHK script into one AHK script?
I don't want A.ahk B.ahk C.ahk...
I want just one script like this↓↓↓
A::msgbox, KGT1 is good man
B::msgbox, lal12 is genius
C::msgbox, I'm superman
I really appreciate it.
If there's no way, it's OK.
I've tried all the possible programs on this, interception method worked the best. But, the 10 keyboard limit put a dent on things (as I have multiple joysticks that use the keyboard entry) and then I found this. My question is, what do I write on yaml to send a macro key? For instance, pressing "O" it should send a CTRL+SHIFT+ALT+B key.
This program, from what I have seen, is the best one, because it eliminates the keyboard from being read by other programs. So it should be useful on OBS/Streamlabs OBS, simulators (DCS, Il-2) and other things. But, for the life of me, I can't figure out how to send the macros.
EDIT: lol I just read this... Should teach me not to jump around when reading stuff: "Currently this can only be a batch command, however support for custom scripting with javascript is planned."
For example, being able to passthrough the whole numpad but not the rest of the Keyboard.
Current workaround is using AHK, which in my opinion isn't ideal.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.