Jump to content

Recommended Posts

Posted (edited)

I have a Thrustmaster Hotas Cougar (With CH Pro Pedals attached), Saitek Pro Yoke, Addition Saitek Pro Throttle Quad, and Saitek Pro Rudder Pedals.

 

All controllers are detected by the sim just fine. The problem that I have is I cannot disable the axis' of these controllers. It's as if there is default file somewhere that overrides the axis settings for a controller.

 

For example if I clear all axis entries for a controller...lets say the Pro Yoke, the Pro Yoke still has control of the default axis' it was originally assigned in the sim.

 

Is there no way to have a controller active for button programming and completely disable its axis'??

 

This has been driving me crazy..........at present I have all axis entries on every controller cleared within the sim and all axis' are still functioning in the sim.

 

Any help would be greatly appreciated.

 

 

Thanks,

 

--Sarge

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted

Do you assign axis and fly in the same mode (real - real or game-game)?

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted (edited)

Thanks for the reply.

 

Yes. I know how the assignments work between realistic and easy.

 

I believe the whole issue has to do with the way BlackShark handles and assigns axis'.

 

Right now on my system I have 4 controllers connected capable of issuing JOY_Y and JOY_X commands.

 

If I delete all lua files from the joystick folders including the default.lua file, no axis will work. What this tells me is that even with specific controllers programmed to perform a specific function, as long as the default.lua is in place and controller is capable of issuing a JOY_Y, JOY_X, JOY_RZ or JOY_SLIDER1 that axis is going to behave as it is programmed in the default.lua independent of how an actual controller is configured.

 

I think at this point in time I'm screwed because of the way controller input is handled at present in BlackShark. I'm not a programmer but cannot help but wonder why each axis is not bound to each controller exclusively.

 

For example:

Controller 1 would issue JOY1_Y, JOY1_X, JOY1_RZ, JOY1_SLIDER1

 

Controller 2 would issue JOY2_Y, JOY2_X, JOY2_RZ, JOY2_SLIDER1

 

Controller 3 would issue JOY3_Y, JOY3_X, JOY3_RZ, JOY3_SLIDER1

 

Controller 4 would issue JOY4_Y, JOY4_X, JOY4_RZ, JOY4_SLIDER1

 

The same issue essentially exists for button programming because each button is not uniquely identified to a specific controller. i.e. if 3 controllers have a BTN5 and I assign BTN5 on controller 1, BTN5 on controllers 2 and 3 will perform exactly what is programmed on BTN5 controller 1. If button assigments were exclusive to a controller such as 1BTN5, 2BTN5, 3BTN5, 4BTN5 following along the lines as above this issue would also not exist.

 

Well, I hope this is making sense. I've spent all night playing with this and cannot come up with viable solution.

 

I sure hope someone can.

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted
If I delete all lua files from the joystick folders including the default.lua file
You shouldn't delete default.lua files! These files contains base of assignment for joystick (joysticks), keyboard, mouse and TrackIR. By default, Input subsystem will assign this "base" to each HID device, connected to your PC.

 

Just go to Options -> Controls -> Axis Commands and clear unused axis assignments for each device.

 

The same issue essentially exists for button programming because each button is not uniquely identified to a specific controller
Incorrect. If you assign (for example) button No. 5 of Device No.1 and clear assignment of Btn. 5 of Dev. 2 - this button (i.e. Btn.5 Dev.2) will not work in game.

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted (edited)
You shouldn't delete default.lua files! These files contains base of assignment for joystick (joysticks), keyboard, mouse and TrackIR. By default, Input subsystem will assign this "base" to each HID device, connected to your PC.

 

Just go to Options -> Controls -> Axis Commands and clear unused axis assignments for each device.

 

Incorrect. If you assign (for example) button No. 5 of Device No.1 and clear assignment of Btn. 5 of Dev. 2 - this button (i.e. Btn.5 Dev.2) will not work in game.

 

 

At this point in time I am extremely frustrated. I have over 15 hours of my time invested in trying to get my controllers to operate as they should. I am well aware that I should not have to delete the default.lua. I did this for testing purposes. It is however the ONLY way to disable all axis input to the BlackShark simulation. If I clear all axis' commands within the gui all controller axis' still have their default.lua functions.

 

Heres the statements from the default.lua:

 

-- joystick axes

--{combos = {{key = 'JOY_X'}}, action = iCommandPlaneRoll, name = 'Roll'},

--{combos = {{key = 'JOY_Y'}}, action = iCommandPlanePitch, name = 'Pitch'},

--{combos = {{key = 'JOY_RZ'}}, action = iCommandPlaneRudder, name = 'Rudder'},

--{combos = {{key = 'JOY_SLIDER1'}}, action = iCommandPlaneThrustCommon, name = 'Thrust'},

 

