Joystick programming wows. Can someone point me in the right direction please?
-
FYI. My configuration:
Shift:
SimHotasPinkyShift 5 -1 -2 0 0x0 0
SimHotasPinkyShift 261 -1 -2 0 0x0 0SimWheelBrakes 0 -1 -2 0 0x0 0
SimDoNothing 256 -1 -2 0 0x0 0Not sure, but are you holding the shift while executing the shifted command? Also, I do think there is a way to have the pinky key act as a shift state AND as a call back. Again, not 100% sure, but I think it has to do with a short-press vs a long-press and there is a control value for the short/long time in the Falcon BMS cfg file.
Eject does require, I think, a short delay.
IMHO …… Eject is a bad key (for me) to have on the HOTAS. Too much risk being in the wrong mode or hitting the wrong key and going on a rocket ride. Happened to a squad mate not long ago. I prefer to have to take positive, intentional action by keeping that bound to a keyboard control only.
-
Is this the only problem with +256 shifting? SimEject is an interesting callback to use which may have unique issues. On a parallel note oh how soon is the “frakenprofile” temptation setting in. Keyboard is a beautiful 104-button controller for these things. ‘K’ / Ctrl-E or even clicking on eject handle are just fine controls.
Is +256 shifting working for other callbacks? Maybe something more normal that doesn’t have delay needs. Feel free to paste your .key file in between [ code ] tags.
-
…. Is +256 shifting working for other callbacks? …
Good question.
You’re such a clear thinker with regard to trouble-shooting.
-
Terry…
Have you seen my PM’s? -
FYI. My configuration:
Shift:
SimHotasPinkyShift 5 -1 -2 0 0x0 0
SimHotasPinkyShift 261 -1 -2 0 0x0 0SimWheelBrakes 0 -1 -2 0 0x0 0
SimDoNothing 256 -1 -2 0 0x0 0Not sure, but are you holding the shift while executing the shifted command? Also, I do think there is a way to have the pinky key act as a shift state AND as a call back. Again, not 100% sure, but I think it has to do with a short-press vs a long-press and there is a control value for the short/long time in the Falcon BMS cfg file.
Eject does require, I think, a short delay.
IMHO …… Eject is a bad key (for me) to have on the HOTAS. Too much risk being in the wrong mode or hitting the wrong key and going on a rocket ride. Happened to a squad mate not long ago. I prefer to have to take positive, intentional action by keeping that bound to a keyboard control only.
Hi,
Again, thanks for jumping in and helping. I really appreciate it. NB I only picked the eject key by way of experimentation. You don’t have to do much to realise that the shifted function worked. I don’t intend to use this key combination seriously.
Now, I am holding the pinky switch closed whilst I press the trigger to its 1st detent position. Is this right? The function is described as a “shift” so I am presuming that it follows the same paradigm as the keyboard I.e. you hold shift down to change another key’s function when it is pressed soon after the shift key. Please tell me that this isn’t me presuming something stupid like the shift behaving like “a shift”? I don’t remember, from my now extensive reading, an explanation of whether the pinky is supposed to be pressed then released or kept pressed.
Mr Confused of Basingstoke.
-
Good question.
You’re such a clear thinker with regard to trouble-shooting.
I did try +256 with another command and nothing happened.
T
-
OK …. SimEject doesn’t work on my shifted 1st detent either. Could be a BMS ‘thing’. I’ll try/test an alternate command.
Oddly though, with a command on that 1st shifted DX button, my pinky switch now works like it’s ‘supposed’ to … momentary, dual-function based on time held (i.e. short press = exp veiw; long press = DX shift).
-
OK …. SimEject doesn’t work on my shifted 1st detent either. Could be a BMS ‘thing’. I’ll try/test an alternate command.
Oddly though, with a command on that 1st shifted DX button, my pinky switch now works like it’s ‘supposed’ to … momentary, dual-function based on time held (i.e. short press = exp veiw; long press = DX shift).
I do worry that this software is a little bit “buggy”. The more the software does and the more sophisticated it gets the “buggier” it becomes. You can’t really help that.
-
I’m reluctant to call it a ‘bug’ …. more likely a feature I haven’t read/learned about, or an ‘undocumented’ feature. Complication includes things that do stuff that one doesn’t (yet) understand or expect.
However, for me, this is good. I have a new ‘free’ button for assignment … the FOV/Pinky switch.
-
I’m reluctant to call it a ‘bug’ …. more likely a feature I haven’t read/learned about, or an ‘undocumented’ feature. Complication includes things that do stuff that one doesn’t (yet) understand or expect.
However, for me, this is good. I have a new ‘free’ button for assignment … the FOV/Pinky switch.
I worked extensively in software development methods and also software quality assurance. I must have been a real pain in the 4rse. For me it would have been a bug to restrict the number of DX controls “sensed” on an input device on such an arbitrary basis. For me that should be totally dynamic. You can probably see why I don’t get employed much these days. . .
-
I did try +256 with another command and nothing happened.
T
So you’re having the same issue with failed +256 shifting using a different callback but you’re still using the trigger? Ideas for troubleshooting:
1. X52 trigger is two-stage. I believe first detent holds one button and second holds two but I’m not sure.
2. Confirm the following line in falcon bms.cfg
set g_nHotasPinkyShiftMagnitude 256 // Enable DirectX Shifting and specify button offset
3. Are you sure that you are using the .key file you edited? Make sure you save the file in the text editor, possibly as a new filename, load it into Falcon, confirm new file name in setup screen.
4. SimHotasPinkyShift should appear 3 times in your .key file. Once in the keyboard section with the text description in quotes, once to turn it on (ID+0), once to turn it off (ID+256). -
So you’re having the same issue with failed +256 shifting using a different callback but you’re still using the trigger? Ideas for troubleshooting:
1. X52 trigger is two-stage. I believe first detent holds one button and second holds two but I’m not sure.
2. Confirm the following line in falcon bms.cfg
set g_nHotasPinkyShiftMagnitude 256 // Enable DirectX Shifting and specify button offset
3. Are you sure that you are using the .key file you edited? Make sure you save the file in the text editor, possibly as a new filename, load it into Falcon, confirm new file name in setup screen.
4. SimHotasPinkyShift should appear 3 times in your .key file. Once in the keyboard section with the text description in quotes, once to turn it on (ID+0), once to turn it off (ID+256).1. 1st detent is button 1 and 2nd is button 15 from memory.
2. confirmed.
3. confirmed. I load it in the UI every time.
4. I’ll have to check this tomorrow. I am away from my desktop at the moment.Many thanks.
-
The pinky switch saga continues. . .I create an extremely cut down key file for experimental purposes only. I used the brake in and out call for visual confirmation.
Assigned pinky to button 5 - the one that is on the handle by your little pinky finger and it doesn’t work. . . I can brake out but brake in is ignored.
SimEndFlight -1 0 0X1 0 0 0 0 “SIM: Toggle Exit Sim Menu”
OTWSelectChaseMode -1 0 0XA 0 0 0 1 “VIEWEXT: Chase Camera”
SimHotasPinkyShift 5 -1 -2 0 0X0 0
SimHotasPinkyShift 261 -1 -2 0 0X0 0
AFBrakesIn 265 -1 -2 0 0X0 0 “”
AFBrakesOut 9 -1 -2 0 0X0 0 “”Change the pinky button to another button on the hotas and it works fine . . .Brake comes out. I hold the shift button (next to th emain POV) hit button 9 and in come the brakes again.
SimEndFlight -1 0 0X1 0 0 0 0 “SIM: Toggle Exit Sim Menu”
OTWSelectChaseMode -1 0 0XA 0 0 0 1 “VIEWEXT: Chase Camera”
SimHotasPinkyShift 3 -1 -2 0 0X0 0
SimHotasPinkyShift 259 -1 -2 0 0X0 0
AFBrakesIn 265 -1 -2 0 0X0 0 “”
AFBrakesOut 9 -1 -2 0 0X0 0 “”So, what the hell is wrong with my proper pinky switch. I can see it operate in the Saitek control panel and it comes up as button 6 (button 5 in game). I note that this key does not show up when using the keyfile editor. All the other buttons show up when pressed?
-
One test if the SimHotasPinkyShift is working is if you are able to use its non-shifting function. If tapped it presses the pinky switch which controls among other things expanded display of the FCR (“EXP” with highlight at the top of the MFD). If you can’t use the pinky switch this way then shifting by holding it will never happen.
As for why the callback does not show up in the list is because the list only shows “keyboard type” line entries. The DX entries are invisible lines. This is why I mentioned that SimHotasPinkyShift should appear three times in your .key file. If you look at my .key file and take an example you notice that I have the lines:
AFGearUp -1 0 0XFFFFFFFF 0 0 0 1 “Gear Up”
and
AFGearUp 23 8 -2 0 0x0 0Having the blank (0xF… is the blank code) is not just there for my health. Despite the fact that I only trigger the AFGearUp callback using DXid 23 I still have the blank keyboard entry as well. From my prior testing if I removed the top line it breaks functionality for the DX line.
-
One test if the SimHotasPinkyShift is working is if you are able to use its non-shifting function. If tapped it presses the pinky switch which controls among other things expanded display of the FCR (“EXP” with highlight at the top of the MFD). If you can’t use the pinky switch this way then shifting by holding it will never happen.
As for why the callback does not show up in the list is because the list only shows “keyboard type” line entries. The DX entries are invisible lines. This is why I mentioned that SimHotasPinkyShift should appear three times in your .key file. If you look at my .key file and take an example you notice that I have the lines:
AFGearUp -1 0 0XFFFFFFFF 0 0 0 1 “Gear Up”
and
AFGearUp 23 8 -2 0 0x0 0Having the blank (0xF… is the blank code) is not just there for my health. Despite the fact that I only trigger the AFGearUp callback using DXid 23 I still have the blank keyboard entry as well. From my prior testing if I removed the top line it breaks functionality for the DX line.
I wasn’t actually looking for HOTAS keys to appear in the BMS UI. I did realise that this only shows keyboard keys. What is happening is that the physical pinky key does not turn a button on when using the keyfile-editor software (distributed with BMS). All the other buttons show up in the keyfile-editor by turning a button on in the editors forms. I am wondering whether the physical pinky key press is being “seen” by the Keyfile-editor and by BMS. I’ll use your suggestion and map the pinky switch (DX 5 AKA 6) to a function that will be obvious in game.
T
-
SimEndFlight -1 0 0X1 0 0 0 0 “SIM: Toggle Exit Sim Menu”
I added line 4 to make sure that the unshifted function is present as suggested. That has crashed BMS so badly that even when I remove the .key file it still won’t start. I tried starting up on the earlier .key file that used to work. I also tried copying bms.key into the last .key file that the software accepted. Nothing works. I am now reloading the whole installation. Buggy, flakey, nearly giving up . . .OTWSelectChaseMode -1 0 0XA 0 0 0 1 “VIEWEXT: Chase Camera”
SimHotasPinkyShift 5 -1 -2 0 0X0 0
SimHotasPinkyShift 261 -1 -2 0 0X0 0
AFBrakesIn -1 0 0XFFFFFFFF 0 0 0 1 “Breaks In”
AFBrakesIn 265 -1 -2 0 0X0 0 “”
AFBrakesOut 9 -1 -2 0 0X0 0 “” -
Fixed the crash on launch. I deleted the dx9display file. Back on track with the original issue.
-
After extensive debugging it just seems that BMS does not “see” my button 5 (physical pinky switch). The UI certainly doesn’t pick it up. It sees all the other X52 buttons. The keyfile editor software also doesn’t see button 5 (maybe that is a clue). The Saitek controller sees the button so it isn’t my hardware.
I also think that when my button 5 is configured to certain calls it prevents other calls operating. That is rather spurious though. First things first: get X52 button recognised by BMS.
-
After extensive debugging it just seems that BMS does not “see” my button 5 (physical pinky switch). The UI certainly doesn’t pick it up. It sees all the other X52 buttons. The keyfile editor software also doesn’t see button 5 (maybe that is a clue). The Saitek controller sees the button so it isn’t my hardware.
I also think that when my button 5 is configured to certain calls it prevents other calls operating. That is rather spurious though. First things first: get X52 button recognised by BMS.
I would issue a cautionary warning that my number 3 button (pinky button) on both the joysticks I have used extensively with Falcon (Saitek X-65F and TM Cougar) have not been recognised by the UI, but have still worked.
EDIT: So to clarify, you are trying to set up the buttons using the BMS UI, and not the Saitek SST software?
-
Hi Blu,
I have reduced my scope to just getting the physical pinky switch to do anything in the sim. I reduced the keyfile down to just that which will allow me to see that the pinky switch works. So, I have mapped keyboard 9 to give me an external view. The escape key so that I can cancel a mission. A button to extend air brakes (button and a button to close them again (button 9). It all works just as expected so I have the numbering correct and have the theory under my belt.
When I swap the close airbrake for button 5 (pinky) the airbrakes don’t close. I can extend them (button eight) but can’t close them (pinky - button 5). In fact, I can’t get the pinky switch to do anything. I haven’t tried to assign the pinky to many calls. I could try a few more. . .All my X52 buttons get recognised by the UI when I press them except for button 5. The line that declares the button pressed near the bottom of the window simply does not change from its last value when I press the physical pinky switch. It does change for all the other buttons. That seems to be a thundering great clue as to what is happening. I am about to search for DX diag tools and see if I can spot anything betwixt the physical device and BMS.
Terry