Page 1 of 1

Why are there 2 Button #23 in the Default?

Posted: Mon Apr 15, 2019 23:02
by Snacko
I had some problems with buttons not working the past two weeks, but think I have them figured out.

But I found a problem with the VKB Default profile that caused part of the problem. I noticed that I had two buttons assigned as Button #13!!
And when I Set my VKB GF Mk2 MCG Pro to the Default, it has 2 buttons assigned as Button #23! One is disabled.

The problems begin in the Default Profile when you enable the button #23 that is disabled. When I did this, I did not noticed what happened, but apparently the VKBDevCfg program saw this conflict with the another Button #23, and changed the first button from #23 so there would not be a conflict. But it changed it to it's Physical button number, which is 13. (I don't know for sure if VKBDevCfg did this, but I do not remember changing any button numbers. I have no reason, and don't care what the button numbers are.)

So, then I have 2 buttons assigned to #13! And I get no error message from VKBDevCfg about this conflict.. And of course I don't notice these changes to other buttons. So, now I have a problem.. The changed buttons will no longer work in games that they are assigned. Also, if I assign a button 13 to a command, it executes the command when I press the other button 13.. And I don't know why, or what is happening.. :roll:

VKB Default Button Numbers.png

Re: Why are there 2 Button #23 in the Default?

Posted: Tue Apr 16, 2019 10:18
by Ron61
Do not panic, calmly. Let's see.
If you look at the physical layout (in the picture) and compare with those pressed in Test, then you can understand that the game will be seen not as a physical layout, but as a logical one.
MCG corresponding line numbers.png

In the cell indicated by you Reg3, Line7 (23) the central button of the MasterMode microstick is physically located, but it is assigned as the POVs <-> Axes switch and no longer at the logical level. In Reg3, Line3 (19) there is a Left Reset button, but it will be broadcast at the logical level at 13. In order not to be confused, assign logical buttons from the physical layer without going to the logical tab.
19.jpg

Now, if we want to assign a simple button (instead of uSSw Swith) to the central button of the MM microstick, there will be an intersection with the already assigned 23. Therefore, instead of the proposed 23, we will have to assign, for example, 32.
23.jpg

Re: Why are there 2 Button #23 in the Default?

Posted: Tue Apr 16, 2019 16:07
by Snacko
Thanks for your reply.

I admit that I don't understand all of this, and it seems fairly complicated(understatement). But I am sure Alex knows what he is doing. :D

At the very least it would seem to be good to automatically check for duplicates and display a warning message box.. To fix this I manually looked through all of the Logical assignments starting at 1 and going up. I found that there was no button assigned to #27. So, I assigned the duplicate to Button #27. It would seem a simple thing for VKBDevCfg to automatically look for an available button, or at least simply warn of a duplicate assignment. Just as a check for the user.. :wink:

Snacko

Re: Why are there 2 Button #23 in the Default?

Posted: Tue Apr 16, 2019 17:10
by Ron61
Believe me, but such a test has been around for a long time. The tab is called Device Report, all errors on the last page. If there are any.

Re: Why are there 2 Button #23 in the Default?

Posted: Tue Apr 16, 2019 17:40
by Snacko
Thanks. I thought that would be very helpful. So, I set my button back to 13. So there are two buttons assigned to 13. And then I Set the profile to the Joystick.. But the Device Report did not report the error.

VKB DeviceRpt.png

Re: Why are there 2 Button #23 in the Default?

Posted: Wed Apr 17, 2019 4:05
by fallout9
There are no errors in there. You could assign the same input (physical layer) to 2 outputs (logical layer) or 2 inputs to 1 output. For example, you could set up both triggers to fire the guns by assigning them both to the same control.
I think it would be easier to explain and offer advice if you'd tell what are you trying to achieve.

Re: Why are there 2 Button #23 in the Default?

Posted: Wed Apr 17, 2019 14:53
by rtrski
Snacko wrote:Thanks. I thought that would be very helpful. So, I set my button back to 13. So there are two buttons assigned to 13. And then I Set the profile to the Joystick.. But the Device Report did not report the error.

