Skip to content

Releases: mpaperno/MSFSTouchPortalPlugin

v1.6.0 - TP v4 Features, FS 24 Updates, & More

30 Nov 22:22
9b370df
Compare
Choose a tag to compare

Changes since v1.5.0

Version number: 1060000

New Features for Touch Portal v4.3

  • Added ability to customize the "On Hold" behavior for each individual action:
    • Can now set if an action will be activated on Press, Release, both, or neither (repeat only).
    • Repeating on hold can be turned off.
    • The Repeat Rate (interval) can be set per action.
    • A new Repeat Delay property is added for setting an initial wait period before an action starts repeating (a new plugin setting has been added to set the default delay, see "New Settings" below).
    • You can now have separate actions triggering for a button's "press" vs. "release" by placing them in both the "On Hold" and "On Pressed" button setup panels, respectively.
      The action(s) in "On Pressed" is/are only activated when the button is released, while the one in "On Hold" can be set to fire only on the initial button press.
  • All action & connector category groups are now placed inside one main group for the whole plugin. They also now have new individual icons.
  • The long actions from "Custom States & Variables" category are now formatted in a multi-row form-style layout.

Other New Features

  • Added "Request an Input Event Value" action for "Custom States & Variables" category which allows selection of an event name from a live list.
  • The lists of available Simulator Variables and Events in various actions (like "Activate a Selected Simulator Event") are now filtered by connected simulator version.
    The database distinguishes between MSFS X, 2020, and 2024 versions. 'MSFS' plugin edition loads FS 24 data by default (before first connection to sim), 'FSX' edition loads FS-X data (P3D users are on their own for now, sorry!).
  • Event names in the HubHop Events list now indicate if it is a "potentiometer" event (expects an input value) by appending an "@" symbol. A snippet of the event description, if any exists, has also been added.

New Settings

  • Added "Check For New Plugin Version on Startup" setting, which does as it says. This is disabled by default. Minimum time between update checks is 6 hours, even if plugin is restarted.
  • Added "Default Held Action Repeat Delay" plugin setting. Initial delay value is going to be the same as the current repeat interval (rate). (This affects all held/repeating actions, not just the new "TP v4" style added in this version.)
  • Added "Maximum Length of Descriptions in Action Lists" setting to control how much description text appears in lists of Simulator Variables, Key Events, and HubHop Events. The descriptions can also be disabled entirely by setting this option to zero.
  • Added "Maximum Message Log Lines" setting to control how many logging entries are sent in the "Most recent plugin log messages" state value. This can also be set to zero to suppress all updates of that state.

Fixes

  • Fixed being able to set string type values on Simulator Variables (like ATC IDs) in MSFS edition since plugin v1.5 (FSX was OK).
  • Fixed missing value field in "Set Cowl Flaps Lever" action (cowl index was duplicated instead).
  • Fixed action "Radio Interaction" with options "COM3 Decrease 25 KHz w/ Carry Digits" which used an invalid event ID.

Changes

  • Moved "Failures" action into "Simulator System" category. This removes the "Failures" category from the actions menu since that was the only action in it.
  • Renamed "Set a Selected Airplane Input Event Value" -> "Set a Selected Input Event Value".
  • Minimum held action repeat interval (rate) was reduced from 50ms to 25ms.
  • The lists of available Simulator Variables and Key Events in actions now include those marked as deprecated in sim documentation, with a "(DEPRECATED)" note added in details. Some of those may still work.
  • Improved version comparison check when using SimVersion property in variable request INI files and added example of usage in the Custom States - INI Files wiki and included States.ini.
  • When using the "Plugin - Status of SimConnect" state in an IF action, the 3 possible value choices (true/false/connecting) will be available for selection.
  • Touch Portal v3 users may wish to use the alternate entry.tp plugin definitions file as described in the Replacing The entry.tp File For Touch Portal v3 wiki page. The TP v3 file is already included with the plugin.

For MSFS 2024

  • Setting 'B' type variables (triggering Input Events) is now possible for the "_Set", "_Inc", "_Dec", "_Toggle" etc, suffixes found in the sim's dev mode "Behaviors" inspector.
    These do not show up in the list of Input Events the plugin gets from the simulator itself, but can be manually entered in the "Set Named Variable" or "Execute Calculator Code" actions.
  • Validation of Simulator Variable ('A' type) names will now accept the new "VARIABLE NAME:'ComponentName'_n" syntax in MSFS 24.
  • New Simulator Variables and Events are available in action selection lists when connected to FS 24.

'FSX' Edition

  • Removed all actions/connectors which use Key Events that don't exist in FS-X.
  • Events and Sim Vars shown in action selection lists will now be limited only to those that FS-X is known to support.
  • The "Set a Named Variable" and "Request a Named Variable" actions have been simplified to exclude the irrelevant variable type selector.

Other Improvements

  • Updated database of Simulator Variables and Event IDs imported from MSFS 2020 & 2024 SDK Web site documentation as of Nov. 25 '24. The groupings now reflect published FS '24 documentation (a few events/vars were moved around).
    Also added 91 Key Events that aren't documented anywhere except in the game itself (these are sorted into the "Miscellaneous - Undocumented" category).
  • Generated documentation layout of plugin actions, connectors, and events has been updated for clarity; Separate MSFS and FSX plugin edition versions are now generated, and the documentation has been moved to the Wiki.
  • Documentation of plugin's settings has been improved for the new Touch Portal v4.3 layout. Actual (dotted) version number is now shown at the top as well.
  • HubHop data update has been streamlined a bit, and now fixes any mis-categorized "potentiometer" type events (that expect input values) in the downloaded data, where some events that did not expect input were marked as if they do, and vice versa. The included database of events is current as of Nov. 30th.
  • Improved error checking on some submitted action data to provide more useful diagnostics in the plugin logs in case of failure.
  • Some minor improvements on shutdown when dealing with unexpected simulator/SimConnect disconnections and Touch Portal exceptions.
  • Updated to use .NET 8 runtime for MSFS edition (up from v7). Most external dependencies also got an update. (All required components are included in the distribution as before.)
  • MSFS edition built with latest MSFS 2020 SDK/SimConnect v0.24.3.
  • Updated WASimCommander components from v1.2.0 to v1.3.1 for features and fixes.

Full Commit Log


Make sure to also update the WASimModule component if you're using it!


Check the README for installation instructions and other documentation.

The MSFS-TouchPortal-Plugin and FSX-TouchPortal-Plugin are separate plugins which can co-exist in Touch Portal. The "FSX" edition supports FSX Deluxe SP2 or newer simulators, including MSFS 2020, but the "MSFS" version is recommended for that instead. See the README for details.

v1.5.0 - Input Events and TPv4 Updates

07 Nov 20:35
b9a59cb
Compare
Choose a tag to compare

Changes since v1.4.3.3

Additions

  • Added experimental ability to set and read simulator "Input Events" values, which is a new feature in MSFS SU13. This provides access to aircraft-specific controls which may not be available otherwise.
    These events can be seen in MSFS "developer mode" using the "Behaviors" tool window.
    They are also referred-to as "B" type variables, and custom variable requests can be set up for them like for other variable types.
    • IMPORTANT NOTES
      • The SU13 implementation of this is BUGGY!!
        • First off, it doesn't work at all unless developer mode is enabled in MSFS.
        • The simulator will crash if there are any Input Event values being requested/read while switching airplane models. So either don't use that feature for now or make sure to manually
          remove any requested 'B' type variables before changing models (including in he main menu/World Map). See new feature below for removing all requests of particular variable type.
      • Both issues are supposedly fixed in SU14 (currently in beta), but I have not tested it personally.
      • Only the currently loaded model's Input Events exist in the simulator at any given time.
        Plugin errors are logged when trying to set or request an input event ('B' var) value which doesn't exist in the current model.
      • There may be other changes in SU14 which will modify or break how the whole system works... the current system is rather wonky. So, no guarantees (as usual).
    • Added "Set a Selected Airplane Input Event Value" action with a list of the current model's Input Events.
    • Added 'B' variable type choice to "Set a Named Variable" and "Request a Named Variable" actions.
    • Added ""Update Airplane Input Events List" and "Re-Submit Input Event Value Requests" choices in the "Connect & Update" action.
  • Added ability in the "Clear Variable Definitions" action to remove variable requests by the file they were loaded from and by the type of variable.

Changes

  • Setting ('L') type variables with a specific Unit type is now (again) handled by WASimModule (when available) for greater efficiency.
    • 'L' vars are created on the simulator if they don't already exist, using the specified Unit type (if any), which mimics SimConnect behavior.
    • The "Create Local Variable" option has been removed from the "Set a Named Variable" action.
  • For Touch Portal v4:
    • The plugin will now show up in the "Games" category instead of "Misc."
    • Descriptions of each setting are now available in TP's "Plug-in Settings" dialog by hovering over the question mark icons.
  • Updated to use .NET 7 runtime environment (.NET 6 for FSX version) and dependencies (up from .NET 5). All required components are included in the distribution as before.

Fixes

  • Fixed "Plug-in performance issue detected" Touch Portal v4 warning message. (#63)
  • Fixed that very long lists (thousands) of currently loaded Airplane Local variables were sometimes incomplete in the corresponding "Set" and "Request" actions.
  • Fixed a possible plugin crash when list of Local variables was being updated multiple times in quick succession. Also prevents the list from being updated unnecessarily.
  • Fixed possible simulator hang when exiting to desktop while plugin is still connected and using WASimModule (sim had to be terminated from task manager). This seems to have been new behavior since SU13.

Related

  • The user-interface part of my WASimCommander project, WASimUI, now supports importing and exporting custom variable requests in the plugin's format. That includes a new interface for editing plugin-specific information like category, state ID, name, default value, and formatting. It can be downloaded at that project's Releases page.
    I've updated the Using Custom States and Simulator Variables wiki page with some more details.

Make sure to also update the WASimModule component if you're using it!


Check the README for installation instructions and other documentation.

The MSFS-TouchPortal-Plugin and FSX-TouchPortal-Plugin are separate plugins which can co-exist in Touch Portal. The "FSX" edition supports FSX Deluxe SP2 or newer simulators, including MSFS 2020, but the "MSFS" version is recommended for that instead. See the README for details.

v1.4.3.3 - Fixes & New FSX Edition

03 Sep 19:54
ac2d205
Compare
Choose a tag to compare

Changes since v1.4.2:

Version number: 1040303

  • Fixed requests for local ('L') variables with 'Millisecond' type update period not working when WASM integration is used.
  • Fixed simulator event actions not working after a re-connection to the sim when WASM integration is unavailable (eg. FSX edition).
  • Fixed "Avionics Master Switch" action missing choices list of what to actually do.
  • Fixed that "Starters Set" action was not available in On Hold tab.
  • Added better handling of Sim Var request errors based on SimConnect responses -- invalid requests should now be automatically removed or suspended (with details logged).
  • Added ability to specify a required simulator version for particular Sim Var request definitions (eg. only MSFS/v11).
  • Initial release of "FSX" edition of the plugin for older sims (FSX Deluxe SP2 or newer).

Check the README for installation instructions and other documentation.

The MSFS-TouchPortal-Plugin and FSX-TouchPortal-Plugin are separate plugins which can co-exist in Touch Portal. The "FSX" edition supports FSX Deluxe SP2 or newer simulators, including MSFS 2020, but the "MSFS" version is recommended for that instead. See the README for details.

There are no changes in the optional WASimModule component. The version listed here under Assets is the same as from the plugin's v1.3.1 release. No need to update it if already installed.

v1.4.2 - Fixes for L Var Outliers and Minor Updates

05 Aug 10:43
0c62dd5
Compare
Choose a tag to compare

Changes since v1.4.1:

Version number: 1040200

  • Fixes variable name validation issue with some Local ("L") type simulator variables which contained : in their names (fixes #57).
  • Re-introduce ability to specify Unit types when setting or requesting Local type variables. Note that most L vars will ignore/not use the Unit type -- this seems only to be relevant for a very few 3rd-party models/vars (closes #58).
  • Improve logging of variable request actions to the TP "Log Messages" State (eg. the States Editor page shows more verbose details including validation errors).
  • Slightly optimized the Touch Portal client communication library for quicker message output.
  • Updated database of imported Simulator Variables and Event IDs from MSFS SDK online documentation as of August 5th.
  • Updated SimConnect libraries to latest versions (SDK v0.21.1.0).

Check the README for installation instructions and other documentation.

There are no changes in the optional WASimModule component. The version listed here under Assets is the same as from the plugin's v1.3.1 release. No need to update it if already installed.

v1.4.1 - Native L Vars and improved Pause Events

15 Apr 07:22
5b8c4ad
Compare
Choose a tag to compare

Changes since v1.3.2

Version number: 1040100

  • Added ability to request and set Local ("L") type simulator variables without WASM add-on (now a native SimConnect feature since SU12).
    • Note: SimConnect automatically creates L vars if they are requested before they actually exist in the sim. "Missing" L vars are no longer reported as warnings.
      This could lead to some confusion, for example if a variable name is misspelled or never used by any model in the first place.
  • Added some basic validation of variable request parameters when loading from .INI configuration files. Invalid requests are rejected. Validation errors and warnings are reported in the plugin's log.
  • The "Paused", "Unpaused" and "Pause Toggled" Touch Portal Events now work correctly (or at least more logically/consistently) due to a fix in SU12.
    • Note: the "Pause Toggled" event triggers on any/every "pause mode" change, even if the sim is not actually "unpaused" completely.
      The name has been kept for backwards compatibility. See the new event descriptions below for more details on pause modes.
    • The "Paused" event is also triggered when any pause mode is activated, even if the simulator already had another pause mode active.
    • "Unpaused" at least behaves as expected and only triggers when all pause modes have been deactivated.
  • Prevent a rare condition when connecting to MSFS where the main SimConnect connection gets established properly but the WASM client's connection fails unexpectedly.
  • Updated database of Simulator Variables and Event IDs imported from MSFS SDK Web site documentation as of April 12th.
  • Updated SimConnect libraries to latest versions (SDK v0.21.0.0).

Added or Updated Actions/Connectors

MSFS - Simulator System category:

  • Added "Pause - Full" - Action, pauses the simulation completely, including any time passing in the simulated world. Same as "Dev Mode Pause" (in developer toolbar "Options" menu).
  • Added "Pause - Simulator" - Action, pauses some aspects of the simulation, but not time. Same as "Menu (ESC) Pause" but w/out the actual menu.
  • Added "Simulation Rate Set" - Action and connector.
  • Renamed "Simulation Rate" to "Simulation Rate Adjust" and added "Select (for +/- adjustment)" option.
  • Renamed "Change Selected Value (+/-)" to "Adjust a Selected Value (+/-)" and added a description/help text.

Added Events

Added to MSFS - Simulator System -> Simulator System Event choices:

  • "Full Pause" - Indicates a complete pause including any time passing. Triggered when a flight is loading, by "Dev Mode Pause" (in developer toolbar "Options"),
    the new "Pause - Full" plugin action, or a SimConnect "PAUSE_SET" Event with a value of 1. (Possibly other ways as well?)
  • "Active Pause" - Simulator has been paused using "active pause" key binding or toolbar button.
  • "Simulator Pause" - The simulator has been paused with the "ESC" key to the menu, or with "Pause - Simulator" action, or "PAUSE_ON" SimConnect Event.
  • "Full Pause (FSX Legacy)" - Not used in FS2020

Added State

MSFS - Simulator System category:

  • "Simulator Pause State Flag(s) (OFF|FULL|ACTIVE|SIM)" - Lists any "pause states" which are currently active, separated by commas, or "OFF" if the simulation is not paused in any way.
    Eg. if "active pause" is enabled and the sim is also paused with the "ESC" key, the value of this state would be "ACTIVE,SIM". See descriptions of new Events for more details on pause modes.

Patch for v1.4.0

  • v1.4.1 fixes WASM Client connection issue found in v1.4.0 release. Thanks to Glenn#6307 on Discord for the quick report!

Check the README for installation instructions and other documentation.

There are no changes in the optional WASimModule component. The version listed here under Assets is the same as from the plugin's v1.3.1 release. No need to update it if already installed.

v1.3.2 - Patch for "Clear Custom States" and "Save Custom States" actions

09 Mar 22:11
053f64c
Compare
Choose a tag to compare

Changes since 1.3.1

Version number: 1030200

This is a minor patch for an issue found in v1.3.0 and v1.3.1 releases.

  • Fixed "Clear Custom States" and "Save Custom States to File" actions not properly selecting variable requests which were loaded from custom configuration file(s). The default states from the included States.ini configuration file were being deleted/saved instead.
    Thanks to Glenn#6307 @ Discord for reporting!

There are no changes in WASimModule component. If updating from a plugin version prior to v1.3.1, be sure to download WASimModule-v1.1.2.0.zip from the v1.3.1 release.

Please be sure to read the v1.3.0 release notes if upgrading from v1.2 or earlier.

v1.3.1 - Patch for missing local variables list

05 Feb 20:52
0b46455
Compare
Choose a tag to compare

Changes since 1.3.0

Version number: 1030100

This is a minor patch for two known issues in v1.3.0 release.
Please be sure to read the v1.3.0 release notes if upgrading from v1.2 or earlier.

Plugin

  • Fixed updating the list of local variables for "Request an Airplane Local Variable" action (#49).

WASimModule

  • Fixed mapping of SimConnect Event ID alias "AUTORUDDER_TOGGLE" to "AUTOCOORD_TOGGLE" event (although due to MSFS bug as of SU11, this still doesn't actually work as expected).

v1.3.0 - Integrated Reference of MSFS Events and Sim Vars

31 Jan 10:48
77df401
Compare
Choose a tag to compare

Changes since 1.2.0

Version number: 1030000

  • Added database of Events, SimVars, and Unit types imported ("scraped") from MSFS SDK Web site documentation (part of my separate "MSFS Tools" project).
  • Event and SimVar actions which allowed selection from lists now refer to imported MSFS documentation. These now show partial descriptions and Event parameter meanings (when available).
  • Any SimVar marked settable in MSFS docs is now available in (the updated) "Set a Selected Simulator Variable" action/connector with a selectable Unit type.
    • The SimVar no longer has to be "requested" first. This works with or without WASimModule integration (SimConnect only).
      • In the latter case, SimConnect only, any action/connector which sets the same SimVar (at the same index, if any) must use the same Unit type.
    • Connector type now has "feedback" as an option; when enabled, the corresponding SimVar is automatically requested from the simulator if it has not been already.
  • When selecting imported SimVars in actions (for Set or Request), only compatible Unit types are now shown (eg. all distance type measures for an "altitude" value).
  • Fixed that selecting "Camera & Views" category didn't properly show the available variable requests in some actions (#47).
  • Removed the "Can Set" SimVar request property (CanSet is ignored if found in existing .INI config files); Also removes the corresponding indicator column from generated documentation.
  • Removed the "Release AI" option on all "set variable" type actions (doesn't seem to have any effect on user aircraft; please let me know if you did, in fact, use that option).
  • Plugin now only sends "fatal" level messages to Touch Portal's log file, all others go only to plugin's own log (eliminates duplicate logging).
  • Updated WASimModule to v1.1.1 with optimized build for MSFS SU11+ and updated Key Event data (release notes).
  • Updated SimConnect libraries to latest versions (SDK v0.20.5.0).

Added or Updated Actions/Connectors

In the list, + means added and ~ means updated. A few of these actions were renamed as detailed in the next section.

  • ~ "AP Switches" - added Panel Switch On/Off/Toggle for: Speed Hold, Altitude Hold, Heading Hold, Mach Hold, VS (on/off).
  • + "N1 Reference Value Adjust/Hold" and "Set" AP actions.
  • + "ADF Adjust" and "Set" actions to control ADF1/2 radios.
  • + "Transponder Adjust" and "Set" actions to control XPNDR code and IDENT state.
  • ~ "Radio Interaction" - COM1-3 added "Copilot Transmit Select" and "Receive De-select"; Fixed that "Receive Select" option was not a toggle.
  • ~ "Radio Values Set" - Added "Receive Select (0/1)" for COM1-3.
  • ~ "Avionics Master Switch" - Added "Off" and "On" options for individual Master 1 and 2 switches.
  • + "Alternator Control" to set On/Off/Toggle any indexed alternator.
  • ~ "Landing Lights Switch/Direction" - added circuit index value field.
  • ~ "Light Switch Control" - renamed and added circuit index value field and "Circuit Toggle" option.
  • + "External Power" On/Off/Toggle with optional index value.
  • + "Engine Master Toggle" and "Set" actions for engines All/1/2/3/4.
  • ~ "Starters Toggle" - added Master Switch option.
  • + "Starters Set" action with "Set" and "Set Held" options.
  • + "Afterburner Toggle" for engines All/1/2/3/4.
  • + "Engine Condition Lever Adjust" and "Set" (by Position/Axis) actions for engines All/1/2/3/4.
  • + "Refuel & Repair" - Request Fuel (parked) and Repair & Refuel (depends on realism settings) actions.
  • ~ "Fuel Selectors" - added Crossfeed and Isolate actions for each selector.
  • + "Fuel System Component" action for controlling Pumps, Triggers, and Valves indexed fuel systems.
  • ~ "Cross Feed Switch" - added Left to Right and Right to Left options.
  • + "Electric Fuel Pump Set" On/Off/Auto for pumps 1-4.
  • ~ "Fuel Dump / Tank Drop" - renamed and added "Release Drop Tank" (All/1/2) options.

Renamed or Replaced Actions/Connectors

  • "Set Simulator Variable (SimVar)" --> "Set a Selected Simulator Variable"
  • "Set Airplane Local Variable" --> "Set a Selected Airplane Local Variable"
  • "Set Named Variable Value" --> "Set a Named Variable"
  • "Request a Custom Simulator Variable" --> "Request a Named Variable"
  • "Request a Variable From List" --> split to:
    • "Request a Selected Simulator Variable"
    • "Request an Airplane Local Variable"
  • "Alternator Switches" --> "Alternator Toggle"
  • "Light Switches" --> "Light Switch Control"
  • "Starters" --> "Starters Toggle"
  • "Electric Fuel Pump" --> "Electric Fuel Pump Toggle"
  • "Fuel Dump - Toggle" --> "Fuel Dump / Tank Drop"
  • [Fuel] "Primers" action moved to Engine category.

DEPRECATED Actions/Connectors

Existing instances will still work but cannot be edited. Please update to new versions and report any regression issues with existing instances.

  • "Set Simulator Variable (SimVar)" (use "Set a Selected Simulator Variable" instead).
  • "Request a Custom Simulator Variable" (use "Request a Named Variable" instead).
  • "Request a Variable From List" (use "Request a Selected Simulator Variable" or "Request an Airplane Local Variable" instead).
  • "Fuel Pump" (use "Electric Fuel Pump Set" and "Toggle" actions).

Known Issue in this version:

  • Local variables list not loaded properly in "Request an Airplane Local Variable" action. See #49 for workaround or patched plugin download.

Check the README for installation instructions and other documentation.

Please be sure to update WASimModule as well if you're using it.

v1.2.0 - Support for Multi-Parameter Key Events in SU10+

02 Nov 06:19
cf85d8f
Compare
Choose a tag to compare

Changes since v1.1

  • The "Activate a Named Simulator Event" and "Activate a Selected Simulator Event" actions and connectors can now transmit multiple values
    for Simulator Key Events which require multiple parameters. This makes use of new features in SU10 version of MSFS SimConnect SDK and the updated custom WASimModule.
  • Renamed plugin action/state categories:
    • "Communication" to "Radio & Navigation"
    • "System" to "Simulator System"
  • All the custom variable request editing actions moved to new "Custom States & Variables" category in TP's' sidebar.

Check the README for installation instructions and other documentation.

Please be sure to update WASimModule as well if you're using it.

v1.1 Release

11 Sep 21:32
b36e9d5
Compare
Choose a tag to compare

Changes since v1.1.0.5-rc2

  • Fixed possible plugin startup issue when Windows user name has space(s) in it (adds quotes around startup command).
  • Added new "Miscellaneous" category for sorting custom states, by user request.

Check the README for installation instructions and other documentation.

Upgrade note: There are no changes in the WASimModule component since plugin release v1.0. There is no need to download/update it if you already have it installed.