So with NO axis configured in the sim (they are all cleared) this is what happens:

 

Saitek Pro Yoke JOY_X, Thrustmaster Hotas Cougar JOY_X, Saitek Pro Rudder Pedals JOY_X and Saitek Pro Throttle JOY_X all effect roll

 

Saitek Pro Yoke JOY_Y, Thrustmaster Hotas Cougar JOY_Y, Saitek Pro Rudder Pedals JOY_Y and Saitek Pro Throttle JOY_Y all effect pitch

 

and so on....any device capable of a JOY_RZ input will effect the rudder, any device that capable of issuing a JOY_SLIDER1 will effect thrust.

 

 

And I'm am also not incorrect about the button programming function either. If I clear all button assignemnts on all devices, and I then assign JOY BTN1 on my HOTAS to fire weapon, and it is the only button of any controller programmed, then enter the BlackShark simulation, any device capable of issuing a JOY BTN1 command will fire a weapon. In my case, what that means is that I have supposedly only configured JOY BTN1 of my HOTAS as the only fire weapon button.

 

In Reality:

 

Saitek Pro Yoke (no buttons programmed)

Pressing Button 1 on this controller fires weapon

 

Saitek Pro Throttle (no buttons programmed)

Pressing Button 1 on this controller fires weapon

 

Thrustmaster Hotas Cougar (JOY BTN1 programmed)

Pressing Button 1 on this controller fires weapon.

 

I know in theory how the controllers should function and the intent with which you describe how it should work is the same as the theory.

 

The reality of it is, that the programming of controllers both axis' and buttons does not work as intended.

 

If I were to hook up (2) two-axis joysticks which are seperate controllers and nothing else (Joystick A and Joystick B), one would logically believe that I could configure Joystick A X-Axis to controll roll, Joystick A Y-axis to controll pitch, and Joystick B Y-Axis to control thrust. At present, that can never happen, both of controllers will only effect roll and pitch and if only one is programmed and the other cleared they will both still effect roll and pitch.

 

Can this function be corrected in an update or a modification of a file?? In my opinion this a very major flaw. Because of the controller/sim interaction in its present state BlackShark is unflyable for me.

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted

Please, explain me - what is a purpose of connecting controller(s) and not using it axis and buttons at all.

 

In your case, if you have deleted all device files (except default.lua) - you will get default assignment on all HID devices. It's absolutely correct. If you want to exclude some axis or buttons from game assignment, you have to enter Options - Controls - .... and make necessary corrections for all devices. Do not erase corresponding file(s) from ..\Config\Input\Aircrafts\ka-50\joystick\ etc.

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted (edited)

I may want to have a controller connected, not use its axis' for anything, but use all of its buttons for individual and unique assigments.

 

For example if I had (2) Identical Hotas controllers that had 20 buttons, I would only need three of the available six axis'. That would leave 40 buttons to assign to unique functions. But with the way controller input is assigned and handled within BlackShark....I can only program 20 unique functions because the program reads the controller outputs exactly the same.

 

If I push Button1 on Hotas1 BlackShark "Sees" JOY BTN1 not JOY1 BTN1

 

If I push Button1 on Hotas2 BlackShark "Sees" JOY BTN1 not JOY2 BTN1

 

If I wanted to program Hotas1 Axis2 to roll BlackShark "Sees" this as JOY_X and performs the roll function.

 

However if I program Hotas2 Axis2 to pitch BlackShark "Sees" JOY_X and performs the roll function instead.

 

Therefore there is no fleixbility in programming multiple controller buttons, or axis' for that fact, to thier own unique function and because of the way the program automatically makes default axis' assigments(independent of having the axis cleared) you cannot assign each controller axis to a unique function.

 

I should be able to have all my controllers plugged in, choose a specific axis on a specific controller and assign it a specific function. If I choose not to assign an axis to anything it should not be recognized by the program at all, and I should be able to program, as I said above all of the available controller buttons to their own unique function.

 

I think we are losing something in translation here. Is there anyone else that can step in and help me explain this any better?

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

Posted

i don't know if you already did that, but the axis configuration

is in a separate category under options..controls. if you

drop-open the "category" combo-box, you'll see that category

in red (named "axis commands").

 

the controls in that category are not show in the "all" category.

 

also, make sure you roll the grid to the right to be able to see all

your available controllers, 'cause they don't fit in a single screen.

 

hope it helps in some way.

Posted (edited)
i don't know if you already did that, but the axis configuration

is in a separate category under options..controls. if you

drop-open the "category" combo-box, you'll see that category

in red (named "axis commands").

 

the controls in that category are not show in the "all" category.

 

also, make sure you roll the grid to the right to be able to see all

your available controllers, 'cause they don't fit in a single screen.

 

