Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux? |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
05-14-2020, 12:40 PM
|
#1
|
Member
Registered: Nov 2012
Location: Northwest suburbs of Chicago
Distribution: Ubuntu & Mint LTS, Manjaro Rolling; Android
Posts: 244
Rep: 
|
Durgod Keyboard - works but not programmable
Disclaimer: this may or may not be a hardware issue, but since it only occurs with a specific device, I've posted it here.
I recently purchased a Durgod Taurus K320 TKL Mechanical Keyboard, one of a series of rather impressive keyboards; it can be seen at https://www.amazon.com/dp/B078H3WPHM...v_lig_dp_it_im
This particular version is wired through a USB port and is "plug and play." So far, so good. Not quite the same feel as my treasured Northgate OmniKey (still in regular use after 28 years), but appears to play in the same league.
Durgood also provides a Windows only app for creating macros, reassigning keys and the like, called the Durgod Zeus Engine, which can be downloaded from https://www.durgod.com/Durgod-Zeus-Engine?_l=en
The company's tech support assured me that there is no way this app can be used under Linux. Of course, I refused to believe/accept that, so I attempted to run the app under Wine, and it ran just as described in the company's documentation. Once again, so far, so good.
BUT - the application didn't recognize that one of its devices was installed on my system (I've tried it on Mint 19.1, Mint 19.3 and Ubuntu 20.04). I then installed the software on a Windows 10 laptop and it immediately recognized the keyboard and opened up all the options for creating macros, etc. though I didn't actually attempt to create any yet, since as a long-term solution that would be a pain.
Trolling the web, it seems that many folks mention that Wine doesn't always recognize USB devices and there are many posts describing rather elaborate "work-arounds" for this.
As it happens, I also use another USB-connected programmable keyboard, the Kinesis Freestyle Edge, which can be seen at https://www.amazon.com/KINESIS-Gamin...43&sr=1-3&th=1
While basic programming of the Kinesis can be done from the keyboard itself, Kinesis also supplies a Windows app, called the Smartset Programming app. When I run that program using Wine, it recognizes the keyboard and works just fine for remapping keys and creating macros.
So, therefore, I have a difficult time believing that Wine support for USB is somehow at fault for the failure of Durgod's app to recognize its own keyboard.
Using the lsusb command, I get the following line when the Durgod keyboard is plugged in:
Bus 001 Device 003: ID 2f68:0082 (no other description)
The fact that there is no human-readable description (e.g. my mouse shows up as "Bus 003 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver") is the only odd thing I've been able to locate, but I don't know if that might have any relevance to my issue.
Does anyone have any ideas?
Thanks, and stay safe.
|
|
|
05-16-2020, 11:38 PM
|
#2
|
LQ Guru
Registered: Sep 2003
Location: Auckland, NZ
Distribution: openSUSE Leap
Posts: 5,973
|
This command will show what drivers are loaded for your usb device(s)...
If there is no Linux driver support for the programming interface, there's not much you can do. I'd be inclined to take the pragmatic approach and use Windows XP (or 7) and install in a virtualbox environment for the occasions when you need to use the Windows config software.
|
|
|
05-16-2020, 11:42 PM
|
#3
|
LQ Guru
Registered: Sep 2003
Location: Auckland, NZ
Distribution: openSUSE Leap
Posts: 5,973
|
Another thought, watch the kernel output
when you first plug it in. If it provides a USB serial interface (for programming), that will become evident and there will be a driver loaded (as per the 'usb-devices' output). It might then be possible to configure wine to 'see' it with simple mapping to a com port.
Last edited by ferrari; 05-16-2020 at 11:56 PM.
|
|
|
05-17-2020, 11:57 PM
|
#4
|
LQ Newbie
Registered: Apr 2020
Location: usa
Posts: 3
Rep: 
|
Trolling the web, it appears that numerous people notice that Wine doesn't generally perceive USB gadgets and there are numerous posts depicting rather expand "workarounds" for this.
As it occurs, I additionally utilize another USB-associated programmable console, the Kinesis Freestyle Edge, which can be seen at https://www.amazon.com/KINESIS-Gamin...43&sr=1-3&th=1
|
|
|
05-18-2020, 03:47 AM
|
#5
|
LQ Guru
Registered: Sep 2003
Location: Auckland, NZ
Distribution: openSUSE Leap
Posts: 5,973
|
If the programmable keyboard device presents as a USB serial device (as well as an HID device), then it is a reasonably easy exercise to map (=soft link) the relevant ttyUSBx device node to a COM port. Let's see what usb-devices and dmesg report about the device.
|
|
|
05-18-2020, 05:58 AM
|
#6
|
Member
Registered: Nov 2007
Location: Northeastern USA
Distribution: kubuntu
Posts: 214
Rep: 
|
Alternative approaches
If you need advanced functionality from your keyboards, here are a couple of other ways to get it.
If you run a modern GUI desktop environment, you may be able to install AutoKey . It allows you to use hotkeys and abbreviations to trigger phrase substitutions and run scripts written in Python which can be used to automate many GUI tasks with keyboard and mouse events using its API. I've been using and supporting it for many years.
If you need total flexibility, you can hook up a Raspberry Pi or similar small computer between your keyboard and your target computer. It can do almost anything you can dream up. I've never tried this, but the software to make it work appears to be available. You don't have to start from scratch. It is probably even possible to do the whole setup wirelessly, so you don't have a computer dangling from your keyboard. (If anyone does this, please let me know. I'd love to hear about it.)
Both of these approaches should work with almost any conventional keyboard and should be mostly transparent to your system and applications.
|
|
|
11-27-2020, 11:21 AM
|
#7
|
LQ Newbie
Registered: Nov 2020
Posts: 1
Rep: 
|
Similar situation...
I have the Durgod Taurus K310. Basic typing and the configurations built into the keyboard work fine. I have tried a few things to get the application to configure the keyboard from wine, but I'm not knowledgeable about wine configuration. The application launches, but does not seem to recognize the keyboard.
I emailed HK Gaming, but have not yet received any response.
It's really not a deal-breaker, I like the keyboard a lot (my first mechanical), it would just be nice to take advantage of all its features.
Any suggestions?
|
|
|
11-27-2020, 12:32 PM
|
#8
|
Member
Registered: Nov 2012
Location: Northwest suburbs of Chicago
Distribution: Ubuntu & Mint LTS, Manjaro Rolling; Android
Posts: 244
Original Poster
Rep: 
|
Hi Mark:
There's a Windows background process that recognizes and communicates with the keyboard.
Based on how my Kinesis FreeStyle Edge works, I 'assumed' (yup; say it) that the Durgod worked in pretty much the same way. Kinesis stores both the software and the key maps, macros, etc. IN THE KEYBOARD as a mountable Fat32 drive. Thus, I can connect the Kinesis to any machine I want, running any OS I want, and it works just fine, and all my hot keys, macros and boilerplate are available. Wine is only needed on a Linux box if you need to run the Kinesis configuration software. Since key remappings and such things can be done on the keyboard (the app is only a GUI for convenience), the Edge is completely portable.
It took a while, but I finally figured out that the Durgod doesn't store anything at all in the keyboard. Their configuration software is a Windows executable (which, as you've seen, is pretty nice), and is the only way to reprogram anything. The Windows background app I mentioned above needs to be running to recognize the keyboard, remap the keys and execute the macros on the fly by reading these from some data stored in a Windows file somewhere. Since (as far as I know) there's no way to run a background process with wine, enhanced functionality and programmability are only available on the particular Windows machine used to set it up.
JosephJ mentions his utility, which fills a niche and may do what you want, but I was hoping for the complete portability I get from my FreeStyle Edge.
But - as you said - the Durgod is an excellent keyboard (and I'm a long time Northgate user), an excellent value, and comes with good cabling and a dust cover - something not often seen (my Northgate cover is really showing its age after almost 30 years, though the keyboard itself still works great). The Durgod's layout is better than the Edge's as far as navigation keys go, and it's built like a tank; its programmability just wasn't designed with Linux in mind.
Hopefully the Durgod folks will keep upping the ante for keyboards ...
|
|
|
11-28-2020, 11:58 AM
|
#9
|
LQ Veteran
Registered: Jul 2006
Location: London
Distribution: PCLinuxOS, Salix
Posts: 6,214
|
It certainly looks good. I note that the keys are dye-sublimated, which means the inscriptions won't wear as quickly as those that are simply printed, such as those on the (more expensive) Filcos.
With Linux you can do a lot from the OS and the desktop. My keyboard has been reconfigured by re-writing the driver files — e.g. the original CapsLock is now AltGr and CapsLock has replaced Pause — and I use the Super (aka Windows) key for launching must of my programs — e.g. Super C for a calculator. What things did you want to program it for?
|
|
|
12-13-2020, 11:20 AM
|
#10
|
LQ Newbie
Registered: Dec 2020
Posts: 2
Rep: 
|
Hi, I just stumbled on this thread.
You might want to try my script to remap the keyboard under Linux and OS/X:
https://github.com/david0/durgod-keymapper
Its a nice keyboard btw!
|
|
|
12-13-2020, 09:20 PM
|
#11
|
Member
Registered: Nov 2012
Location: Northwest suburbs of Chicago
Distribution: Ubuntu & Mint LTS, Manjaro Rolling; Android
Posts: 244
Original Poster
Rep: 
|
Hi David:
I downloaded your script and made it executable, but it fails with the message
Code:
ModuleNotFoundError: No module named 'hid'
on the line
Code:
import hid # pip install hidapi
I did do the install as you mentioned:
Code:
$ pip install hidapi
Defaulting to user installation because normal site-packages is not writeable
Collecting hidapi
Downloading hidapi-0.10.1.tar.gz (60 kB)
|████████████████████████████████| 60 kB 923 kB/s
Requirement already satisfied: setuptools>=19.0 in /usr/local/lib/python3.8/dist-packages (from hidapi) (50.3.2)
Building wheels for collected packages: hidapi
Building wheel for hidapi (setup.py) ... done
Created wheel for hidapi: filename=hidapi-0.10.1-cp38-cp38-linux_x86_64.whl size=358095 sha256=6fcafb1490883ac5cadbc936230930f4ba334ba18e090b62f08b7f82b13c3b53
Stored in directory: /home/frank/.cache/pip/wheels/56/3e/a8/7a24b21c01981a75ec4da858f1b43cd61bc10ed0404e1c52e6
Successfully built hidapi
Installing collected packages: hidapi
Successfully installed hidapi-0.10.1
I'm not a python person, so if you can point me to what I've missed, it would be much appreciated, as I'd like to give your script a try.
Thanks.
|
|
|
12-14-2020, 02:35 AM
|
#12
|
LQ Newbie
Registered: Dec 2020
Posts: 2
Rep: 
|
Hi Frank,
there could be various reasons for that. I guess you might be calling pip for a different version than the python version you are using.
You can check that using the following commands:
Code:
$ pip -V
pip 20.3 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
$ python -V
Python 3.9.0
(The python versions should match)
If thats fine you can see which directories python is scanning for modules by running:
Code:
python -c "import sys; print(sys.path)
|
|
|
01-23-2021, 12:33 PM
|
#13
|
LQ Newbie
Registered: Sep 2005
Location: Saipan
Distribution: Gentoo
Posts: 8
Rep:
|
Function Keys not working normally
I just purchased a Durgod Taurus K320 keyboard. This is a heck of a keyboard. I am running Arch GNU/Linux, and do not ever run Windows. Ever. I don't even care about programming this keyboard. It works perfectly, beyond imagination.
I did encounter one problem: F5-F8 output "~" only, and do not otherwise function. This keyboard does have a macro programming mode. Fn-F12 enables the macro programming mode, and also ends it.
I have tried to install Durgod's Zeus Engine, using Wine. Wine has never been transparent to me; I have frozen up a system in the past while trying to install wine. This Durgod program ran, then stopped running, it's been a lengthy process of installing new tools one after the other. As of now, vulcan is a show stopper. I am fearful of installing the vulcan 32bit libs, as I have been asked to remove nvidia-utils.
It is disappointing that Durgod's software works as it does, especially in the case that any programmed keys are stored in Windows.
I will never use macros. Hence, if I can merely learn how to set the keys F5-F8 as actually F5-F8, I would be happy. I COULD live with it as is, but I am an emacs user, and have set up important keybindings using these keys. My muscle memory on these keys is decades long, so I would love to solve this.
I will attempt to use the python tool that was mentioned. Any further information can only be helpful.
Durgod took painstaking care in manufacturing a keyboard that is at the top of the heap. At least my small heap. I bought the keyboard with MX silent blacks, fearful even then that I would be too noisy for this place around here. However, somehow Durgod made even the space bar and other long keys even more quiet than the ordinary keys.
Alan
|
|
|
01-23-2021, 12:53 PM
|
#14
|
LQ Newbie
Registered: Sep 2005
Location: Saipan
Distribution: Gentoo
Posts: 8
Rep:
|
Well, apparently all is well. Emacs does recognize the F5-F8 keys fine. I am not very clueful about how keyboards work, on the system side. Maybe I'll have to play around with the basics before going any further.
The utility "durgod-keymapper" does run. I would VERY MUCH like to learn more about how it works. As far as I can tell, it may just reset the kb.
Another reason I fell for Free Software all those years ago: people give away the tools that they developed to solve their own problems, not as a 9-5 job. Thank you for this.
What is a "roll" key?
Alan
|
|
|
01-23-2021, 04:23 PM
|
#15
|
Member
Registered: Nov 2012
Location: Northwest suburbs of Chicago
Distribution: Ubuntu & Mint LTS, Manjaro Rolling; Android
Posts: 244
Original Poster
Rep: 
|
Alan:
Glad you like the keyboard - I also think it's one of the best I've used in years, but in Linux, it is ONLY a keyboard.
The utility it provides in Windows intercepts the keystrokes and reinterprets them with whatever you program using their keymapper. Unlike the Kinesis, these remappings are stored in a Windows file, not in the keyboard. So even though you can run the keymapper in Wine, the keyboard never sees the results of that. I assume the macro record is the same, since I could use a keyboard macro when attached to a Windows machine, but not under any Linus I tried.
By "roll key" are you referring to "n key rollover" by any chance? If so, you can google the term I used and you should get plenty of hits.
Frank
|
|
|
All times are GMT -5. The time now is 11:56 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|