VKB DeviceRpt.png

The Physical layer is which actual input to the microcontroller gets toggled by a microswitch or whatever. The Logical layer is what the stick/blackbox tells the OS happened.

If you go back to your very first DEFAULT BUTTONS settings picture, you do not have duplicate (Logical) button assignments! Bear with me, but the grayed out blocks are simply "Auto" assigned to their sequential number, counting 1-8, 9-16, 17-24 along the rows as a default indicator. But Gray means that one is not active so it doesn't matter what number is in it! It's just a user interface thing I guess, he just preloaded the present position there instead of say leaving the little button # of the tile blank until it is activated.

When you choose to activate a new button, such as Row 3 Reg 7, then yes, you should not leave it to the currently assigned number 23 because 23 is already used as the output sent by Row 2 Reg 5 activation, unless you wanted two physical buttons on the stick to do the same thing, which is permitted. I don't know what "logic" is used by the software when you turn one on to pick a starting value.

When I'm programming I always first make a list from the Logical page of what numbers are in use in the range I'm interested in. Then I switch to the Physical page. Turn polling on so you can actually press a button and confirm which register tile it is. Then I click that tile with the mouse button and make any changes, for example adding "Tempo" to add a long-press action, I want to make sure that the Logical button assignment to the short original click is still where it was, but the new Logical assignment to the long press is a currently unused Logical number.

Does that help?

To add further complication: At the top of the report is the information that the whole stick / blackbox combo says it is as a human interface device - it has 128 buttons, etc. But of course not all games are programmed to *accept* inputs from higher number butttons, even if the OS can recognize button press logical signals from that many. So personally I try not to pick Logical button output numbers higher than "32" across all my different assignments, to stay within typical game restrictions. Anything higher than that I'd map to be the same as a keyboard letter or something.

Re: Why are there 2 Button #23 in the Default?

Posted: Wed Apr 17, 2019 17:42
by Snacko
Thanks for both of your answers. I understand a lot more now.. :wink:

fallout9 wrote:There are no errors in there. You could assign the same input (physical layer) to 2 outputs (logical layer) or 2 inputs to 1 output. For example, you could set up both triggers to fire the guns by assigning them both to the same control.
I think it would be easier to explain and offer advice if you'd tell what are you trying to achieve.

Originally, what I was trying to achieve, was to get my buttons #13 & #18 to work in DCS. For some reason they had stopped working. I found out that I had assigned them in a category called UILayer(within DCS), which allows you to assign buttons to different special things, like mouse clicks, and vr zoom, etc... I did that a few months ago, and then the F/A-18c was released and I tried to assign those buttons to commands in the aircraft. And the worked for a while, but then stopped working. I figured out the problem with the UILayer and fixed it.

But while fixing it, I noticed that I had two buttons in VKB that were assigned to #13. I thought this was an error because I had not assigned them both the same, and I thought there should not have been two buttons with the same number. But from reading both of your post I now understand this is not an error.

I am sure in some situations having two buttons assigned to the same number may be helpful. At first glance it seems confusing and an error, but if a user wanted to do that they could..

I do have several buttons assigned over the 32 button limit on some games. I have not run into any problems with this yet... Do you think most modern games support more than 32 buttons today? I would guess so.. Especially if they have hundreds of commands like Flight Simulators or Star Citizen/Elite Dangerous..

Thanks again for your help!
Snacko

Re: Why are there 2 Button #23 in the Default?

Posted: Wed Apr 17, 2019 17:58
by fallout9
The max number of inputs from a controller is 32 in Elite Dangerous, 50 in Star Citizen and 128 in DCS. If you're exceeding the inputs limitation you could always assign whatever is extra to keyboard controls through Logical layer.
I agree that VKBdevCfg is not very friendly at first sight - I hated it myself at the beginning. But it made me curious so I started to explore it and since then I got rid of all my other devices and got into a 100% VKB system, reason being, beside their quality and exquisite design, to take advantage of this powerful and original software.