hope it helps in some way.

 

Thank you for the reply. I know were to find the axis configuration, in fact I can do it with my eyes closed now...lol. :smilewink:That is not the issue. The issue is how BlackShark assigns generic "keys" to controller axis' and buttons when you are using unique devices. Its creates major problems.

 

I have a very customized setup for using in various simulations. The problem is now, in order for me to play BlackShark I have to reconfigure my system (unplug devices, move equipment) to get rid of unwanted axis behavior within BlackShark. I should not have to do that and have not had to do it with any other software. Everything should be able to remain as is (if it could be configured correctly which it cannot because of program limitations).

 

I hope that no one takes this thread the wrong way, this is a great simulation. I would just like to find a workable solution were all of my devices can remain connected to my computer and mounted in the locations they were originally mounted.

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted

1. If BS can "see" all devices separatly - they should work unless some 3rd party software make they own mapping. Do you use special software (Foxy etc.)?

 

2. Please, open Registry Editor, find

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\

and check whether all devices have unique VID_xxx&PID_xxx

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

  • ED Team
Posted

Please check folder <GAME>\Config\Input\Aircrafts\ka-50\joystick\ - can you see files with names like in my screenshot? The total files quantity should be <devices_qty>+1 (default.lua). (Please note, than BS not delete already created files associated with physically disconnected devices.)

 

Stupid question - did you press OK button after assignment?

DeviceFolder.jpg.5347d6241cac1a6cfb22c42d06df32f6.jpg

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted (edited)
maybe you have ppjoy, glovepie, or something else running...

do you use the cougar in "buttons and axis emulation" mode?

 

aledmb,

 

I'm afraid that you do understand my controls issue as well. I have no other joystick software running. All of my controls are connected to my system as regular directX input deivces (non are programmed, nor am I using any programming software, and button and axis emulation is off on the Hotas as well). Have you read all the posts starting from the begining??

 

It has nothing to do with the controllers not functioning in BlackShark, it has everything to do with being able to assign or disable each controllers unique axis or unique button and get them to perform as I would like in BlackShark.

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

Posted
Please check folder <GAME>\Config\Input\Aircrafts\ka-50\joystick\ - can you see files with names like in my screenshot? The total files quantity should be <devices_qty>+1 (default.lua). (Please note, than BS not delete already created files associated with physically disconnected devices.)

 

Stupid question - did you press OK button after assignment?

 

 

Yes, my devices will all show up as in your picture and yes I have pressed the OK button.

 

Do you understand what I said in this post?

 

For example if I had (2) Identical Hotas controllers that had 20 buttons, I would only need three of the available six axis'. That would leave 40 buttons to assign to unique functions. But with the way controller input is assigned and handled within BlackShark....I can only program 20 unique functions because the program reads the controller outputs exactly the same.

 

If I push Button1 on Hotas1 BlackShark "Sees" JOY BTN1 not JOY1 BTN1

 

If I push Button1 on Hotas2 BlackShark "Sees" JOY BTN1 not JOY2 BTN1

 

If I wanted to program Hotas1 Axis2 to roll BlackShark "Sees" this as JOY_X and performs the roll function.

 

However if I program Hotas2 Axis2 to pitch BlackShark "Sees" JOY_X and performs the roll function instead.

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

Posted

Yes each device has it own unique ID.

 

The problem is 100% with the way BlackShark is handling the assigments.

 

If I have (2) identical controllers attached to my system, each with 10 buttons and each with 2 axis' the way that BlackShark handles button and axis assignments I essentially only have one controller attached and no matter how I attempt to assign the axis' because of the default.lua mappings controller1 X-axis will always = JOY_X, controller2 X-axis will always = JOY_X, controller1 Y-axis will always = JOY_Y, controller2 X-axis will always = JOY_Y.

 

JOY_X is defined in the default.lua and assigned the action iCommandPlaneRoll.

 

JOY_Y is defined in the default.lua and assigned the action iCommandPlanePitch

 

So, any device attached, and seen by the OS and BlackShark that is capable of having its input interpreted by BlackShark as JOY_X or JOY_Y will always effect the roll and pitch regardless of how any axis is programmed/assigned within BlackShark.

 

Do you understand??

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted

Please, don't explain me twice. I have 4 devices in my system, and two of them are indentical (hand made 6-axis 24-buttons 1-POV HID devices and both devices works perfect as a collective and cyclic).

 

You didn't answer about 3rd party mappers etc. (see post aledmb).

 

Files default.lua "works" only if no device files in ....Config\Input\Aircrafts\ka-50\joystick\*.* like CH FIGHTERSTICK USB {700D7C00-CE8F-11dd-8001-444553540000}.lua.

 

