Jump to content
The simFlight Network Forums

Recommended Posts

Posted

Pete, a quick question.......

How many button assignments will FSUIPC handle from the one HID?

I am looking at one for a home cockpit that has 112 buttons !

Jon

Posted

How many button assignments will FSUIPC handle from the one HID?

The title makes this ambiguous. If the title you have used here ("Keyboard Buttons") is meant to imply a keyboard emulating device, not a joystick button device, then the answer is "it doesn't matter" because your HID is looking like a keyboard, so it must produce keystrokes. The keyboard interface is all in Windows, not in my programs.

The rest of my reply is on the other assumption, that this is a question about a joystick type device.

I'm not sure what a HID is defined as, apart from an "input device". FSUIPC and WideClient use the Windows joystick API (joyGetPosEx), not the over-complicated C++ COM-style stuff in DirectInput, which I really can't get my head around.

In the Windows joystick API everything revolves around a unit called a "Joystick". The maximum it can handle on one joystick is 6 axes, one POV (point of view or "hat") and 32 buttons.

The API supports a maximum of 16 such joysticks, 0-15, making the total number of buttons per system equal to 512 (not counting POVs, which I handle as up to 8 more buttons, just like FS2000 used to).

This is the same interface FS always used, from FS95 through to and including FS2000. They changed to the DirectInput interface in FS2002.

I am looking at one for a home cockpit that has 112 buttons !

If it supports the joystick API as well as DirectInput it would have to appear as 4 joysticks at minimum. This is how the EPIC does it -- up to 16 joysticks for the ISA EPIC using my VXD (Win98), up to 8 with the USB version using the WinXP drivers.

I am not sure, but I *thought* the DirectInput standard joystick driver only supported up to 64 buttons (and 2 POVs) per joystick, but of course companies can make their own drivers for USB devices and bypass the whole joystick and DirectInput APIs. In that case the question is moot because neither FSUIPC nor WideClient would handle them, in the same way it doesn't handle any non-joystick HID.

Regards,

Pete

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.