Page 1 of 1

Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 20 Nov 2017, 17:10
by evilC
Just figured this out...
You know if you want to use your logitech device (eg Mouse or G13) with AutoHotkey, you need to map your device to a key, which autohotkey then responds to, but you need to work out which keys are not going to interfere, or use modifiers (which causes more problems).
I have the solution!
I worked out how to add keys F13-F24 (Yes, they really do exist as keys, but are basically unused these days) to Logitech Gaming software.
You have AutoHotkey SEND these keys as LGS is in it's bind screen, and then it adds it to the profile and you can have your device send them.
However, you cannot just do like `F1::F24` as LGS just responds to F1, so... you can add a delay.

F1::
Sleep 2000
Send {F24}
return

Bingo.
Unfortunately though, it appears adding F24 as a key to one profile does not make it available in another - adding it to lots of profiles will get laborious, so I wrote a script to do it.

Code: Select all

#NoEnv
#Singleinstance, Force
CoordMode, Mouse, Screen
SetKeyDelay, 50, 50

OKLocated := 0

F1::
	MouseGetPos, x1, y1
	Loop 12 {
		MouseMove, x1, y1
		Click
		num := A_Index + 12
		Sleep 250
		Send % "{F" num "}"
		if (OKLocated){
			MouseClick, Left, x2, y2
		} else {
			; Wait for user to click OK
			KeyWait, LButton, D
			KeyWait, LButton
			; Record coords
			MouseGetPos, x2, y2
			OKLocated := 1
		}
	}
	return
Open a profile in LGS, position the mouse cursor over the + by "Commands" on the left and hit F1.
It Sends F13, and then waits for you to click OK.
It remembers where you clicked OK, then adds the other 11 bindings automatically

Image

So now you can just do *F24::GoSub, DoSomethingInteresting in your AHK scripts and trigger it with buttons on your device, safe in the knowledge that it should not interfere with anything, and totally independently of the state of any modifiers if desired.

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 20 Nov 2017, 18:20
by Nextron
Saved! It's always a nuisance to assign those keys in LGS, but so rewarding having them available in AHK.
(Great presentation too)

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 03 Dec 2017, 02:05
by Acecool
Cheers, but you don't need to add it to more than one profile... After you add it to one, you can simply ctrl / shift click the F keys in the box on the left-hand side and drag / drop them on the profile at the top-right. They'll be copied to each profile you drag them to.

I wrote a simple script to replace shift + f1 through f12 as f13 through f24 but the software kept picking up on it so this is nice. I did have to change the sleep though because it was moving quicker than the Logitech Software...

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 07 Jan 2018, 03:24
by Redgard
Hello

I've created an account just to thank you.
Thank you very much, I've been looking for this for so long!

kind regard,
Red'

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 21 Jan 2018, 01:39
by Buzzerb
Hey man, i love the program but unfortunately it doesn't work for onboard memory programs due to a different system. I attempted to adapt your program to work but it did not, any ideas?

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 21 Jan 2018, 13:44
by evilC
Hmm, I see your problem - there is no "library" of commands in onboard mode, so you need some system to send the keys on-demand.

Make a GUI that lets you select 13-24 and add a hotkey that clicks the mouse, then sends the F key that was selected in the gui.
So then you would place the mouse over the thing you want to bind and hit the hotkey.

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 04 Mar 2018, 21:09
by lint_kid
A way that worked for me with the on board memory configuration, was to comment out SendMode Input at the top and just use F1::F24

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 11 Apr 2018, 22:32
by KilliK
thanks for this, I set my scripts to use my logitech mouse's extra button as F24
BUT, I have a question which I asked in another topic too.
Can the logitech mouse use the extra button to send the F24 button and cycle my DPI settings?
I am looking for a way for AHK to track the extra button whenever I click it so it can inform me which is the currently active DPI setting. otherwise I ll have to open the mouse's control panel to view it every time I play a game.

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 12 Apr 2018, 04:10
by evilC
See my response to your other thread. This code will not help you do that, you would need an LGS-specific LUA macro

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 10 May 2018, 15:37
by Pontiac76
Excellent. Much better than the method I came up with ages ago. Putting this code into my SVN so I don't lose it.

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 23 Jul 2018, 16:14
by SandLight
lint_kid wrote:A way that worked for me with the on board memory configuration, was to comment out SendMode Input at the top and just use F1::F24
Do you have any full examples of the script you used? I tried it but it doesn't work for me. Also, what version of Logitech Gaming Software were you using?

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 01 Aug 2018, 14:34
by wernerml
OHHH BOY... what an amazing idea!!! works like a charm!

THANK YOU!!!!!!!

Re: Logitech Gaming Software F13-F24 enabler (Unused keys to trigger AHK actions)

Posted: 07 Apr 2020, 04:01
by dadidoo
hi, i have a g502 , in the game i play, the mouse macro from the logitech software is not detected, but the macro ahk that i use in the keyboard, is detected, do you have any idea how to make some kind of BRIDGE? so i can use the mouse macro from a bind in my keyboard that calls this Mousebutton? i cannot find this logitech mouse buttons in AHK, i think i read they are exclusive from the logitech software, maybe any idea? calling this buttons through another programming language? i dont understand why mouse macro is not detected as cheat but the keyboard is. thanks in advance!:D