Sort of a long post, TLDR is at the bottom, you can also just watch the video I’ve linked at the bottom.
The problem: As most of you may have found, BMS does not respect physical idle detents on Virpil T-50CM3 throttles. While it is possible to setup an ‘idle’ and ‘afterburner’ range within axis commands of the launcher this actually will not function properly in game and keeps players from using physical idle detents to control OFF/IDLE behavior in the F-16 (at least for T50CM3 users). This problem is not unique to BMS, it is also present on DCS.
Uncommon Developer Solution: Some DCS and other developers have setup native support for the T50CM3 by hardcoding some form of axis information into a module so that the game knows when the throttle output is below X% the throttle is in the idle cutoff range. Not all developers have done this (nor should) in addition, this is not present in BMS and frankly would be a pain to setup individual profiles for every type of joystick.
Common Workaround: A common workaround that players utilize is to setup completely separate keybinds for IDLE/OFF behavior. The issue with this is that we are losing the bottom 5% range of our throttles that would typically be reserved for the idle/cutoff range. On the other hand this creates issues with certain modules/games that ‘hardcode’ the lowest range to have idle/cutoff behavior. So we are stuck between either losing some of our throttle range or turning off our engines inadvertandly when moving the throttle to the lowest position.
The Correct Way and Solution: The correct way to set this up is to create two additional ‘service’ axes within the VPC Configuration Tool. This will enable us to get the full usable range of our throttle which games will see but also being able to make use of physical idle detents for those who use the lift-over idle detents or similiar hardware.
VPC_JOY_SETUP_LzMEZ2B0pf.png
YYzVzh1ePX.png
lTLDS8GhE5.png
After setting those up we calibrate all of our axis. Once we go through the full range of the throttle the service axis are setup properly. But we need to manually input the minimum value for the regular rX and rY axis. To do this, after you’ve already dragged it through the full range let the throttles sit against the idle stop. Then copy the data from the raw values column into the minimum value column for rX and rY respectively.
VPC_JOY_SETUP_DzydvFY9Mh.png
This is what BMS, DCS, and other flight simulators will see as your usable range of motion with the game seeing 0% throttle as you being bumped against the idle detent. Now you need to setup your axis2button. Do this by clicking into each service axis and setting 0% for axis2button. This will create a button press at the bottom of that range.
ap06b6yZ8Q.png
Lastly you need to convert the brand new logical buttons which you have created to bindable in-game buttons. From the ‘button tab’ move your throttles in and out of the the idle detent repeatedly. You’ll see in the preview window at the bottom new buttons are firing when you move each throttle to idle and back those are the new buttons which have been created. Scroll down on the right window and create a new logical button where you see an empty Physical Button space “—” . Enter the physical buttons that you identified at the bottom of the debug window into the ‘Physical Button’ space. For me these are buttons 123 & 124 but yours will be different as I have other custom mappings. BMS, DCS, etc will see the logical button press corresponding to your newly created buttons when you hit 0% due to your newly created service axis. But this will also not interfere with your regular ‘flying’ axis as 0% is seen by BMS, DCS, etc. as being right against the idle stop.
VPC_JOY_SETUP_VvdhN51DSv.png
Okay I’m setup, now how do I make this work in BMS?: Now that you have your idle buttons setup we need it to work in BMS. First run the axis configurator. You can configure either the ‘throttle’, ‘throttle right’, or both axes. Setup the afterburner detent but you don’t need to worry about setting up the idle detent.
FalconBMS_Alternative_Launcher_koFW83AP9i.png
Next you need to go to Keymapping. You’lre looking for two controls “TQS: CUTOFF RELEASE - Idle Detent - Idle” and you are looking for "TQS: CUTOFF RELEASE - Idle Detent - Off". For the OFF button, set it up by binding the newly created idle button that you made within the VPC Configuration Tool. After that we need to bind the IDLE behavior. From here you need to bind the same button but make sure it is a RELEASE button rather than press. This is what will enable you to bring your throttle below or above your idle finger lifts which will turn off or turn on your engine.
FalconBMS_Alternative_Launcher_b81ateZAvp.png
Okay I’ve set everything up but my throttle range doesn’t work right in 3D. I only get 3% of the range or something: This seems to be unique to BMS. For some reason when we setup the throttle axis in the alternative launcher the idle/afterburner detents get flipped in game and it causes issues. The fix is simple, all you have to do is within 2D main menu go to Setup > Controller then manually define the AB/IDLE position. For me I set the AB position over my AB detent and the IDLE position at 0% (it doesn’t matter because we’ve set buttons to accomplish this).
Falcon_BMS_jRrXn3xMcK.png
Y3L72BHEOo.png
Falcon_BMS_xwgmsUhVMp.png
From here you’re good to go! You can enjoy regular startups like everyone else and be able to utilize your idle cutoff properly. Everything else works normally and you never need to look at your axes again unless you want to . You can setup your throttles in other sims like DCS, IL2, WT etc. in exactly the same way by simply using your regular throttle that is detected. If you ever need to setup specific idle detents you can utilize the buttons you created. If the game has hardcorded detent detection then you simply don’t need to use the buttons at all. Hope this is helpful!
TLDR: Within VPC Configuration Tool setup two virtual axis with an Axis2Button at 0% range. Be sure to recalibrate both regular/virtual axes for the correct ranges. Setup logical buttons to coincide with the new idle buttons. Use those buttons on for OFF/IDLE and be sure that IDLE is set to RELEASE within BMS Keymapping. Fix throttle range issues by manually setting up AB/IDLE within Setup section in BMS 2D menu. .
Video Credit and walkthrough (some things have changed since this video was posted. I’ve covered them with my screenshots but the video is still largely accurate: