Using the shifted function
-
Hello, Agave_Blue already provided excellent guidance but, as it’s said, “an example worths more than one thousand words” so you could also see this thread and download my profile that contains working shifted DX functions for the Hotas X.
If you want to go further deep in the matter, see also the DirectX Shifting Facility article .
Should you need further help just ask.The DirectX Shifting Facility article was most helpful ! for someone new to all this.
I have some questions though on the POV Hat. It says in the article, “Besides the DX buttons, BMS can additionally handle up to 4 POV hat switches”. Does this mean that BMS only handle one POV Hat moving in 4 directions (0, 2, 4, 6)? Or does it mean it can handle 4 different POV Hats? I take it to mean the first because later on in the article when it talks about the shift state for the POV Hat, that the assigned no. is fixed at 2, “The shifting of POV hat buttons follows the same concept as shifting DX buttons. It uses the same shift callback that has already been defined for DX buttons. Only difference is that the shifting offset for POV hats is fixed to 2.” But if that is not what it means, then I’m confused. What if you have a 2nd POV Hat (not that you would need one). What would its shifted offset no. be? I assume there is only one POV Hat in every device (Hotas) and that the other HAT switches for other functions (not POV) will have corresponding shift offset nos??
Cheers
-
What if you have a 2nd POV Hat (not that you would need one). What would its shifted offset no. be? I assume there is only one POV Hat in every device (Hotas) and that the other HAT switches for other functions (not POV) will have corresponding shift offset nos??
Well, the article also states that:
The 2 is composed from POV hat #1 (0) plus the fixed 2 shift offset. So the usage of the shift button effectively promotes the 1st POV hat to act as a 3rd (virtual) POV hat. The directional numbers do not change.
Note: It is not necessary to explicitly map the default view panning behavior to POV hat #1 (0), as every hat which is not mapped defaults to view panning behavior.
The first sentence means that if you had a second POV hat on the same device it would be numbered 1 in the unshifted layer and 3 in the shifted one.
So the reported example configuration to map trimming functions to the shifted layer of a POV hat would read like the following if you map it to the second one:AFElevatorTrimUp 3 -1 -3 0 0x0 0
AFAileronTrimRight 3 -1 -3 2 0x0 0
AFElevatorTrimDown 3 -1 -3 4 0x0 0
AFAileronTrimLeft 3 -1 -3 6 0x0 0In other words, 2 is not always the first number of your callback definition line for a shifted layer, it’s the number you add to the ID of your POV hat in order to use it shifted.
The second sentence means exactly what it reads: every POV hat defaults to view panning, so you do not have one and one only while other ones are automatically reserved for other functions: it is up to you to map the functions you want to every hat (either in shifted/unshifted layer or unshifted only), leaving one of them unmapped in unshifted layer if you need it for POV control.
Hope this helps.
-
Ahhh… I get it. Instead of the usual DX No. + 256 for Shifted Buttons, it is DX No. + 2 for Shifted POV/HAT Switches! Thanks BlueRaven
Btw, after reading up, I managed to modify your BlueRaven.key file for Non TrackIR users (I don’t have TrackIR). See post.
Cheers
-
Ahhh… I get it. Instead of the usual DX No. + 256 for Shifted Buttons, it is DX No. + 2 for Shifted POV/HAT Switches! Thanks BlueRaven
Btw, after reading up, I managed to modify your BlueRaven.key file for Non TrackIR users (I don’t have TrackIR). See post.
Cheers
Yes, the POV hat(s) have a different set of rules from ‘normal’ hats.
-
Yes, the POV hat(s) have a different set of rules from ‘normal’ hats.
So ‘normal’ HATs use DX No. + 256 for Shifted? like the regular buttons?
-
So ‘normal’ HATs use DX No. + 256 for Shifted? like the regular buttons?
Yes. For example, X52 Pro has 3 ‘hats’, but only one is a “POV” hat. Note that it’s separated from the rest:
Then, in the DX part of the keyfile here is the ‘regular’ hat shifted and unshifted:
SimTMSUp 19 -1 -2 0 0x0 -1
SimTMSRight 20 -1 -2 0 0x0 -1
SimTMSDown 21 -1 -2 0 0x0 -1
SimTMSLeft 22 -1 -2 0 0x0 -1SimCMSUp 275 -1 -2 0 0x0 -1
SimCMSRight 276 -1 -2 0 0x0 -1
SimCMSDown 277 -1 -2 0 0x0 -1
SimCMSLeft 278 -1 -2 0 0x0 -1And here is the “POV” hat shifted and unshifted:
@DMS:SimDMSUp 0 -1 -3 0 0x0 -1
SimDoNothing 0 -1 -3 1 0x0 -1
SimDMSRight 0 -1 -3 2 0x0 -1
SimDoNothing 0 -1 -3 3 0x0 -1
SimDMSDown 0 -1 -3 4 0x0 -1
SimDoNothing 0 -1 -3 5 0x0 -1
SimDMSLeft 0 -1 -3 6 0x0 -1
SimDoNothing 0 -1 -3 7 0x0 -1AFElevatorTrimUp 2 -1 -3 0 0x0 -1
SimDoNothing 2 -1 -3 1 0x0 -1
AFAileronTrimRight 2 -1 -3 2 0x0 -1
SimDoNothing 2 -1 -3 3 0x0 -1
AFElevatorTrimDown 2 -1 -3 4 0x0 -1
SimDoNothing 2 -1 -3 5 0x0 -1
AFAileronTrimLeft 2 -1 -3 6 0x0 -1
SimDoNothing 2 -1 -3 7 0x0 -1 -
Yes. For example, X52 Pro has 3 ‘hats’, but only one is a “POV” hat. Note that it’s separated from the rest:
Then, in the DX part of the keyfile here is the ‘regular’ hat shifted and unshifted:
And here is the “POV” hat shifted and unshifted:
Excellent, thanks!
-
You’re right Agave!!
It does say that the file is based on the original keyfile generator provided with 4.32 by Boxer.
I think Kolbe developed this latest one.
Anyways, many thanks to Kolbe and Boxer
Their knowledge and work speak volumes.
Pika -
You’re right Agave!!
It does say that the file is based on the original keyfile generator provided with 4.32 by Boxer.
I think Kolbe developed this latest one.
Anyways, many thanks to Kolbe and Boxer
Their knowledge and work speak volumes.
PikaThanks. I never realized Boxer had a hand it.
-
Hi,
Does anyone know if having dual or multiple commands in a single button press or having toggle commands in a button is possible in BMS DX programming? If so, how is it done?
So far I’ve only seen single commands. I remember programming utilities like Saitek allowed for consecutive or toggle commands but I am guessing it is not possible in BMS DX programming.
Thanks