From e51b42347333e5681cd30f676c47480da798fc9e Mon Sep 17 00:00:00 2001 From: mckset <99543950+mckset@users.noreply.github.com> Date: Tue, 31 Jan 2023 17:43:45 -0500 Subject: [PATCH] v1.4 --- README.md | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 184ffc8..0bde9b1 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,13 @@ A simple driver for the Huion KD100 mini Keydial written in C to give the device Installation ------------ -Download the latest version, unzip it, and run KD100 +You can either download the latest release or run the following: +``` +git clone https://github.com/mckset/KD100.git +cd KD100 +make +``` +> **_NOTE_** This driver depends on [xdotool](https://github.com/jordansissel/xdotool) to simulate keyboard and mouse inputs. It will not run if the tool is not installed. If you want to use a different tool, you can edit the Handler function to use that tool instead Usage ----- @@ -16,16 +22,21 @@ sudo ./KD100 -c config_file -d > **_KEEP IN MIND_** Very few distros have been tested so far. If you have a problem on your distro, please report it and I will try to get to it as soon as possible -Notes ------ -- Only works on X11 based desktops +Configuring +---------- +Edit or copy **default.cfg** to add your own keys/commands +> **_NOTE:_** New config files must have the same format and line count as the default file + +Caveats +------- +- This only works on X11 based desktops (because of xdotool) - You do not need to run this with sudo if you set a udev rule for the device. Create/edit a rule file in /etc/udev/rules.d/ and add the following, then save and reboot or reload your udev rules ``` SUBSYSTEM=="usb",ATTRS{idVendor}=="256c",ATTRS{idProduct}=="006d",MODE="0666",GROUP="plugdev" ``` - Sometimes the driver won't find the device and might require you to unplug it and plug it back in to fix it -- Technically speaking, this can support other devices, especially if they send the same type of byte information, otherwise the code should be easy enough to edit and add support for other usb devices -- New config files must have the same format and line count as the default file +- Technically speaking, this can support other devices, especially if they send the same type of byte information, otherwise the code should be easy enough to edit and add support for other usb devices. If you want to see the information sent by different devices, change the vid and pid in the program and run it with two debug flags + Known Issues ------------ @@ -33,9 +44,3 @@ Known Issues - The driver cannot trigger keyboard shortcuts from combining multiple buttons on the device > **_NOTE:_** Because of how the data is packaged, there currently is no work around for this -Building From Source --------------------- -Clone the repo and run compile.sh - --------------------- -Special thanks to the creator of [xdotool](https://github.com/jordansissel/xdotool). Even though this project is not dependant on the tool, it utilizes some of the xdo scripts from that project