We are migrating towards a new forum system located at community.teamspeak.com, as such this forum will become read-only on January 29, 2020
I'm running as admin. The g-key.dll is now red and it says it's API version is 13 and it requires 14.
In the description it says:
"Plugin failed to load:
Api version is not compatible"
Then you just need to update, I've released a new version with an updated API: 4.0.2.
When you've updated it may still show a red g-key.dll with API 13, that is the old version. The new version is active as you'll see it mentioned as another entry in the plugin list. The new version uses another naming convention ending with _win32 and _win64, you can just delete the old g-key.dll from your plugin folder.
Works great again now, thanks!
With the update to TS client 3.03 and the API to 15, the g-key plugin is again broken.
Last edited by Olgie; January 14th, 2012 at 01:06 AM.
Sadly, I can no longer use this plugin. I got a G13 and it had me install some new fangled software that doesn't allow plugins. Good going Logitech.
The plugin for the logitech G930 drivers was only meant as a temporary solution to add some much requested headset support.
The keyboards use a different software package called "Logitech Gaming Software", which I have supported since the first version of the plugin, just follow the instructions in the ReadMe.
It seems that recently logitech has merged the G930 drivers with their Logitech Gaming Software, allowing the headset to use the same method for key detection as the keyboards, which means full PTT support for the G930! This would also mean I can drop the G930 plugin support which should make my plugin a lot simpler and maybe even a bit more stable. However I can't do this without knowing for certain that it is true. So can anyone with a G930 please confirm you have full PTT support with the new drivers using the method normally intended for the keyboards as outlined in the ReadMe? I will update the plugin when that has been confirmed or when 3.0.3 goes out of beta.
Works like a champ, real PTT support. Thank you! Also, MKey needs to be set to 1 (mkey == 1) for the G930 to work.
The only problem I have now is that when I use my G13 and G930, both trigger the script if I have my G13 set to M1. I am hoping there is a fix for this, if not I'll just transfer my key bindings over the M2 and everything will be A-OK.
EDIT: I've been messing around with the scripting and manifest files for a bit. Found a section called "DEVICE_NAME" in the Device_Manifest for the G930 but can't seem to call it as a variable. It seems the only way around this (since for some reason some genius at logitech decided that the G930 not having a family was a good idea) is to ensure that the Gkey from the pressed device is in neither the kbd or lhc families -.-
Here is a modified version of Armada651's PTT script for the G930 and possibly the G35 (unconfirmed, but they are essentially the same headset). Please note that the normal script may be used if you do not have any other devices with Gkeys on them.
function OnEvent(event, arg, family)
gkey = arg
mkey = GetMKeyState()
if event == "G_PRESSED" and gkey == 2 and mkey == 1 and family ~= "kbd" and family ~= "lhc" then
OutputDebugMessage("TS3_PTT_ACTIVATE")
end
if event == "G_RELEASED" and gkey == 2 and mkey == 1 and family ~= "kbd" and family ~= "lhc" then
OutputDebugMessage("TS3_PTT_DEACTIVATE")
end
end
Last edited by Phe0n1x; January 14th, 2012 at 05:21 PM.
Thank you Phe0n1x for confirming that the G930 is now fully supported using the Logitech Gaming Software. Another commenter on my home page beat you to the solution for differentiating between devices though. I've modified it slightly and included it in the ReadMe, which got a major update. I haven't quite figured out which families there are, so I just differentiate between keyboard and non-keyboard devices in the example.
Since the 3.0.3 client is still in beta, let's hold our own little beta, anyone is free to join in. I'll release the new version exclusively here until 3.0.3 goes stable. In the mean time, please tell me how the new version works and whether the new instructions in the ReadMe are clear (and correct).
Download G-Key 0.4.3
Download G-Key ReadMe
Last edited by Armada651; January 14th, 2012 at 11:37 PM.
1. Using your new script, wouldn't releasing another GKey cause the PTT to end since there is no specification for which GKey was released?
A: it seems this is not the case, the PTT is still active until the key pressed is released
2. You forgot a " in your example. (first line)
A: add a " at the end of "kbif family ~= "kb then
if gkey == 2 and family ~= "kb" then
if event == "G_PRESSED" then
OutputDebugMessage("TS3_PTT_ACTIVATE")
end
if event == "G_RELEASED" then
OutputDebugMessage("TS3_PTT_DEACTIVATE")
end
end
end
3. The families that I am aware of are "kbd" for keyboard and "lhc" which are the left hand keypads. Since I have a keypad instead of keyboard, I'd want to use lhc. Using KB, my G2 key on my G13 still fires the event for the PTT.
A: Changing it to "lhc" works for me, though I included both in my personal script just in case I get a G15 later.
Last edited by Phe0n1x; January 14th, 2012 at 09:47 PM.
The event checking has been nested in the key checking.
I've restructured the scripts to a more programmer-friendly format. Checks like what key was pressed and what event was triggered are now done in one place instead of for every command. This is easier to modify (keys can be changed in one place instead of for every event), should be more efficient (no double checks) and more readable (with the device family check for every event the lines get very long). However if this makes the code look more complicated for the average user compared to the old format I'll be willing to make a compromise and make it look a bit more like the old format.
That is indeed a typo, it also should not check for the family twice. There were more typos than that, I've corrected them and updated the ReadMe.
"kb" was clearly mentioned in the old Logitech API, I'll compare it to the new API. In the mean time I've added my variation on your method to the updated ReadMe.
UPDATE: "kb" is also mentioned in the new Logitech API. Are you certain it is "kbd" for you?
The ReadMe has been updated, please download it again and check if the new scripts are working.
Last edited by Armada651; January 14th, 2012 at 11:52 PM.
my apologies, it is "kb". Your new script works beautifully. However, I disabled the upper part of the non-keyboard script so that my G13 wouldn't send the PTT toggle. *thumbs up*
Works fine so far
Now that 3.0.3 is stable, version 0.4.3 of the plugin has been released.
It seems Logitech has transistioned the G35 Headset to their new Logitech Gaming Software. Can anyone test compatibility with the plugin?
Last edited by Armada651; January 23rd, 2012 at 08:02 PM.
Works great
But one question, is it possible to create a script for a key to run "plugin commands"? Those which you can assign to hotkeys via the menu. For example I would like to assign soundboard commands (i.e. /soundboard sound <file>) to a G-key so I don't replace the F-keys
I tried to add the following lines after the PTT block but it does not work:
Does not work :/Code:function OnEvent(event, gkey, family) mkey = GetMKeyState() if gkey == 6 and mkey == 1 then if event == "G_PRESSED" then OutputDebugMessage("TS3_PTT_ACTIVATE") end if event == "G_RELEASED" then OutputDebugMessage("TS3_PTT_DEACTIVATE") end end if gkey == 1 and mkey == 1 then if event == "G_PRESSED" then OutputDebugMessage("/soundboard sound D:\wow.mp3") end end end
There are currently 1 users browsing this thread. (0 members and 1 guests)