Fragtality/PilotsDeck

vJoyDrv button on SD+ dial does not trigger button press

Closed this issue · 9 comments

This issue affects the current master (development) version.

When a VJoyDrv button is assigned to a SD+ dial, there is no button pressed. Only if you rotate the dial fast enough, so that the Stream Deck software reports abs(ticks) > 1, the PilotsDeck plugin will trigger a joystick button press.

The reason is that

return VirtualJoystick.ClearSetDriverButton(command.Address, command.IsDown);
always calls ClearSetDriverButton(..., false). Only with ticks > 1 the code starts to send true followed by false.

Good catch!

How does the latest Build work out?

Since you have a Use-Case for such a Combo, please also test if it both works with the Composite Actions and the "Classic" Actions!

Thank you, it works again with the "Display Value" action.

I will make more tests later.

Works also with all other actions. Also with the Composite action. 👍

Two remarks (not related to this ticket, but to your plugin):

  • The support of LUA scripts directly from the plugin is mind blowing. For example, all my EFIS buttons for the FBW A32NX are dimmed when there is no AC power on the aircraft. Or the baro on the SD+ dial displays "88.88" during the lights test.
  • Composite actions are also awesome. I am just about to discover the endless possibilities of this feature.

Thanks for the Feedback ❤️
It's always great to know that the Work and the Ideas behind it are recognized!

The funny Thing about the two new Features you mentioned: I got rid of most Scripts for the FCU/AP-Panels since the Composite Action can handle the simple Logics for that on its own (for Example on the A32NX) ^^

Unfortunately I did not test "dial press" after your fix. "dial left" and "dial right" work perfectly, but on dial press, the joystick buttons remains pressed forever.

Nope, works.

If I put the same vJoy button (e.g. 1:10) on both "DIAL_DOWN" and "DIAL_UP" of the Composite Action, it works. If I only put 1:10 on "DIAL_DOWN" the joystick button is never released. The documentation says:

Non-Toggling vJoy Buttons will behave like any normal Joystick Button - they are down/set as long as the StreamDeck Key/Dial is down (and go up/cleared when the Key/Dial goes up again).

Ohhhh - that Part must be reformulated! D'OH

Yes that is true for the "classic" Actions, not for the Composite Action.

Readme updated
image