Tomorrow I will try to emulate your personal issue - but if your game can "see" all your devices (each column in Control tab corresponds to one device) - I think, input subsystem works correct.

 

If you connect two or more identical HID devices, Windows set unique ID to each one. And input of BS uses these ID's (you can see in it column names), hence all devices are different for Win and for BS.

 

Can you make screenshot of ..\Ka-50\joystick\*.* folder like my in post #12? I'd like to see your ID's.

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted (edited)

Can you make screenshot of ..\Ka-50\joystick\*.* folder like my in post #12? I'd like to see your ID's.

 

 

USSR_Rik,

 

I apologize for repeating myself, I can now see that you understand my problem. I have no third party mappers installed either. The requested image is attached.

folder.jpg.f4517e9e5a4a5417d30cdd90536e2d00.jpg

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

Posted (edited)

USSR_Rik,

 

I did not give up on this as of yet and I now have a much better idea of what is or for that matter is not happening.

 

I have manually edited my controller lua files in the ka-50_easy folder and I am now getting the behavior I would expect. It appears to me that no matter what I do configuration wise via the GUI the defaults are always applied to each controller instead of what I have set up via the GUI.

 

I have attached two zip files that contain original lua files and modified lua files. I only manipulated the axis information to get things working properly so disregard the key commands section when comparing original and modified files (however if you notice all key command defaults are assigned to each controller as well).

 

When I originally attempted to configure via the GUI all controller button assigments were cleared except for those on the Hotas. All controller axis' were cleared then the Saitek Rudders were set for rudder and the Hotas X, Y, Z axis were set to roll, pitch, collective. I pressed OK and exited the Options screen. As you will see in the original files these configurations never happened.

 

Additonally at present I have deleted all controller specific entries from the default folder.

ka-50_easy_orginal.zip

ka_50_easy_modified.zip

Edited by sargeski

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

  • ED Team
Posted

Issues like this can be explained as:

1. User makes assignment for real mode but flies in game mode and vice versa (frequent mistake).

2. User exits from Controls screen pressing small cross in upper-right screen corner instead of pressing "OK".

3. Some software can combine axis and buttons of devices (for example - PPJoy etc.) or interfere with game input libraries (NewView).

4. User's account does not have enough right to write in some game folder (for example, incorrectly installed game).

5. What have I missed? :)

 

Nevertheless, you have found solution - very well. But think over above mentioned reasons.

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

  • ED Team
Posted

Results of connecting two absolutely identical devices (as I promized yesterday) - on screenshots. You can see, that both devices have different names of lua-files (screen 1) and BS also sees them as a two separate devices (screen 2). Moreover - axis Y of first device works as a Cyclic Pitch, and axis Y (the same name!) of the second device works as an Absolute Horizontal Shift View. No interference, no problems - both devices are tuned only via game GUI.

 

First joystick works as a cyclic, second as a collective.

 

Note. Both joysticks are "hand made" and built on a atMega8 microcontrollers. In order to get absolutely identical devices, I have readed microcode from device mRUS {74F29A70-AD8A-11db-8001-444553540000} and program by this microcode the second device bit-to-bit.

JoysticksProfiles.jpg.6fc9a6d25e0845a0fa24b6e1e1e231f6.jpg

Scr_09-01-04_14-58-40.thumb.jpg.180bd832f3936cdc62114b5ec5514b2e.jpg

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

Posted
Issues like this can be explained as:

1. User makes assignment for real mode but flies in game mode and vice versa (frequent mistake).

5. What have I missed? :)

 

Nevertheless, you have found solution - very well. But think over above mentioned reasons.

 

USSR_Rik and aledmb,

 

Thank you both for helping me. At the moment I feel like a complete idiot. The problem all along is that I was making axis assigments in real mode and then flying in game mode (I never noticed the drop list in the upper right of the options screen). Man what a waste of my weekend because I got tunnel vision.

 

Well, at least now understand the basic mechanics of the controller lua files.....lol.

 

Once again thank you both and I apologize for my narrow mindedness.

 

--Sarge

QX9650 3.8GHz, P5E3 Premium, 4GB DDR3 Patriot Viper 1600MHz, EVGA GTX280, 28" Hanns-G 1920x1200, (4) 150GB WD Raptors, (1) 300GB WD Velociraptor, Vista X64

Posted

...I never noticed the drop list...

 

man, i tried to tell you about those drop-down combo-boxes...

you said you were able to manage that with your eyes closed.

 

but i'm happy you've made it.

have a good time with the shark now!

:smilewink:

  • ED Team
Posted
Do you assign axis and fly in the same mode (real - real or game-game)?

...Yes. I know how the assignments work between realistic and easy....

:book: RTFM.

Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down.  
Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз.

G.K. Chesterton

DCS World 2.5: Часто задаваемые вопросы

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...