Change Log (up to end 2022) - HeliosVirtualCockpit/Helios GitHub Wiki
Release 1.6.5700.0
User Notes
Positively the last Helios update of 2022! The Helios development team wish the entire community a happy and safe 2023. This release hopefully completes the initial work on the Black Shark 3 module including the viewport patches provided by Lord Mustang. There are also changes / bug fixes for the F/A-18C hornet including a new improved standby ADI.
Note for M-2000C
Please read these notes in conjunction with the release notes from 1.6.5500 - 1.6.5600.0
Developer Notes
Black Shark 3 Ka-50 III
- Viewport Patches and templates added - Lord-Mustang
- Blackshark3 interface changes
- Ka-50_3 Clickable adjustments
F/A-18C
- Fix for the launch bar and field bypass toggles.
- Fix to the Hornet interface to make the UFC Comms rotaries work in both directions
- New Standby Attitude Indicator and interface support for the hornet #681
- Correct Switch positions for FLIR, LST, LTD #680
- Hornet interface change for HMD and TGP items being implemented by ED #680
Falcon BMS
- Falcon Interface - Revised Fuel Gauge Needle Images #683 @linknetx
Profile Editor, Control Center and Controls
- The "Buttons" and "Push Button Indicators" Toolbox categories have been merged into a single "Push Buttons" category
- #691 Fix to the Timer Panel which was broken by 1.6.5501.0 so that it would only hide once.
- Addition of an experimental External Indicator Control designed to work with external programs to light LED indicators on devices such as the Thrustmaster Warthog throttle. A YouTube video is planned to explain how to use this.
- Process Control Interface has a new Action to Launch an application with the window hidden. @linknetx
- Profile Editor - Property Editor control name validation message revised and dash character allowed (#689) @linknetx
- Add Rotary Switch Control Increment/Decrement Position Actions #688 @linknetx
- Reduce font size of Control Center Profile display so we get a few more characters on the screen without changing the overall look and feel.
- Feature to address #678 which is the "Advanced Operation Requested" dialogue being displayed for every unchecked patch. This commit displays the warning message only once for each batch of unchecks. The warning will appear again on the first uncheck following a patch getting checked.
- Changes to DirectX error handling and logging to help diagnose several problems where Profile Editor crashed while interrogating certain USB devices. #485 #491 #659
- Additional Info message to provide data about successful DirectX function additions.
- Diagnostics and protection for AddFunction method of the DirectX interface. This is to assist with #491
- Extra diagnostics and protection for the situation in #485. This commit is specific to Axis, and in particular Sliders.
Release 1.6.5600.0
User Notes
Please read this in conjunction with the recent release notes for 1.6.5500 and 1.6.5501. This release contains an interface for the Ka-50 3 module from ED. Before getting too excited, this Helios interface is identical to the Black Shark 2 interface and does not attempt to exploit any of the improvements in the latest module for the Black Shark.
Developer Notes
Black Shark 3
New interface for the Black Shark 3 module recently released by ED. This interface is untested, but it is identical to the interface for the existing Black Shark module. No issues will be accepted for functionality which has not been exploited in the interface. There are also no patches for this module.
*** Current Status - The Black Shark 3 module is unavailable to Helios Developers for further testing so improvements in the short term are unlikely.
M-2000C
- Fix for Arg ID 486 "RADAR", "Power Selector" to correctly round the switch positions for the M-2000C interface.
- Change to the M-2000C Interface for the Rad Alt Min Alt knob to be a Rotary Encoder.
General
- Fix for #675 to resolve default text on RockerSwitch reappearing after profile load even though the text had previously been removed.
Full Changelog: https://github.com/HeliosVirtualCockpit/Helios/compare/1.6.5501.0...1.6.5600.0
Release 1.6.5501.0
Bug Fixes
- Several fixes to resolve duplicate binding error messages when
RESET MONITORS
command is issued. Described in #490
- Changes to the self binding M-2000C gauges (mainly drums) which were causing Reset Monitor issues
- Address two problems with composite visuals creating duplicate bindings during reset monitors and paste operations as described in #490.
M-2000C Changes
- Radio Repeater no longer auto-binding and is now fixed 38121cb #671
- Positioning of the text in the PCA after resizing was not always accurately positioned 9f99e0e #671
- Master Caution Light images for lit inside the DLL needed to be cropped to avoid incorrect scaling. 38121cb #671
- arg 204 HUD Altimeter Selector Switch was inverted 0ddc843 #671
- arg 630 "ECS Panel", "ECS Main Mode Switch" was reversed 8096f52 #671
- arg 476 "Engine Start Panel", "Engine Emergency Control Switch" was reversed 8096f52 #671
- arg 330 "Fly By Wire", "FBW Spin Mode Switch" was reversed 8096f52 #671
- arg 807 "Stick", "Nose Wheel Steering / IFF Interrogation Button" has been reversed and changed to three-way toggle 8096f52 #671
- arg 700 "Sound Panel", "AMPLIS Selector Knob" probably should be reversed, but better as-is IMHO so just changed the label positions 8096f52 #671
- Fix for a scaling problem in the MK2CDumGauge which caused the drum to get gradually out of position as scale up and down happened.
- Address problem with release where several controls were loading xaml from documents/helios and understandably throwing a security exception. Moving the xaml back to the dll in a new directory so that the asset substituion will not affect it,
- M-2000C PPA TextualDisplay background fixed by giving it an image without a border
- Altimeter added to the Helios M-2000C interface
- Altimeter gauge and images added
- Updated the M-2000C background image for 16:9. All A-10C UFC Rockers changed to switches in the interface, and JSON interface loading has been enabled.
AV-8B Changes
- AV-8B Advisory Panel font size increased.
A-10C / A-10C II Changes
- Fix for A-10C Pressure Adjustment Knob on the Altimeter not working.
- All A-10C UFC Rockers changed to switches in the interface, and JSON interface loading has been enabled.
Release 1.6.5500.0
User Notes
This release has many changes most notably to the M-2000C and BMS.
The M-2000C elements in Helios Profile Editor will not appear in the profile editor toolbox unless you have installed the M-2000C.V1.0.1.helios16.asset.package from the Assets
section of the release. The intention is to arrest the increase in toolbox items when the user has no interest in a particular aircraft.
The Mirage 2000C interface and controls have undergone significant changes in this release and unfortunately this has required changes which are not backwardly compatible. If this release of Helios breaks your existing profile, then you can download the JSON interface for the M-2000C interface before the changes were made from the asset section of this release. The interface file is Helios M-2000C JSON interface at Level 1.6.5200.0.zip. This is intended to be a temporary solution until profiles can be updated. This release contains several new control for panels and gauges and these are auto-binding which means that if the M-2000C interface has been added to the profile before the gauge is added to the workspace, then the gauge / panel will automatically bind, and no further work should be necessary. To identify parts of your existing profile which need to be rebound, please refer to the Profile Editor log where there should be messages relating to controls which could not be bound. The majority of the changes to update this interface have been made, however the interface has not yet been fully tested so there are likely to be some changes (hopefully minor) needed in the future.
There is a Function Test Profile available to enable users to play with the new panels.
Huge appreciation goes to DEBUG#3624 on discord for materially supporting this work.
The situation with the Alpha Stream Deck support has not changed in that a developer for this capability is still sought, however @Todd1215 has produced a video which might assist those interested in trying out this capability.
What's Changed
DCS M-2000C Changes
Thanks to NoNoBear and Sobe for providing test feedback.
- Building on changes delivered in 1.6.5400.2, the M-2000C interface gets further improvements and fixes by @BlueFinBima in #663
- Widescale tidy up of the M-2000C interface with most switches getting some change or other. As yet, the switches have not been fully tested so I'm expecting some to be reveresed.
- Add new 16 segment font for the M-2000C PCA
- Major adjustments to the UHF and VHF radios
- Interface Canopy controls addressed
- Interface NVG commands added
- PCN Indicator fix
- VOR, ILS and TACAN gauges altered along with several interface changes
- VTB for M-2000C autobinding fixed and brightness controls added
- Interface CreateSwitchPositions changed to ensure correct numbers of digits after decimal point
- Several changes relating to RADAR and the engine panel
- Additional Images for UHF Radio and Landing Gear Panel
- Flight control surface indicators added to the Landing Gear panel
- Landing Gear Handle indicator now works
- Added self bindings to the drums for the UHF Radio, Fuel Burn / Bingo display, VTB, Low Altitude panel, IFF/RADAR Panel
- HSI gauge needle visual improvement
BMS Changes
- Falcon Interface - MapControls revised map selection. by @linknetx in https://github.com/HeliosVirtualCockpit/Helios/pull/646
- Falcon Interface - Auto Set Fan L/R on Fuel Gauge Needles by @linknetx in https://github.com/HeliosVirtualCockpit/Helios/pull/647
- Falcon Interface - Auto Set RPM Gauge Type. by @linknetx in https://github.com/HeliosVirtualCockpit/Helios/pull/649
- Falcon Interface - Added binding for IFF/AUX COMM panel in use on current aircraft. by @linknetx in https://github.com/HeliosVirtualCockpit/Helios/pull/650
DCS F/A-18C Hornet Changes
- #644 F/A-18C parking brake interface malfunction by @BlueFinBima #666
- Fix for #628 which is an error with the Hornet interface handling for the canopy.
DCS A-10C and A-10C II Changes
- Fix for Canopy switch problem with the A-10C and A-10C II by @BlueFinBima in #641
DCS AJS37 Viggen Changes
- Add in the AJS37 TV patch and template definition by @BlueFinBima in https://github.com/HeliosVirtualCockpit/Helios/pull/668
DCS AH-64D Apache Changes
- Plus character added to font A-10C_ALQ_213.ttf for use in the Apache Keyboard Unit by @BlueFinBima in #653
DCS AV-8B Harrier Changes
- Fix for AV-8B MFD Rocker problem #625
DCS Ka-50 Change
- Missing Patch for Ka-50 restored #630
General Fixes
- Fix for #637 Indicator fontsize is incorrectly scaled on profile load since 1.6.5400.2 by @BlueFinBima in #643 #638
- Fix for a scaling problem in the MK2CDumGauge which caused the drum to get gradually out of position as scale up and down happened
- Corrected sizing and clippling bug in CustomerDrum
- Fixed Endless Potentiometer bug where the values would keep going up (and down) past the limit values
- Fix to stop the potentiomenter knob value getting too small and dropping into exponential notation for the output value
Changes to Controls
- Added Helios Information Interface by @linknetx in #662 #661 #660 #658 #657 #656
- Helios Version as a string value
- Add Global Path Variables to Lua Interpreter and Environmental Path Variables to Process Control by @linknetx in #654
- Add Global Path Variables to each Binding Lua Interpreter Instance
- Add HeliosPath and BMSFalconPath global variables to each Binding Lua Interpreter Instance.
- Add Environmental Path Variables to the Process Control Interface
- Add
%HeliosPath%
and%BMSFalconPath%
environmental variables to the process control interface.
- Added
AllowInteraction
behaviour for the Indicator control - Added Trigger to the
Timer Panel
so that the timer expiring can trigger further actions - Change to allow Visuals to turn on even if their controls are hidden (when in DesignMode).
- Related to #642 and #637. Update the templates for Annunciatior, Indicator Square Green Light and Push Indicator - square to set scale mode of height.
- New Global option to cause controls within a composite gauge / panel to appear in the saved profile as a comment block. This is to allow profile developers such as Capt Zeen to have a relatively cheaply way to recreate / re-skin existing composite visual controls.
- Certain gauges and or panels now have the ability to have the location of their images over-ridden in the profile
- Text on the control
Rocker with Text
is now scaled
Release 1.6.5400.2
User Notes
In this Release
General Changes
- Text Scaling options added to the Indicator ,IndicatorPushbutton, DualIndicatorPushbutton, and TextDecoration / Label controls
- Timer Panel - Timer Panel control now has actions to set the default interval, and another for a temporary interval to be used until the panel hides.
- A new Bar Gauge control has been added which allows for segmented displays such as LEDs
UH-60L Blackhawk Addition
- Early (minimally tested) Interface for the UH-60L Blackhawk Mod
- Helios gauges for Center Display Unit, PDU, RadAlt, IAS, Chronometer and a few more with some being autobinding.
Notes
- There is currently no Blackhawk Helios profile which uses this interface or associated components
- The interface is likely to have a few bugs, however these should be able to be fixed in the supplied JSON file. **No G|itHub Issues Will be Accepted for Problems with this Interface ** however if you make corrections, please submit a PR to the Helios Interfaces Project.
AV-8B Changes
- Height scaling for text used by the AV-8B Indicator Panel
- MPCDs size change to make the aperture (and hence the viewport) have a 1:1 aspect
Mirage 2000C Changes
- TACAN drum changes so that it has leading spaces instead of leading zeros
- Textual display options added to panels for PCN, PPA, PCA, Fuel Burn, Radio Repeater, Radio. This allows several viewports to be discarded.
- Added Fuel Burn / Bingo Panel
- Added Radio Repeater Panel
- Updated M2000C interface functions with entries for the current module clickables
- Changed the M2000C Helios Driver export Lua file to support textual exports (there will be a warning to update the interface as a result)
- Enabled JSON interface loading for this module
- Interface change to properly implement the thumb wheel switches for the thousands and hundreds thumbwheel switches 360 and 361.
A-10C Changes
- fix to mode setting of the TACAN #356
AJS-37 Changes
- Patches for RADAR, Destination, and Data added #412
- Viewport templates added to Profile Editor
A-4E-C Changes
- RADAR viewport template added to "Simulator Viewports" section of the Profile Editor Toolbox
- Interface updated with many fixes (Soyouz2000)
A-29B Changes
- MFCDs, BFI, and UFCP viewport templates added to "Simulator Viewports" section of the Profile Editor Toolbox
- Interface updated with many fixes (Soyouz2000)
Fonts
Three new fonts have been added to Helios
- LED Counter 7 from StyleSeven
- DSEG7Classic from Keshikan
- DSEG14Classic from Keshikan
Thanks to Soyouz2000's first-time contribution to improving the interfaces for the community editions of the Skyhawk and Tucano.
Release 1.6.5308.1
Hotfix to address an issue with 1.6.5307.9
Change to the M-2000C viewport patches to correctly patch the VTB and VCN/RWR as a result of changes to the DCS module.
Viewport patches updated to resolve issue #614 which was the inability to install the following patches
- Mods\aircraft\M-2000C\Cockpit\PCN\PCN_BR_init.lua
- Mods\aircraft\M-2000C\Cockpit\PCN\PCN_UR_init.lua
- Mods\aircraft\M-2000C\Cockpit\VTB\VTB_init.lua
- Mods\aircraft\M-2000C\Cockpit\VTH\HUD_init.lua
New viewport patch to fix clipping by the collimator borders on the Ka-50's HUD#615 (Lord-Mustang).
Previous patches to the files above will need to be fully removed as they may not be fully corrected by a Helios Revert Patches operation. A Slow Repair (see How to repair/cleanup or update DCS World) will reset the affected files. The new patches are based on DCS World 2.7.17.29140.
Release 1.6.5307.9
Changes in the 1.6.5307.9 HotFix which is based on 1.6.5306.4.
- Reset all Lua Variables on a Profile Reset (#606) (note this is a change to the default action, however a Helios option exists to restore original behaviour).
- Falcon Interface - Add Ownship Orientation to Bullseye Binding (#607)
- Restoration of two patches for the Ka50 ABRIS and SHKVAL which have been missing for the past few releases of Helios.
Ka-50\Cockpit\Scripts\ABRIS\ABRIS_init.lua.gpatch Ka-50\Cockpit\Scripts\ABRIS\ABRIS_init.lua.grevert Ka-50\Cockpit\Scripts\SHKVAL\SHKVAL_init.lua.gpatch Ka-50\Cockpit\Scripts\SHKVAL\SHKVAL_init.lua.grevert
- Fix for a problem with the F/A-18C UFC scratchpad when entering precision coordinates. (#605) (note: this fix will require rebinding the UFC, and this can be achieved by deleting the UFC from the current profile and re-adding it. Capt Zeen's F/A-18C profile does not use the UFC supplied by Helios and is therefore unaffected by the problem and the fix)
- Fix for the F/A-18C UFC not displaying the number "12" in the comms channel displays. (#605)
- Addition of a separate F/A-18C UFC Scratchpad control and ODU unit.
- Updated the Hornet UFC font
FA-18C_Hornet_Up_Front_Controller.ttf
to version 1.6. changes to F/A-18C interface are generally backwardly compatible, however to benefit from the precision scratchpad, the UFC will need to be rebound - Fixes for two AV-8B Fuel Quantity panel problems AV-8B (#603 and #604) (note the Fuel Panel will need to be rebound as a result of this fix and this can be achieved by deleting the fuel panel from the existing profile and re-adding it. The many fixes made to the AV-8B interface will require several AV-8B gauges to be rebound. The BlueFinBima AV-8B profile has been adjusted to benefit from the fixes in this release of Helios Latest AV-8B Profile
- Updated AV-8B interface to resolve several issues with multi-position switches not operating correctly.
- AV-8B Interface change to Correct V/UHF Operational Mode switch
- Resolved issue with the AV-8B Radio channel selector encoder not working correctly.
- Resolved issue with the AV-8B Radio volume control.
- Resolved problem with the AV-8B RWR volume control not working.
- Some M2000C Patches were missed for PCN,RWR,VTB & VCM since 2.7.15.26783. (#600)
- Fix for Falcon textures becoming scrambled over a short period of time (#598 )
- Cosmetic Apache changes for knobs on the CMWS, EUFDs, MFDs and TEDAC including a fix for TEDAC mode switch being inverted (#596)
- Fix so that Falcon Textures will now correctly display when user switches aircraft types without stopping the profile (#594)
- Patches created at 2.7.16.28111 to arrest the propagation of problems with duplicate lines appearing in several patches installed by earlier releases of Helios. Previous patches to the files below will need to be fully removed as they are unlikely to be fully corrected by a Helios Revert Patches operation. A Slow Repair (see How to repair/cleanup or update DCS World) will reset the affected files. (#579)
Manually removing the errant lines is not advised because it will not necessarily result in a file which can have future patches applied to it.
F14/Cockpit/Scripts/HeadUpDisplay/Indicator/init.lua
F14/Cockpit/Scripts/RWR/Indicator/Pilot/init.lua
F14/Cockpit/Scripts/RWR/Indicator/RIO/init.lua
FA-18C/Cockpit/Scripts/Multipurpose_Display_Group/HUD_AVQ32/indicator/AVQ32_init.lua
FA-18C/Cockpit/Scripts/TEWS/indicator/RWR_ALR67_init.lua
User Notes
This release contains auto-binding gauges & an interface to support DCS AH-64D Apache; an alpha version of a plugin for OpenMacroPad/Stream Deck integration with Helios; further BMS Falcon improvements; new Helios controls; some bug fixes; and command line support for the KeyPressReceiver.
What's New / Changed
- HeliosMacroBoard integration as a plugin (#562) - Alpha Version, and needs a developer
Co-authored-by: Byron Roosa [email protected]
- Initial prototype for OpenMacroPad/Stream Deck support
- Current Streamdeck sizes supported are (standard 3x5, XL 4x8)
- A Virtual MacroBoard is also included as a separate Window process that can be put on an additional screen.
- Supports one image per button and two output bindings per button (press, release)
- ported HeliosMacroBoard to plugin
- published as zip for alpha testing
This functionality is in alpha state. It runs and can support simple scenarios of using a Stream Deck in a Helios profile. A C# developer will be needed to advance this project any further, since nobody is currently working on it. Support is available from @derammo for anyone who wants to take this on.
-
Profile Editor
- fixed binding definitions for macro buttons in ProfileEditor this allows the default binding of TriggerValue to work correctly
- Added BackgroundImageEnabled to XML Serialize/Deserialize
- BackgroundImageEnabled is now set to true by default
-
Falcon Interface
- Added MapViewer IsHidden Binding in https://github.com/HeliosVirtualCockpit/Helios/pull/546
- Added Swipe Option for ICP Wheels in https://github.com/HeliosVirtualCockpit/Helios/pull/548
- Fix for Hydraulic Pressure Gauges A & B #569
- Updated Map Controls Korea Map in https://github.com/HeliosVirtualCockpit/Helios/pull/560
-
DCS AH-64D Apache Interface & Gauges
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
- Helios interface (Helios.AH64D) - sample profile using this interface is available on GitHub and showcased on YouTube
- Multiple auto-binding visual components eg TEDAC, Keyboard Units, EUFD, MFD, CMWS
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
-
New or Improved Controls
- Rocker With Label Control in https://github.com/HeliosVirtualCockpit/Helios/pull/556
- Linear Potentiometer featuring detents, animation and transparency detection for PNGs
- Pushbutton control with dual indicators
-
DCS Interface Changes
incrementalPulseValue
property added to theDCS.Common.Switch
allowing interfaces to communicate with DCS rotary switch devices which expect to receive pulses to move clockwise / anti-clockwise.
-
KeyPressReceiver
- Accepts command line arguments for Server IP address and Server TCP port. #570
-
Fix for AV-8B MFD Rocker problem https://github.com/HeliosVirtualCockpit/Helios/issues/568
-
Minor changes to the Helios AV-8B and Helios FA-18C JSON interfaces to resolve mainly switch issues.
-
FA18C interface devices SLAM_INTERFACE, ASPJ, BCN, KNEEBOARD, LINK4 added and switch corrections made as per https://github.com/HeliosVirtualCockpit/HeliosInterfaces/pull/3/commits/8f09c00bb2b0198bebc66739270c22b1b6509d5c https://github.com/MedievalBunny/HeliosInterfaces/commits?author=MedievalBunny
-
Improvements to A-10C_ALQ_213 font and associated adjustments for gauges which use it.
-
Fix for an internal Exception. Duplicate control names.
Developer Notes
Full Changelog: https://github.com/HeliosVirtualCockpit/Helios/compare/1.6.5200.0...1.6.5307.9
Full change notes from previous releases here: https://github.com/HeliosVirtualCockpit/Helios/wiki/Change-Log
Release 1.6.5305.3
Changes in the 1.6.5305.3 HotFix which is based on 1.6.5305.0.
- Patches created at 2.7.16.28111 to arrest the propagation of problems with duplicate lines appearing in several patches installed by earlier releases of Helios. Previous patches to the files below will need to be fully removed as they are unlikely to be fully corrected by a Helios Revert Patches operation. A Slow Repair (see How to repair/cleanup or update DCS World) will reset the affected files. (#579)
Manually removing the errant lines is not advised because it will not necessarily result in a file which can have future patches applied to it.
F14/Cockpit/Scripts/HeadUpDisplay/Indicator/init.lua
F14/Cockpit/Scripts/RWR/Indicator/Pilot/init.lua
F14/Cockpit/Scripts/RWR/Indicator/RIO/init.lua
FA-18C/Cockpit/Scripts/Multipurpose_Display_Group/HUD_AVQ32/indicator/AVQ32_init.lua
FA-18C/Cockpit/Scripts/TEWS/indicator/RWR_ALR67_init.lua
Hotfix 3
- Fix for corruption of MonitorSetup file when a Viewport is defined in a panel or embedded within a control (#589)
- New patch set for 2.7.16.28111 to address issue caused by the patches for the AH-64D MFDs no longer applying (#592)
User Notes
This release contains auto-binding gauges & an interface to support DCS AH-64D Apache; an alpha version of a plugin for OpenMacroPad/Stream Deck integration with Helios; further BMS Falcon improvements; new Helios controls; some bug fixes; and command line support for the KeyPressReceiver.
What's New / Changed
- HeliosMacroBoard integration as a plugin (#562) - Alpha Version, and needs a developer
Co-authored-by: Byron Roosa [email protected]
- Initial prototype for OpenMacroPad/Stream Deck support
- Current Streamdeck sizes supported are (standard 3x5, XL 4x8)
- A Virtual MacroBoard is also included as a separate Window process that can be put on an additional screen.
- Supports one image per button and two output bindings per button (press, release)
- ported HeliosMacroBoard to plugin
- published as zip for alpha testing
This functionality is in alpha state. It runs and can support simple scenarios of using a Stream Deck in a Helios profile. A C# developer will be needed to advance this project any further, since nobody is currently working on it. Support is available from @derammo for anyone who wants to take this on.
-
Profile Editor
- fixed binding definitions for macro buttons in ProfileEditor this allows the default binding of TriggerValue to work correctly
- Added BackgroundImageEnabled to XML Serialize/Deserialize
- BackgroundImageEnabled is now set to true by default
-
Falcon Interface
- Added MapViewer IsHidden Binding in https://github.com/HeliosVirtualCockpit/Helios/pull/546
- Added Swipe Option for ICP Wheels in https://github.com/HeliosVirtualCockpit/Helios/pull/548
- Fix for Hydraulic Pressure Gauges A & B #569
- Updated Map Controls Korea Map in https://github.com/HeliosVirtualCockpit/Helios/pull/560
-
DCS AH-64D Apache Interface & Gauges
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
- Helios interface (Helios.AH64D) - sample profile using this interface is available on GitHub and showcased on YouTube
- Multiple auto-binding visual components eg TEDAC, Keyboard Units, EUFD, MFD, CMWS
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
-
New or Improved Controls
- Rocker With Label Control in https://github.com/HeliosVirtualCockpit/Helios/pull/556
- Linear Potentiometer featuring detents, animation and transparency detection for PNGs
- Pushbutton control with dual indicators
-
DCS Interface Changes
incrementalPulseValue
property added to theDCS.Common.Switch
allowing interfaces to communicate with DCS rotary switch devices which expect to receive pulses to move clockwise / anti-clockwise.
-
KeyPressReceiver
- Accepts command line arguments for Server IP address and Server TCP port. #570
-
Fix for AV-8B MFD Rocker problem https://github.com/HeliosVirtualCockpit/Helios/issues/568
-
Minor changes to the Helios AV-8B and Helios FA-18C JSON interfaces to resolve mainly switch issues.
-
FA18C interface devices SLAM_INTERFACE, ASPJ, BCN, KNEEBOARD, LINK4 added and switch corrections made as per https://github.com/HeliosVirtualCockpit/HeliosInterfaces/pull/3/commits/8f09c00bb2b0198bebc66739270c22b1b6509d5c https://github.com/MedievalBunny/HeliosInterfaces/commits?author=MedievalBunny
-
Improvements to A-10C_ALQ_213 font and associated adjustments for gauges which use it.
-
Fix for an internal Exception. Duplicate control names.
Developer Notes
Full Changelog: https://github.com/HeliosVirtualCockpit/Helios/compare/1.6.5200.0...1.6.5305.3
Full change notes from previous releases here: https://github.com/HeliosVirtualCockpit/Helios/wiki/Change-Log
Release 1.6.5305.2
Changes in the 1.6.5305.2 HotFix which is based on 1.6.5305.0.
- Patches created at 2.7.15.26783 to arrest the propagation of problems with duplicate lines appearing in several patches installed by earlier releases of Helios. Previous patches to the files below will need to be fully removed as they are unlikely to be fully corrected by a Helios Revert Patches operation. A Slow Repair (see How to repair/cleanup or update DCS World) will reset the affected files. (#579)
Manually removing the errant lines is not advised because it will not necessarily result in a file which can have future patches applied to it.
F14/Cockpit/Scripts/HeadUpDisplay/Indicator/init.lua
F14/Cockpit/Scripts/RWR/Indicator/Pilot/init.lua
F14/Cockpit/Scripts/RWR/Indicator/RIO/init.lua
FA-18C/Cockpit/Scripts/Multipurpose_Display_Group/HUD_AVQ32/indicator/AVQ32_init.lua
FA-18C/Cockpit/Scripts/TEWS/indicator/RWR_ALR67_init.lua
- Fix for incorrect ICS Mode switch in the AH-64D interface.
- Partial fix to correct viewport positions in Monitor Setup Interface for Viewports which are not directly on the monitor (#583).
- Addition of minimum value trigger for the Linear Potentiometer with Detent.
- Capability for viewports within embedded gauges to be suppressed.
- Fix for Timer Panels not working when profile is stopped and restarted (#588)
- Fix for AH-64D Keyboard Unit scratchpad displays being truncated at a colon character (#586)
Release 1.6.5305.0
User Notes
This release contains auto-binding gauges & an interface to support DCS AH-64D Apache; an alpha version of a plugin for OpenMacroPad/Stream Deck integration with Helios; further BMS Falcon improvements; new Helios controls; some bug fixes; and command line support for the KeyPressReceiver.
What's New / Changed
- HeliosMacroBoard integration as a plugin (#562) - Alpha Version, and needs a developer
Co-authored-by: Byron Roosa [email protected]
- Initial prototype for OpenMacroPad/Stream Deck support
- Current Streamdeck sizes supported are (standard 3x5, XL 4x8)
- A Virtual MacroBoard is also included as a separate Window process that can be put on an additional screen.
- Supports one image per button and two output bindings per button (press, release)
- ported HeliosMacroBoard to plugin
- published as zip for alpha testing
This functionality is in alpha state. It runs and can support simple scenarios of using a Stream Deck in a Helios profile. A C# developer will be needed to advance this project any further, since nobody is currently working on it. Support is available from @derammo for anyone who wants to take this on.
-
Profile Editor
- fixed binding definitions for macro buttons in ProfileEditor this allows the default binding of TriggerValue to work correctly
- Added BackgroundImageEnabled to XML Serialize/Deserialize
- BackgroundImageEnabled is now set to true by default
-
Falcon Interface
- Added MapViewer IsHidden Binding in https://github.com/HeliosVirtualCockpit/Helios/pull/546
- Added Swipe Option for ICP Wheels in https://github.com/HeliosVirtualCockpit/Helios/pull/548
- Fix for Hydraulic Pressure Gauges A & B #569
- Updated Map Controls Korea Map in https://github.com/HeliosVirtualCockpit/Helios/pull/560
-
DCS AH-64D Apache Interface & Gauges
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
- Helios interface (Helios.AH64D) - sample profile using this interface is available on GitHub and showcased on YouTube
- Multiple auto-binding visual components eg TEDAC, Keyboard Units, EUFD, MFD, CMWS
- Multiple changes for Apache AH-64D profile exploitation in https://github.com/HeliosVirtualCockpit/Helios/pull/564
-
New or Improved Controls
- Rocker With Label Control in https://github.com/HeliosVirtualCockpit/Helios/pull/556
- Linear Potentiometer featuring detents, animation and transparency detection for PNGs
- Pushbutton control with dual indicators
-
DCS Interface Changes
incrementalPulseValue
property added to theDCS.Common.Switch
allowing interfaces to communicate with DCS rotary switch devices which expect to receive pulses to move clockwise / anti-clockwise.
-
KeyPressReceiver
- Accepts command line arguments for Server IP address and Server TCP port. #570
-
Fix for AV-8B MFD Rocker problem https://github.com/HeliosVirtualCockpit/Helios/issues/568
-
Minor changes to the Helios AV-8B and Helios FA-18C JSON interfaces to resolve mainly switch issues.
-
FA18C interface devices SLAM_INTERFACE, ASPJ, BCN, KNEEBOARD, LINK4 added and switch corrections made as per https://github.com/HeliosVirtualCockpit/HeliosInterfaces/pull/3/commits/8f09c00bb2b0198bebc66739270c22b1b6509d5c https://github.com/MedievalBunny/HeliosInterfaces/commits?author=MedievalBunny
-
Improvements to A-10C_ALQ_213 font and associated adjustments for gauges which use it.
-
Fix for an internal Exception. Duplicate control names.
Developer Notes
Full Changelog: https://github.com/HeliosVirtualCockpit/Helios/compare/1.6.5200.0...1.6.5305.0
Full change notes from previous releases here: https://github.com/HeliosVirtualCockpit/Helios/wiki/Change-Log
Release 1.6.5200.1
User Notes
This release is specific to Falcon BMS that includes some nice toys to make life a bit easier for the Falcon BMS community that use and support Helios.
Falcon Simulator Gauges Added
ADI
Airspeed
Altimeter
AOA
Clock
EHSI
EPU
FTIT
Fuel
Fuel Flow
Hydraulic Pressure
Nozzle
Oil Pressure
RPM
Standby ADI
VVI
Features
- Input auto binding from Falcon BMS to drive the needles and drums. No work is needed set them up, just put them in your profile and they just work.
- Back lighting, When the console lights enabled in game the gauges will also change to match the gauge illumination
Falcon Simulator Controls Added
ICP
MFDs
Note: The controls still require manual binding of the output bindings but that is all you have to do
Feature
- Back lighting, When the console lights enabled in game the gauges will also change to match the gauge illumination
A big thanks goes out to linknetx for 80% of the codework that went into this effort and the willingness to tackle it.
Release 1.6.5102.0
Summary
This release provides latest viewport patches for DCS
Updated viewport patches compatible with DCS 2.7.10.19473 - derammo Includes restoration of F/A-18C readability patches missing in previous patch cluster for 2.7 - derammo
Release 1.6.5100.0
User Notes
This release contains some minor updates to Helios, DCS, and the Falcon plugin.
Developer Notes
Helios Panels Updates
- Fix for interactions on template based panels - by linknetx
- Fixes issue #334 The mouse click crosses the panel images. A control beneath the panel could possibly be invoked even though it was covered by the panel above it. - by linknetx
Helios Viewports Updates
- Fixed issue #446 where a viewport could be masked by the monitor if it utillized a fill background - by wheelchock
Profile Editor Updates
- Added Profile Explorer Toolbar with Branch Expand/Collapse and Item Open Buttons - by linknetx
- Added double mouse click to Add Interface dialog box - by wheelchock
- Added patches for DCS version 2.7.6.13436 - by Matt Cahill
Falcon BMS Updates
- Added Falcon HUD Transparency and Texture Refresh Rate Improvement - by linknetx
- Falcon Interface fix reset behaviour plus add Current Theater update timer. - by linknetx
Added Control Features
-
Added Memory Wire control. This is essentially a piece of wire with memory, simply sends any value on its input side to its output side and on a resend request sends any last values entered on its input side to its output side. - by linknetx
-
ImageTranslucent Control - Added Allow Interaction with underlying controls. This allows a user to click through to a control beneath the ImageTranslucent control. - by linknetx / wheelchock
Usecase: Since the ImageTranslucent control has an opacity binding it can be tied to a rotary control and the opacity can be dialed up or down to reduce brightness of a monitor during night ops and still allow the user to click through to controls beneath the Image Translucent control
Helios Core Updates
- Fix for image caching to reload images if changed externally - by linknetx
- implemented keyboard input via DirectX DirectInput. Adds modifier key usage without having to know or write lua code. - by derammo
- Interface History is now included in notes - by derammo
- Added quoting in project files to allow building from paths with spaces. - by Byron Roosa
- Added HUD viewports for existing modules - by Matt Cahill
- Moveed template definitions to versioned file - by Matt Cahill
F/A-18 Updates
- manually fixed F18 HUD patch, had wrong line endings - by derammo
- fixed up templates generator. Now picks up viewports that only appear in versioned files - by derammo
- bring FA-18 templates up to date - by Matt Cahill
Release 1.6.5013.0
Summary
This is a giant release with many upgrades and changes to the core of Helios. These changes allow for the creation of new interface types and controls. As such, there are many changes from 1.6.3xxxx releases, so the version number has been bumped to 1.6.5xxxx to reflect that.
derammo's Notes
This is my final release, after which I am taking an indefinite leave from Helios development.
Thanks to those who helped with testing and other contributions along the way, and thanks to those who tried to get me some Patreon support to keep this effort going. To anyone considering taking over as lead developer: I think there are around 2000 to 3000 users right now, based on github download counts. Many BMS users have been getting their Helios binaries from an unauthorized redistribution, so we have no idea how many of those there are.
Soft Interface Support (derammo)
The biggest user-visible feature in this release is the support for DCS interfaces defined in JSON files. This means savvy profile developers can edit or complete the interfaces themselves, without having to compile Helios. I am also contributing initial versions of DCS interfaces for the following aircraft/devices/vehicles:
A-4E-C
AH-6J
AJS37
Alphajet
Bf-109K-4
C-101CC
ChristenEagleII
Edge540
F-14B
F-16C_50
F-22A
F-5E-3
F-86FSabre
FW-190A8
FW-190D9
Hercules
I-16
JF-17
L-39ZA
M-2000C
MB-339PAN
Mi-24P
Mi-8MT
MiG-15bis
MiG-19P
MiG-21Bis
NS430
P-47D
P-51D
SA342M
SpitfireLFMkIX
SuperCarrier
UH-1H
VNAO_Room
VNAO_T-45
Yak-52
These interfaces are generated from DCS-BIOS interface definitions (thanks WarLord at the DCS FlightPanels / DCS-BIOS projects!). Because of limitations of the import, these interfaces will usually have all the switches, gauges, and buttons defined correctly, but certain "special" exports will not be done yet. This means, contributors will be invited to complete these interfaces as we move forward. Please see https://github.com/HeliosVirtualCockpit/HeliosInterfaces for details.
Demo of adding functionality to a JSON-defined interface
ec8a7c5
example commit:- implemented navigation light on FW-190D as example
This should serve as an example of what interface/profile developers need to do to add a custom Lua export to an existing JSON-defined interface. I also added example custom Lua files to all JSON-defined interfaces.
Distribution
Customized interface files can be contributed back as mentioned above, or distributed with Profiles that use them. Just include them in the .helios16 archive to place them in Documents\Helios\Interfaces\...
and they will override the built in interfaces of the same name.
Other DCS interfaces not defined in JSON
The existing DCS interfaces from previous versions of Helios are still present but are hard coded in C#. This means they generally require a developer for any changes, with the exception of the F/A-18C interface (see below.)
Other Features (all by derammo)
Editable F/A-18C interface
This interface is defined in the Helios code as before, but you can edit its functions by editing a JSON file, just like the purely JSON-defined interfaces. This means you can fix small issues in the interface without coding in C# also. This interface was selected to trial this hybrid mode of configuration, which might be used for all existing DCS interfaces in the future.
implemented image caching
if enabled, image source objects for the same image are shared by all Helios visuals
this improves load times dramatically, since large profiles tend to have hundreds of buttons and switches that only use a few images
enabled by default
ProfileEditor has tools options setting
ControlCenter has preferences panel switch
improved Profile Reset behavior
the first SetValue call after Reset will now trigger updates
to allow any dependent controls to re-synchronize to the
current state (this matters to DCS and BMS interfaces)
this behavior can be turned off in Tools Options
implemented Numeric Text Display
this variant of Text Display shows numeric values without having to use Lua to convert
it has a configurable Unit assigned to it for conversion
it has a configurable Precision to control how many decimal places to show
implemented raw conversion
binding values can now be converted to their
underlying raw type without Lua, so that Knots
can for example be bound to Numeric. A message
will be displayed in the bindings UI.
updated to latest avalondock
optimization: not rendering controls during load for load speed improvement
default export frequency of DCS interface set to 30 instead of 15
profile editor can now paste Helios XML from text
this means you can copy to a text file and then
later copy that text back to profile editor, for example
to save off a number of items you frequently want to add
to a profile
UI cleaning: empty documentation strings now collapse in UI
Helios Developer Tools (all by derammo)
This optional install (separate MSI) adds various tools useful to Helios Profile developers (not profile users) to Helios. These include, but are not limited to:
DCS Interface Test
This tool animates all values in a DCS interface for testing of bindings.
Requires:
- a DCS interface in the profile
Generate DCS Functional Test Profile
This tool creates an entire profile of controls bound to each and every function in a DCS interface, organized as clickable pages by device, placed on the right-most monitor.
Requires:
- a DCS interface in the profile
- an empty right-most monitor
BMS Changes
Falcon Interface - Add Flight Start Mode binding value. (#455) (linknetx)
MapControl & MapViewer fix for badly formed navpoint string values. (#454) (linknetx)
Falcon Interface - Synchronize all binding values at start of flight. (#453) (linknetx)
Falcon Interface - Poll flight data for current flight only modification. (#451) (linknetx)
Falcon Interface - Poll flight data for current flight only. (#450) (linknetx)
Bug Fixes and Resolved Issues
exceptions thrown during Add Interface now shown in dialog (#456) (derammo)
Core Upgrades for Helios Developers (all by derammo)
internal: support for selection-aware plugin tools
internal: enum converter filtering
enum converter for XAML can now filter out
undesired values from the enum collection
internal: binding value units by name
Helios binding units can now be looked up by name
so they can be used in a combo box for example
internal: plugin loading improved
Helios now won't load random DLLs from Plugins
internal: visual renderer factored and simplified
internal: native windows controls
Helios visuals can now register for native windows mouse
events for right clicking and other advanced use cases
if they declare themselves aware of that API
Helios visual renderers can now be implemented by native
windows controls for display of regular widgets in the
Helios visual tree
Helios visuals can now register for manipulation (touch)
events directly from windows if they declare themselves
aware of that API
internal: helios visuals can be configured from xml model
hidden feature: secondary profile directory
by placing the correct key in settings file, Control Center can be
told to load profiles also from an additional location, such as a
dropbox or similar folder
internal: support for interface hierarchy
interfaces can now be children of other interfaces, and their parent must be added first
interfaces are now a tree in the UI
this allows for example a single Falcon interface, to which various Falcon feature interfaces could be added
originally developed for a canceled project that had a single interface to DCS with multiple per-aircraft child interfaces
internal: fixed exceptions handling in control center log
status viewer log target was using incorrect async call,
causing exceptions to be ignored instead of becoming fatal
Release 1.6.3604.0
General Features and Changes
- Added VTB Panel for M-2000C, both as gauge and DCS interface (norsetto)
- Addded Fuel Detotalizer Switch to the M-2000C Fuel Panel (norsetto)
- A-10C IAS gauge now has working airspeed limit needle (talbotmcinnis)
- Tuning of A-10C IAS curves both for native IAS gauge and DCS interface (derammo)
- Implemented text resizing for RotarySwitch and PushButton (#230) (derammo)
- Control Router additional bindable status and pulse mode enhancements (derammo)
- Added support for reloading CustomTape images (wheelchock)
DCS Interface
- Removed buttons from DCS M-2000C interface that are no longer present in the simulation (norsetto)
- Added A-10C IAS limiting speed in knots to interface (derammo)
BMS Interface
- Added RTT Client configuration and control from Helios (wheelchock, derammo)
- Added MapControl and MapViewer to provide moving maps, waypoints and pre-planned threats (linknet)
- Added TheaterName (wheelchock)
- Added NavPoints to Falcon Interface in support of MapControl (wheelchock)
Bug Fixes and Resolved Issues
- Simulator Viewport was not invalidating the config if the patches flag or viewport name changed [unreported] (derammo)
- Improve failed patch installation reporting #432 (derammo)
- "DCS Vehicles" options for F14A #429 (derammo)
- Helios should handle failure to parse autoupdate.cfg #428 (derammo)
- Force Falcon BMS to use Helios profile key file #425 (wheelchock)
- DCS Monitor Setup should check for full screen option #421 (derammo)
- Resolution is coming up with incorrect values #420 (derammo)
- A-10C-HSI: red flags for From/To and Course not available #410 (wheelchock)
- Adding interface location causing crash #409 (derammo)
- FC2 backward compatibility #378 (derammo)
- Preflight Check fails to detect viewports for current profile not in monitor setup #344 (derammo)
- Profile Editor could do a better job at displaying other controls being bound #321 (derammo)
- Windows scaling tactile control issue #287 (derammo)
- simulator viewport extents do not work inside panels #283 (derammo)
- internal: remove Dispatcher from HeliosProfile #258 (derammo)
- internal: eliminate profile writing thread #252 (derammo)
- Font sizes not adjusted by reset monitors #230 (derammo)
Release 1.6.3504.1
- Added binding to CustomTape gauge to refresh the tape image when set to true. Fixes issue #396 (wheelchock)
- Fixed startup size issues with dialogs in Control Center (derammo)
- dev tools: Fixed a bug that caused simulated monitors to retain configuration changes and propagate to other profiles (derammo)
- dev tools: Simulate monitor layout stored in current profile. This can be used to reset profiles to a reference configrations. (derammo)
- Fixed conditional bindings no longer mistaken for binding loops (derammo)
BMS Interface
- Text on trim AddValues were wrong (wheelchock)
- RWR under Falcon Simulator not displaying all contacts #404 (wheelchock)
- Added Interface check to report missing Falcon BMS key file callbacks in existing bindings #225 (wheelchock)
- Changed Falcon Interface Editor - No longer will we set the File Picker Dialog to the Existing KeyFileName.
- Added function to parse the Falcon Version number in the profile to a proper Version object (for future use)
- Added support for Multiple BMS Versions in Falcon Interface. Newest Falcon Version should be the first item in the Version selection ComboBox rather than the last. (wheelchock)
- Removed OpenFalcon and AlliedForces Interfaces
Release 1.6.3426.4
Bug Fixes and Resolved Issues
- Helios Control Center background #392 (derammo)
- Helios Control Center does not successfully "Start Minimized" #368 (derammo)
Release 1.6.3425.0
Bug Fixes and Resolved Issues
- new Layers Panel icons take focus away from editor #387 (derammo)
Release 1.6.3424.0
DCS export script using non blocking receive
This will reduce the DCS FPS impact of using Helios, in some cases dramatically. Thanks to Helios user @charlestytler for the code change suggestion.
Various Fixes not filed as Issues:
- Support for P-51D-30-NA (derammo)
- Added Inlet Icing BMS 4.35 (wheelchock)
- Added FLCS channel lamps indicatios BMS 4.35 (wheelchock)
- Added Gear Handle solenoid status BMS 4.35 (wheelchock)
Bug Fixes and Resolved Issues
- FPS limiting from processInput() #373 (derammo)
- Incorrect Glideslope and Localizer Bar Values #380 (wheelchock)
Release 1.6.3423.0
A-10C II Support (BlueFinBima and team)
- Support for DCS A-10C II interface natively in Helios (BlueFinBima, derammo)
- A-10C II Cockpit Controls: Scorpion HMCS Control Panel (BlueFinBima)
- A-10C II Simulator Viewports and Patches (derammo)
A-10C (I and II) Native Controls (BlueFinBima)
Several cockpit controls are now provided as Helios native controls. This means they can be used in profiles without requiring a rendered viewport from DCS. This release includes the following controls:
- CMSC
- CMSP
- Digital Clock
- UHF Radio
- UHF Repeater
Profile Editor: Layers Panel (derammo)
Improvements were made to the Layers Panel in Profile Editor. You can now select multiple layers in two ways:
- ctrl-click to select/deselect an additional layer
- click one layer and then shift-click another layer to select a range of layers
You can apply any of these new actions that are represented by new icons shown directly on the Layers panel:
- move all selected items up without having to select editor
- move all selected items down without having to select editor
- move all selected items all the way up to the top
- move all selected items all the way down
- toggle hide/show for all selected item
- toggle lock for all selected items
- toggle snap target on/off for all selected items
- lock all items (no selection required)
- unlock all items (no selection required)
Profile Editor Defaults (derammo)
Please review the options below carefully. Some of the defaults for newly created items in Profile Editor have been changed. This will not affect existing items in existing profiles.
Profile Editor now has a Tools | Options menu item, where some behaviors of the editor can be configured. The initially available options include:
- bindings cascade triggers by default (changed to default disabled, opposite of previous Profile Editor behavior)
- secondary monitors filled in by default (changed to default disabled, opposite of previous Profile Editor behavior)
- all monitors in new profile set to always on top (default is enabled as before)
Timer Panel (wheelchock)
There is a new "Timer Panel" control in the "Panels" toolbox that can be configured to automatically close/hide a configurable number of seconds after it is opened. This allows for implementation of side panels that automatically go away if they are not used for a few seconds.
Customized Composite Control Backgrounds (derammo)
Many of the complex controls provided by Helios can now be "skinned." For example, you can use the built-in F/A-18C UFC but change its background image to something that more closely matches you cockpit design. You can also remove the background image entirely if you just want the buttons for cockpit builds.
Helios private fonts (derammo)
Helios no longer installs its fonts into the Windows system fonts. You might have noticed the UFC and similar fonts were listed in your Windows fonts, to be used in word processing programs and the like. These are now accessed directly from Helios' installation directory without installing them system-wide.
Technical Detail: All fonts located in Helios\Fonts are loaded and used ahead of installed system fonts.
Control Router Improvements (derammo)
The Control Router interface can now optionally deliver pulses directly to rotary switches so that input devices with detents can be mapped to rotary switch detents. In other words, if an input device delivers one "pulse" it can move a rotary switch exactly by one detent, regardless of the angles involved.
Calibration Filter Control (derammo)
This control is a utility object for profile developers located in the "Miscellaneous" toolbox. It is not shown in the cockpit at run time. It contains a calibration curve that can be configured in the Profile Editor, and it translates its input to an output using that curve. It can be used to translate a numeric input value from an interface (or any other source) to an output value and optionally assign a unit.
For example, if you have a raw value from the simulator available somewhere and it has the values 0 .. 1.0, but you know it really reprsents knots in some other range, you can translate these values using a "Calibration Filter" control. You would assign the unit of "knots" and create calibration points to map a few values in the input range to the correct amount of knots they represent.
Then the output of the control will interpolate between these mappings and give you the actual "knots" value you can use in an IAS control.
Helios Developer Tools Improvements (derammo)
Helios Profile Developers with access to private builds now have access to additional tools, including detection of bindings "feedback" and elimination thereof. These tools should increase the quality of released profiles.
Various fixes not filed as Issues:
- added BMS IFF Backup digits for M1/M3 (wheelchock)
- fixed illegal format strings for DCS A-10C controls (these probably did not cause any errors)
(derammo)
- Canopy Jettison Lever Unlock Button
- Canopy jettison lever
- fixed illegal format for DCS A-10C TACAN channel arg 266 (derammo)
Bug Fixes and Resolved Issues
-
Add Tools Options dialog #370 (derammo)
-
Hornet UFC Doesn't display "ERROR" #369 (BlueFinBima)
-
Auto close panels #367 (wheelchock)
-
Adding a border to a rectangle fill corrupts the profile #364 (derammo)
-
DCS Generic interface allows incorrect attached module file name #363 (derammo)
-
Installation Mode is not a dialog that can be restored from layout #362 (derammo)
-
editing monitors info in profile XML by hand can crash monitor setup #360 (derammo)
-
incorrect message (Lua related) in binding type warning #359 (derammo)
-
PE - Unhandled Error When Saving profile to an existing file 1.6.3405.3 #355 (derammo)
-
AV-8B 3-Way Toggles not changing position in Control Center when changed in DCS #354 (BlueFinBima)
-
IFEI Nozzle Position Needles for F/A-18C Hornet do not function #349 (BlueFinBima)
-
DCS Monitor Setup combined monitor setup file now named based on Helios documents folder #348 (derammo)
If Helios Profile Editor and Control Center are run with --documents AnotherName to use an alternate documents folder, the combined monitor setup is also renamed, in this case to AnotherName.lua instead of Helios.lua
-
Falcon HSI: course deviation value is wrong #347 (wheelchock)
Thanks to user @ertiyu for helping figure this one out. The course needle now behaves as expected in relation to BMS HSI
-
F/A-18C UFC Option Cueing showing incorrect characters #346 (BlueFinBima)
-
Falcon BMS interface fails to initialize if BMS is not found #345 (wheelchock)
Release 1.6.3309.0
Bug Fixes and Resolved Issues
- Control Center crashes on Windows 7 with Aero Desktop disabled #365 (BlueFinBima)
Release 1.6.3308.0
Bug Fixes and Resolved Issues
-
Fixed patching of DCS files duplicated via hard link
DCS uses hard links to alias identical files that appear multiple times in the DCS mods tree. This currently only happens if those files are not installed at the same time; it appears to be an updater functionality. So if a user (like normal) installs A-10C II after having installed A-10C, then the common files will actually be hard links to avoid duplicating files. However, this broke the patching system before this fix.
With this fix, when we patch a file that is common in two locations, we unlink it so the patch does not affect additional copies. The patched copy becomes a separate file.
Release 1.6.3307.0
Bug Fixes and Resolved Issues
fixed DCS Additional Viewports crashing on certain patch files
Release 1.6.3306.0
Bug Fixes and Resolved Issues
- fixed helios16 archive to be able to install files other than Images (unreported)
Release 1.6.3305.0
Bug Fixes and Resolved Issues
- fixed elevated patching of DCS files if user name has punctuation or spaces in it #358 (derammo)
Release 1.6.3304.0
Bug Fixes and Resolved Issues
Fixed archive install prompt that offers user to overwrite all files (unreported bug in new feature). This fix is required to install a .helios16 archive which includes files that may already be present.
Release 1.6.3303.0
Minor reordering of DCS Monitor Setup UI
Moved Monitor Layout Mode to the top to clarify its function as an overall setting that controls how everything in that section happens.
Bug Fixes and Resolved Issues
- Fixed crash when selecting monitor layout mode that excludes all current Main or UI screens #341 (derammo)
Release 1.6.3302.0
Kneeboard image refresh from disk (wheelchock)
The kneeboard control now has an option to allow source image files to be automatically reloaded when they change on disk.
All DCS interfaces using Helios driver now provide basic telemetry
This is the basic LoGet... information that provides data directly from the simulation, regardless of the cockpit instruments.
These values are returned as "Simulator Telemetry" device in all interfaces.
Patching Exclusions
DCS Additional Viewports patches can now be disabled on a per-file basis in the DCS Additional Viewports view. Disabling any patch allows advanced users to take over responsibility for a file and make their own changes. If you take over a file in this way, you are responsible for maintaining any changes in that file that are required for Helios.
Bindings Panel in Profile Editor improved
Bindings now correctly show the name of the bound controls. Hover text / tooltip will show source name and full path to bound items.
Quarter screen demo mode
Both monitor layout mode and reset monitors scaling mode now support quarter screen scaling so Helios can be demonstrated on one monitor.
Friendlier driver name reporting in Control Center
Messages from export are now somewhat closer to human language.
*.hpf File Extension
This file association is now associated with Profile Editor by default.
Minor improvement to kneeboard UI in Profile Editor
Cosmetic improvements made to the Kneeboard control UI used to configure that control in Profile Editor.
Bug Fixes and Resolved Issues
- MiG21 Interface - 3 duplicate function definitions. #73 (derammo)
- Full fix for Black Shark and MiG21 Interface duplicate functions #74 (derammo)
- Profile Preview shows corrupted view immediately after Reset Monitors #240 (derammo)
- DCS vehicle common data #268 (derammo)
- helios16 archive needs minimum Helios version requirements #320 (derammo)
- when Patching selects a patch cluster from Documents, it will ignore higher numbered clusters from Program Files #328 (derammo)
- DCS Monitor Setup showing incorrect state in UI (only) after reset #329 (derammo)
- Crash from Kneeboard control in Profile Editor #335 (derammo)
- performance: fixed CustomGauge to no longer reload images on every frame (unreported) (derammo)
- fixed crash on shutdown in FalconTextureDisplay (BMS) (unreported) (derammo)
- removed extra copies of Ka-50 simulator viewports with incorrect names (unreported) (derammo)
- fixed DCS Locations to Update not auto expanding (unreported) (derammo)
Release 1.6.3214.0
Release 1.6.3213.0
Patches for DCS 2.5.6.53756
Viewport patches for the latest DCS release are now included without requiring a hotfix.
Support for DCS Steam Edition installations
DCS World Steam Editition users can now browse for their DCS installation location by navigating to DCS.exe
instead of autoupdate.cfg
(because the latter does not exist on Steam.) The DCS version will then be read from the executable instead.
If you were previously using the "fake autoupdate.cfg" workaround for Steam, please rename that file so Helios won't read out of date information from it. Please note carefully: If you are not using the Steam Edition of DCS, never ever touch that file!
M-2000C viewports contributed by Biluf
Thanks to a contribution from Helios user "Biluf", Helios now has viewports and viewport patches for the M-2000C.
DCS FC2/FC3 interface exports rewritten
The native Flaming Cliffs 3 interface in Helios (called "Flaming Cliffs 2") is once again operational. This interface is not used by Capt Zeen profiles, which use their own FC3 code. However, this interface can be used to build your own profiles for FC3 aircraft.
Uninstall of Export.lua hooks
If you completely uninstall Helios (rather than upgrade), the uninstaller will try to remove the calls from various Export.lua that you have configured, so that the Helios exporter does not keep running in DCS. If you do not want this to happen, use the "DCS Locations to Updatee" UI to remove all DCS locations before you uninstall.
Profile Interface Editor
Now profile interface has a "gear icon" editor in the Interface Status. Thanks to Kelso for pointing out this was missing. This means you can resolve issues shown in the "Profile Interface" section of the "Interface Status" by clicking on the gear icon. Initially, its capabilities include doing the "Reset Monitors" action just like from the menu, and configuring the current profile to ignore all missing image warnings. The latter is pretty helpful if you use a third party profile and you really don't want to fix their image errors.
Now passively checking DCS options.lua
Helios now checks options.lua settings such as your 'Resolution' and 'Monitors' settings and tells you if they don't match the settings required to make Helios work correctly. It does not do this configuration for you, since changing those files directly is not something we want to do and you might know better what the best values are for your setup.
Message displayed on write failure
If Helios is being policed by some anti virus or application firewall into not being able to write its files, it now presents a hopefully much clearer message to this effect.
ProfileInterface is now in warning state on unsaved changes
This feature helps users remember to save the profile before starting up Control Center and then being surprised that things they configured do not work because the file was not saved.
Interface configuration actions now display status reports
- failed and caution responses include dialogs showing all details
- results can be shared like interface status via Share Report button
Start/Stop/Reset triggers to Profile interface
The Profile Interface now has triggers you can use to do things in the profile when it starts, stops, or is reset.
Profile interface can NO LONGER launch external programs for security reasons.
Simple support for configuring Helios when it is not on the DCS machine
DCS Locations to Update can now be set to know that this is a remote Helios machine and not the one running DCS. This disables configuration checks and dialogs that do not apply in such a scenario. This option is global in Helios settings and applies to all profiles on the local machine.
Archive Installer
This capability will allow us to package Helios profiles or patches and their associated files in a single zip archive that automatically gets installed into Helios when you open it. This helps overcome any confusion regarding where files are to be placed. At the time of this release, there are no archives available for existing profiles, but shipping this feature enables the profile developers to do so.
https://github.com/HeliosVirtualCockpit/Helios/wiki/Helios-Archive
https://github.com/HeliosVirtualCockpit/Helios/wiki/Profile-Installation-Mode
User can now provide their own HeliosExport16.lua
For development purposes, power users and profile developers can place a copy of HeliosExport16.lua into Documents\Helios\Scripts\Helios\ and Helios will use that as the master copy of the file instead of its internally generated one.
Process Control plugin
This is a "power toy" with no documentation and limited support. It is a Helios interface that you can add to a profile to give it the capability of starting and stopping (killing) external processes.
Actual code that does the work is from BlueFinBima. The interface, wrapping, and config are by derammo. Support is probably by nobody. Seriously, it is scary.
To use this functionality, add the optional "Process Control" interface and give it explicit permission to do things via its configuration window.
BMS Changes and Bug Fixes
- Added ATF NOT ENGAGED Caution Light (wheelchock)
Bug Fixes and Resolved Issues
- monitor reset does not update the list of monitors shown in the profile explorer #324 (derammo)
- check options.lua for correct settings #322 (derammo)
- integrate M-2000C viewports contributed by Biluf #317 (derammo)
- Profile Interface should have an editor #314 (derammo)
- keyboard thread crashes on thread interrupted exception #311 (derammo)
- need clean uninstall including Export.lua hook removal #310 (derammo)
- DCS Additional Viewports must log source file on failure #305 (derammo)
- DCS World Steam Edition requires a workaround for Helios 1.6 #295 (derammo)
- FC2 Exports.lua has been truncated. #110 (derammo)
- Fix for AV-8B crashes during aircraft switch due to parse failures (unreported) (derammo and BlueFinBima)
Full change notes from previous releases here: https://github.com/HeliosVirtualCockpit/Helios/wiki/Change-Log
Release 1.6.3105.0
(optional patch release to support external developers)
User can now provide their own HeliosExport16.lua
- for development purposes, users can place a copy of
HeliosExport16.lua
intoDocuments\Helios\Scripts\Helios\
and Helios will use that as the master copy of the file instead of its internally generated one
Release 1.6.3104.0
Known Issues / Cautions
Do not install Helios 1.6 yet if you are a DCS World Steam Edition User
- Steam installs lack the autoupdate.cfg file that we need to configure many of the features of Helios 1.6. If you are highly motivated you can hack your own file and place it in the right location.
- This issue is tracked as https://github.com/HeliosVirtualCockpit/Helios/issues/295
Upgrading can cause Antivirus Action
- Helios 1.6 moves the Helios files to a different installation location, so antiviruses will think they are new executables. You may need to give them permission to write the "Documents" folder and open network ports.
Helios Core Changes
-
New feature: Export.lua generation modes
- Demo Video: https://youtu.be/bkP-f7uWkO4
- improves upgrade experience
- allows user to edit Export.lua while still having Helios check it, depending on mode
- https://github.com/HeliosVirtualCockpit/Helios/wiki/DCS-Interface#exportlua-generation
-
no longer writing Documents folder from Installer
- Documents folders are created on first Helios launch instead
- this improves folder ownership and should also help with the installer thinking it owns our files
-
DCS Additional Viewports now handles lack of relevant modules
- if no DCS modules are installed for which we have patches,
- the UI now correctly reflects this fact instead of presenting an error
-
improved logging for HeliosPatching
- also added a message box to show if program is run by curious user
-
now ordering Helios monitor numbers
- this means monitors will always be ordered left to right and top to bottom
- this change results in more reproducible test cases and less moving around of content if displays are reordered by windows (such as on reboot)
-
DCS Monitor Setup improvements
- no longer sometimes auto assigns the main and UI views during reset
- all work now held until monitor layout is valid
Falcon BMS Support Features and Fixes (wheelchock)
- Updated value description for readability and user info when in the Profile Editor
- Added Ownship Ground Speed
- Added radar alt bindings
- Added code for access and validating the radar altitude values
- Added function for rounding values to nearest ten's
- Added SetValue for GroundSpeed binding
- Fixed bullseye heading having negative numbers. Padded heading with leading zeros
- Added reciprocal heading to bullseye from ownship
Bug Fixes and Resolved Issues
-
incorrect "Add at least one enabled DCS installation location" message #303 (derammo)
-
fixed reset monitors with multiple identically sized displays out of order #300 (derammo)
-
ElevatedProcess logging and status reporting improvements #299 (derammo)
-
better intelligence for export.lua overwrite #298 (derammo)
-
additional info for interface status reporting #297 (derammo)
-
reset monitors for systems with multiple identically sized displays out of order #294 (derammo)
-
DCS export.lua update rate broken by DCS update #288 (derammo)
- DCS exports now done on frame timer
- high priority items updated according to configured rate from UI
- low priority items updated at fixed 5 fps
-
BMS calculations to determine ownship X,Y coordinates relative to bullseye as well as distance and heading from bullseye #285 (wheelchock)
-
IAS Gauge on KA50 incorrect values #284 (CaptZeen)
-
Helios Files in Use - Installer Blocked by GIMP #280 (derammo)
-
Helios prevents image files from being updated externally #277 (derammo)
-
Custom Gauge hit test is performed on rectangular bounding box of all drawn objects instead of control base rectangle #276 (derammo)
DirectXInput GUID in profile won't match on another machine #231 and #235 (BlueFinBima)
- corrections in custom gauge renderer code by inspection
- avoiding crash on configured DCS location that no longer exists
Helios 1.6 Changes from 1.4
There is no Helios 1.5, as this version number is historically reserved for use by Gadroc. Changes described in this document are relative to version 1.4.2020.0315. Any versions of 1.4 after that version represent a separate fork and may not be fully compatible with 1.6.
This document is up to date through commit: 1.6.3045.0
Compatibility
Helios 1.6 is backwards compatible with Helios 1.4. Any Helios 1.4 profiles may be used, without using any of the new interface-based features of course. If you notice any compatibility issues, please file a bug and we will fix those bugs at highest priority. The intent of this release is to replace all Helios 1.4 installations.
Please see this video for required steps to tell Helios 1.6 what export scripts to use for your existing Helios 1.4 profile: https://youtu.be/ihi49-qHFvk
Prebuilt Profiles
If you are a Capt Zeen profile user, please upgrade to the Helios 1.6 version of each profile provided by Capt Zeen. These use all the new features to help you successfully install export scripts, viewports, and monitor setup. http://www.captzeen.com/helios/downloads.asp
Videos Playlist
All the videos referenced in these change notes can be viewed as a playlist at https://www.youtube.com/playlist?list=PLCiL8SHubzhyPA38GyeyL2TCLlKjhtLz6.
Interface Status
New Feature:Demo Video: https://youtu.be/fEe0lDSFEgQ
A new view in Profile Editor has been created to act as the hub for interface configuration and to monitor the progress of configuration, whether you are creating a new profile or adapting a downloaded profile. This new view can be recalled by the "View | Interface Status" item in the Profile Editor menu if it is not currently shown. It is designed to be "torn off" the main view and displayed alongside the editors while working on configuring a profile, if screen space is available.
It shows a list of all interfaces in the current profile. Interfaces can be deleted via the trash can icon or added via the plus sign icon directly in this dialog. Each interface shows a status, which can be:
color | meaning |
---|---|
green | all ready to fly |
orange | there are some warnings that require review |
red | configuration is invalid, it will probably not work |
To configure an interface, you can navigate directly to its editor by clicking on the gear icon. Interfaces that do not support configuration will not show a gear icon.
The Interface Status view will by default be displayed automatically if any interfaces in the profile report warnings. This behavior can be changed by configuring the "Show this View" pull down on the right side of this view.
The detail level displayed can likewise be configured by the "Filter Details" options also located on the right side of this view.
Status Report Sharing
Demo Video: https://youtu.be/yC3qXhWaPiw
A "Share Report" button in the Interface Status view allows you to export an anonymized copy of this interface status to use for getting help or reporting a bug. "Copy to Clipboard" just removes your name from all the messages and places a copy of the JSON-formatted report on the clipboard. You can then paste it to a Discord chat or where ever you are getting help. This document is in a machine-readable format so that it can be read by (non-human) tools in addition to any humans that are helping you.
The "File a Bug" button exports this information to a file and opens a browser window to create a bug against the Helios repo. Please use this function responsibly. Fill in all available information, give it a descriptive title and then check for duplicates as github will try to show you problem reports that have similar terms. If you do a good job of describing your problem with keywords, you will likely find any existing entries. Attach the file that was exported containing your status report, which will also have been made anonymous. Helios will have opened a Windows Explorer window to the temporary folder where this file was written, so you can easily find it.
Control Center Console
New Feature:Demo Video: https://youtu.be/9-d6DzzR-4k
Similar to the Interface Status view in Profile Editor, the Control Center also has a new status view. It is called "Console" and can be called up by the switch "Console" in the Control Center main UI.
If any warnings or errors are logged by Helios during the session, the "Master Caution" light will light in Control Center. Pressing this light turns it back off until another warning or error occurs. This indication means you should check the Control Center Console for messages. Arrow buttons scroll up and down in the console. Each unique warning or error is only displayed once. Restarting the profile also clears master caution.
Additionally, a "Clear" button can be used to reset the console to empty. If you plan on asking for help from someone, it is best not to clear the console, because messages from previous attempts could still help debug whatever problem you are facing.
Pressing the "Share" button displays the same Status Report Sharing view that the Profile Editor uses in the Interface Status. You can use this view to share your console messages with others for receiving help or to file a bug.
In addition to log messages, the Console also contains additional messages about the state of the connection to the export script, if you are using DCS.
Preflight Check
New Feature:Demo Video: https://youtu.be/4BlvRdnd5YI
Unless disabled in the Control Center Preferences menu, Control Center will perform a "Preflight Check" when starting a profile. This includes checking every configured feature and any modified files. The check will enumerate a lot of status to the Console, with any warnings or errors color coded. If any errors exist, it will not start the profile and instead provide instructions in the Console of what you need to do to get a valid configuration. This feature is designed to prevent starting a profile and then failing to operate correctly "in the air."
A failed preflight check will automatically pop up the Console on errors.
DCS Locations to Update
New Feature: MultipleDemo Video: https://youtu.be/vNCVxp5b6vY
Helios 1.6 supports multiple active DCS installations, including different versions. For example, some users have a release installation of DCS and another install containing the OpenBeta version. Helios can now configure both of these.
The configuration for this is "DCS Locations to Update", which is a collapsible configuration section shared by multiple configuration dialogs. You only configure this set of locations once and it will then be used by all the interfaces and components that need to know about DCS installations.
When you configure your DCS installations, use the "Add Location" button for each installed copy of DCS. Helios will try to guess where your DCS copies are installed based on the registry, based on common locations, and based on folder names that some people use. In the file browser that is shown when you click "Add Location," the left sidebar will have a section "Profile Editor" that has all the guesses that Helios made for your machine if those folders exist. You can click on those to jump to them or just navigate to the root of each DCS installation. The root is that folder which contains the file "autoupdate.cfg" and Helios wants you to navigate to it and select it.
You can temporarily stop Helios from configuring a particular installation of DCS by unchecking the box marked "Write files to this location."
You can permanently stop Helios from configuring a particular installation of DCS by selecting the "X" icon on the right. This won't do anything to your DCS files; it just stops Helios from configuring this installation.
DCS Interface support for Capt Zeen export modules
New Feature:Demo Video: https://youtu.be/tQs6-Wi7z_M
The Helios DCS interface and its associated export script have been completely re-engineered for Helios 1.6. In addition to many other changes in the UI, the DCS interface now supports export modules provided by Capt Zeen with his profiles. This means you no longer have to switch export scripts back and forth and you can mix and match profiles that use Helios native interfaces and Capt Zeen interfaces. Initially, Capt Zeen modules are the only supported type of non-Helios provided module formats, but others will be added in the future.
Capt Zeen modules now can be reconfigured using the Helios UI. For example, you can adjust the Export Frequency in order to get more updates of the Helios UI if your hardware can handle it. You can then use the Helios Profile Editor "Setup DCS" button in the DCS Interface and it will correctly configure your exports to use those settings. In previous versions of Helios, this step would have corrupted the export scripts because it would overwrite Capt Zeen's exports.
Capt Zeen profiles will already come configured correctly to declare their export module format and the export module file to use.
For your own profiles, you can decide to use the Helios-provided interface (default) or select a "Module Format" in the "Profile-Specific Settings(Advanced)" collapsible section in the DCS Interface. If you select a non-Helios format (such as Capt Zeen module Version 1), then you can directly attach the required module file (from the "Scripts\Helios\Mods" folder) into the profile, so you don't have to worry about matching these up later and installing them. Helios will install this module file when the profile is configured via "Setup DCS" and it will also check to make sure it was installed correctly. The module file will also be embeded in the Helios Profile (.HPF), for ease of distribution.
DCS Monitor Setup
New Feature:Demo Video: https://youtu.be/UbVGleRAXhg
Helios 1.6 optionally supports the creation of Monitor Setup files and viewports directly from a profile.
WARNING: This functionality currently only works correctly if all your displays are set to the same DPI configured via Windows setting "Display | Scale and layout | Change the size of text, apps, and other items." Using a different scale factor on your Helios monitor than you do on your other displays will result in incorrect placement of viewports and/or controls.
Profiles can have rectangles drawn on them using the Simulator Viewport control object from the toolbox or any of the many pre-created templates for different DCS aircraft's viewports.
Place one of these rectangles over the area where you want the viewport mapped. Subsequent Reset Monitors operations will also scale this rectangle, so it will stay in the correct place relative to the cockpit graphics.
If you have an interface of type "DCS Monitor Setup" in the profile, then Helios will create the monitor setup for you from these rectangles. If you use only viewports with unique names, then Helios will detect this fact and let you configure a shared Monitor Setup file that can be used for all your profiles.
In order to use any of the Monitor Setup functionality, your profile needs to be saved so that it has a name. Additionally, "Reset Monitors" will need to be completed. The UI will inform you of this fact and may not show all of the UI until you have done so.
Demo Video for Combined Monitor Setup: https://youtu.be/RFMxnSyo0_M
If your profile has viewports that collide with some of your other profiles, you can move it to the "Separate" section by clicking the "Minus" icon next to its name in the "Combined" section. This will tell Helios to make a separate Monitor Setup and tell you the name of this setup file. If you use this option, you will need to switch "Monitors" in DCS when you switch profiles.
In order to be able to rename the viewports to be unique across aircraft, Helios now also contains the ability to apply viewport mods for you. Please see DCS Additional Viewports.
Alternatively, you can configure the "Advanced Options" collapsible configuration section to specify that you will take care of the viewport mods yourself using some other software. If you do so, please consider informing the Helios developers of other projects that help you create these viewports. Helios is already cooperating with Jabbers' "DCS Alternative Launcher" project to ensure compatible naming, and we would like to also cooperate with any other projects helping people configure viewports.
Note: Because Helios cannot open all your profiles at the same time, you will need to open each profile and reconfigure the monitor setup if you make changes to your monitors on your DCS system. The UI will inform you of this fact.
Monitor Layout Modes
Demo Video for Monitor Layout Modes: https://youtu.be/ioC2TlrWYH8
Since DCS does not allow configuration of where the DCS window is placed when running in Windowed mode, some care is required to get the expected result if a complex monitor arrangement is used. Specficially, DCS will create a window sized according to the "Resolution" setting in the DCS settings. This window will be placed according to certain rules regarding your existing monitors and which monitor is selected as your main/primary display. To get the expected result, you need to select from a set of different layouts that map the DCS "Resolution" rectangle differently to the Windows desktop. This will allow Helios to only create configurations that will do what you expect in DCS.
There are currently 4 different modes:
1. From Top Left Corner of Desktop
This is the easiest mode to understand and configure, but it may use more of your Desktop area than you wanted. The DCS window will be placed at the top left corner of the desktop. If you only have two monitors, this will work fine. However, if you have additional monitors on the left side that you don't want to use for DCS, then this mode will cause DCS to draw on those monitors also and just show a black screen.
2. Vertical Columnd Including Primary Display
Choose this layout if you have just your main/primary display as the DCS 3D view and Helios on a screen above or below it. Any screens to the left or right won't be included, so you can have additional monitors for Discord or other utiliies to the side, and DCS won't render on them. This only works if your DCS view starts at the top of the desktop and is the width of your primary display.
3. Horizontal Row Including Primary Display
If your DCS monitors form a horizontal row that is the height of your main/primary Windows display and includes that display, then DCS will place the window across all those monitors starting from the left edge of the desktop. This means you can have additional monitors above or below that aren't part of DCS and it won't render on those. You won't be able to place viewports on those monitors above or below.
Note: If you have a "T" configuration of monitors, with a row for DCS and Helios below, then you must use the "From Top Left Corner of Desktop" mode, because DCS does not understand how to place its window in this case.
4. Just the Primary Display
If you don't have any viewports or all viewports are on the same display as DCS, then you can choose to render DCS and its viewports on just the main/primary display. DCS will position its window on the main/primary display if the Resolution is set to the size of that display, regardless of what other monitors are around it.
DCS Settings
Because Helios does not edit your DCS settings, you will have to manually follow its instructions that will be shown both in the DCS Monitor Setup UI and in the Interface Status Details view. Specifically, you will have to configure the DCS "Resolution" and "Monitors" settings.
DCS Additional Viewports
New Feature:Demo Video: https://youtu.be/DAYDTQYwCpM
Helios 1.6 optionally supports the modification of DCS installation files to add additional viewports and improve the rendering of extra viewports.
By adding the "DCS Additional Viewports" interface to a profile, you can specify that Helios should ensure that all aircraft viewports that Helios knows about are "patched." Helios ships with a set of patches that will modify the DCS installed files, similar to what a mod manager such as OVGME does.
By configuring the "DCS Additional Viewports" interface, you can modify all the viewport files for all aircraft that Helios knows about. If patches are installed or partially installed, the same button changes to "Revert Patches" so you can revert the DCS installation to its unpatched state.
Helios leaves copies of the unmodified files for your reference or for recovery purposes if reverting does not succeed because other changes were made manually. These files are left in their original locations but have a very long DCS version number appended to them. This is the full version number of DCS that these files match.
In normal operation, this Helios feature "just works." It will tell you when you have to apply the patches and you click the "Install Patches" button and you are done. However, since this is new functionality for Helios, here is a remedy that you hopefully will never need:
In case of failure, you can always revert all patches and erase all extra files by running the DCS update utility in repair mode. Open a command prompt, navigate to the DCS installation folder, navigate to the "bin" subfolder, and run
dcs_updater repair
. Select "Yes" to delete all user mod files. Finally restart Helios Profile Editor.
If your DCS installation is in the default installation location, it may not be writable by your Windows user account. In this case, Helios will execute an additional program called "HeliosPatching.exe" as administrator to apply or revert patches. Depending on your Windows UAC settings, you will likely see a prompt from UAC asking you if it is ok for this program to make changes to your computer. To allow Helios to write these mods as an administrator, you need to give it this permission. If your user account is not an administrator, then Windows will prompt for a password to an administrator account that will be used to apply the changes.
If anything goes wrong with this process, an additional log file called "HeliosPatching Problems.log" will be created alongside the other log files.
While the viewport patching functionality is similar to a mod manager, there are some significant differences:
1. Helios is not a general purpose mod manager
There is no UI for creating aditional patches or mods and adding them to the viewports patches. Patches will be created and managed by Helios developers and some highly motivated profile developers. So it is possible that profiles will come with additional patches that are installed along with the profile (to the Helios Documents folders.) However, it will not replace the use of a mod manager for any other mods that you might want to apply.
Helios will limit itself to just patching viewports and some common "readability" patches such as F/A-18C viewport rendering settings to make the viewports legible. Use another solution of your choice for any other mods.
2. Patches are used instead of "mods"
Helios does not replace entire files, like most mod managers do. Instead, its patches only apply specified small changes. This should allow Helios to avoid overwriting changes made by the DCS developers in future versions. As long as files are not changed too much, these patches (technical: specifically, they are google diff-match-patch patches) will continue to work correctly and only change the intended lines.
To keep this working, Helios will need to periodically release new patches for later versions of DCS if files change too much, which they historically have once every few years. Helios automatically uses the patches that are intended for the currently installed DCS version. So if Helios has multiple sets of patches available, it will choose those that covers the DCS version you have.
Creation of Patches
A future release of optional Helios tools will include tools you can use to make your own patches. For now, interested profile developers would have to compile Helios tools from source themselves if they need to add more patches to support new planes.
As mentioned above, Helios is cooperating with Jabbers' DCS Alternative Launcher to ensure compatibility going forward. This means you would be able to use either tool to generate your viewports and they will be compatible with Helios.
Simulator Viewport Templates
Demo Video: https://youtu.be/TCppsjaTHNM
Some aircraft viewports are renamed by the patches mentioned above and others are created by these patches, since they don't exist by default in DCS. Any such named viewports won't work correctly in DCS Monitor Setup's generated monitor setups, because the names would be wrong. To help make this obvious, Simulator Viewport controls can be tagged as "Requires Patches." This setting means that this viewport includes a name that requires patches or mods to be installed. Helios comes with a large number of viewport objects in the toolbox, such as "F-16 Simulator Viewports" which are preconfigured with names matching our viewport patches. If you use another solution, you may need to adjust the names as they won't be compatible out of the box.
Helios Plugins
New Feature:Demo Video: https://youtu.be/WpIioA1Ryo0
Helios now officially supports Plugins. Plugins can be installed into the "Plugins" subfolder of the Helios installation folder. Plugins cannot be loaded from the Documents folder, so they continue to require administrative privileges to install.
Helios comes preinstalled with two Plugins
- Patching.dll which contains the functionality for DCS Monitor Setup and DCS Additional Viewports
- HeliosFalcon.dll which contains the BMS functionality
As part of testing new builds of this functionality, a Helios developer may ask you to replace these files with a new build to evaluate some fixes. Also, be on the lookout for new and crazy Helios plugins, such as from derammo.
Falcon BMS Support Features and Fixes in 1.6
-
Helios now opens key file selection dialog to FalconPath + \user\config. (wheelchock)
-
Added two calculated values for HSI course and heading. This will allow for creating HSI using custom gauge control (wheelchock)
-
Added Focus Assist (wheelchock)
- option in the Falcon Interface to force the Falcon BMS window into Focus before sending callbacks. This option is not compatible with Falcon BMS extraction and other methods should be used to extract windows.
- can be disabled by checkbox
-
Disabled support for Falcon versions other than BMS (#233) (wheelchock)
-
Added Texture extraction for Falcon BMS profiles (wheelchock)
-
Added calculated bearing to beacon (wheelchock)
-
Added x,y corrdinates for ownship location (wheelchock)
-
Added latitude and longitude degrees for ownship location (wheelchock)
Control Center UI Changes in 1.6
Demo Video: https://youtu.be/CXJH-d2RK1w
In addition to the Control Center Console and Preflight Check discussed above, the following changes were made to the Control Center UI:
Export.lua now reports errors
The export script now reports errors to Control Center, so you should see a Master Caution and a message in the Console if the export script crashes or has some other error condition.
Control Center splash screen can now be disabled in Control Center Preferences
- Control Center can start instantly without it
- contributors are now shown in console if splash screen is disabled
Profile AutoStart
Unless disabled in Control Center Preferences, Control Center will now automatically load a Helios profile when you enter an aircraft in DCS. The profile selected is the most recently started profile that matches this aircraft. For example, you can switch planes in multiplayer and Helios will automatically show you the cockpit for the correct plane, assuming all your viewport configurations are compatible so you can use the same Monitor Setup file (see DCS Monitor Setup.)
Jettison button removed from control center
This button could previously be used to permanently delete a Profile. Since this is dangerous and hardly ever useful, this feature was removed. Please delete a profile by deleting the .HPF file in your Documents\Helios\Profiles folder. This way, it will at least go to the Windows recycling bin to be recovered later if you need to.
Additional Status
Control Center now displays the aircraft/vehicle that is currently being run if you have DCS. It also shows if there is a module loaded for that aircraft and what sort of module it is (Helios driver or other module format).
Preferences Panel Rewrite
The Control Center Preferences is now more tighly packed and the slider for TouchScreen 2nd Click Suppression is not hidden to maintain the "physical panel" look.
High quality bitmap scaling
There is a new option in Control Center Preferences to use more expensive bitmap scaling for cases where bitmap noise is a problem using default linear scaling. If your custom profile uses images that are not the correct size for how they are displayed on the screen, they may appear very blurry or noisy. This option may correct this issue for you, at the expense of some CPU cost.
Command line help
If you start Control Center.exe
with the command line option --help
or any invalid options, it will display a message box documenting its valid command line options.
Control Center Version Check
Control Center uses the upgrade/version check settings from Profile Editor, so silencing the check can be done via Profile Editor. When a new upgrade is available, Control Center will provide a browser link in the Control Center Console, which can be selected and followed by clicking on the "Browse" button that appears.
Profile Editor UI Changes in 1.6
Demo Video: https://youtu.be/2VNVqd1yT_E
In addition to the new Interfaces and features discussed above, the following User Interface changes were made to Helios Profile Editor:
Readability
There has been a complete restyling of all the text in the UI to improve clarity and accessibility:
- font sizing
- removed unnecessary use of bold fonts
- remove extra lines
- adjusted layout
- consistent font styles
Blue theme
Helios has abandoned its flames design in favor of a blue icon representing the concept of "Virtual Cockpit." If you are an artist and you want to contribute better art for Helios, please reach out to the developers on the Capt Zeen discord or where ever the developers hang out. An up to date link will be located near the bottom of https://github.com/HeliosVirtualCockpit/Helios.
Middle mouse button panning
Profile Editor views of the controls (Panels and Monitors) can be panned by holding down the middle mouse button or wheel and moving the mouse, similar to many graphics programs.
Mouse wheel scroll
Profile Editor view of the controls (Panels and Monitors) can be scrolled using the mouse wheel, unless the mouse is hovering over a rotary control that has mouse wheel enabled. In the latter case, the mouse wheel will turn the rotary control for testing in Profile Editor.
Mouse wheel zoom
Holding the "control" key and using the mouse wheel will zoom Profile Editor views of Panels or Monitors.
Icon updates
We now use standard Windows UI fonts for many icons and menu options. As before, anyone wanting to contribute to the art side of Helios, please reach out.
Moved some controls to "Custom Controls" folder
- CustomDrum
- CustomTape
- CustomGauge
Renamed Controls
- PotentiometerWithTranslate is now called "Linear Potentiometer" in the UI but is still called the same in Profiles for compatibility
Control Names Shown
The first line in the Properties panel now shows the type name of the currently selected control.
Reset Monitors now supports orientation changes
You can now "Reset Monitors" and convert profiles between landscape and portrait. It will pick a scaling factor by choosing the larger of scaling by x or y, if it can do so while including all controls. In previous versions it would just rescale based on the shortest dimension so controls got smaller and smaller as you reset the monitors.
Command line help
If you start Profile Editor.exe
with the command line option --help
or any invalid options, it will display a message box documenting its valid command line options.
Common DCS interface UI
In addition to the new features for DCS Interface described above, the following UI changes were made:
- interface redesigned so it can be used by all DCS interfaces
- added DCS Locations to Update
- added "DCS Vehicle" to configure which exact DCS aircraft/vehicle will be supported by this interface
- advanced sections are shown as collapsed groups with expander button instead of hidden, so you can click on the arrow next to their name and access advanced options
Phantom Monitor fix configuration has been removed from the UI.
- Please file a bug if this is a feature you were using and we will fix it and restore it to service
Profile Editor "Layers" panel now initially in a Stack
This panel used to be tabbed with "Properties," but many users tend to immediately tear it off and stack it instead. Stacked is now the default layout.
Version Check
- Upgrade/Version checks are now done against all github releases
- Version check dialog only shown from profile editor
- Version check dialog now includes a link to release notes
- Version check dialog is now always presented if requested from Help menu
Control Router
New Interface:This control is a "power toy" for advanced users. It can be bound to one or more (physical) input devices such as axes on controller or supported external hardware devices. Then it will automatically control the most recently selected rotary control when the physical control is moved. This allows for interaction styles like clicking on a brightness knob in Helios and then turning a real physical knob to move it precisely, sharing this same knob with many other functions by just clicking on them.
It would not be wrong to say this was created primarily for derammo's own use. More documentation and video will be required to fully demonstrate what this device can do, but it is included in the release as the optional interface "Control Router" so it can be used by adventurous users.
The first release of this control only supports rotary controls and has 4 ports (for 4 physical input devices) preconfigured, though more ports can be created by changing the profile XML if you really need to.
Rotary Controls
Changed Control: allDemo Video: https://youtu.be/TcZHs6zIOzM
All rotary controls have been heavily modified to factor common code and fix issues, as well as add new interaction styles. They are intended to be fully compatible with 1.4. As before, if you notice any incompatibilities, please file a bug and we will prioritize the bug.
Rotary controls include:
- Rotary Switch
- Rotary Encoder
- Potentiometer
- Endless Potentiometer
These now support the following interaction styles:
- Touch: clicking on either side of the control and holding will rotate the control in that direction, accelerating (also in 1.4)
- Swipe: clicking and holding and dragging around the control will rotate the control some proportional amount (also in 1.4)
- Radial Precision: clicking and holding will draw a virtual line out of the control, which can then be dragged around the control to move it precisely the same amount as the mouse pointer or finger used to drag it. By moving further away from the control, the "handle" becomes larger and the interaction becomes more precise. The virtual line can optionally be shown as a real line on the screen by enabling "Visualizations" on the control.
Rotary Switches can now optionally be switched to "Continuous" mode. If enabled, the switch will continue past the last position and start over at the first position. Note: "Endless Potentiometer" is a version of "Potentiometer" that is continuous. "Rotary Encoder" is always continuous, since it has no end points.
Additionally, all such controls support these options:
- Mouse Wheel: enable to allow mouse wheel to spin the control (also in 1.4)
- Visualizations: enable to show helper lines visualizing the interaction that would not appear in real life
- Routable: enable to allow this control to be used with the Control Router
Changed Control: all Image Controls
All image controls (controls that can display an image) can now use a XAML line drawing (similar to SVG vector drawings) for scalable images, instead of a bitmap. XAML drawings provided by the profile developer must be located in the "Images" folder in the Helios Documents folder.
Changed Control: Text Display
- Additional Scaling Mode configuration adds new accurate automatic font scaling and ability to turn off automatic font scaling
Mode Behavior none doesn't automatically scale font legacy behaves like Helios 1.4 TextDisplay to avoid breaking layouts height accurately adjusts font size based on height of the Text Display
Changed Control: Potentiometer T+R
- This device is now called Linear Potentiometer and its UI has been corrected
Logging and Status Reporting Changes
Demo Video for Logging: https://youtu.be/xWqABe6hgBY
All logging in Helios has been replaced with a third-party loging solution with better performance. As a result, Helios can afford to log more useful information in case something goes wrong.
Logging is now provided by the NLog library and configured via a file called NLog.config
. This file can be hacked by adventurous/technical users to adjust the exact logging being done, or you might be asked to change it by a Helios developer working on a bug you reported.
In terms of its behavior, logs are still written to Control Center.log
and Profile Editor.log
in the Documents\Helios folder, as in previous versions. However, additional files are created as follows:
Control Center Problems.log
If this file exists, then there were warning or errors reported by Helios Control Center. You should probably look into it and see what is going on. Sometimes these are just issues with a profile not finding its images or something else harmless, but sometimes these could indicate real problems.
Profile Editor Problems.log
If this file exists, then there were warning or errors reported by Helios Profile Editor. You should probably look into it and see what is going on. Sometimes these are just issues with a profile not finding its images or something else harmless, but sometimes these could indicate real problems.
HeliosPatching Problems.log
If this file exists, then the HeliosPatching.exe utility failed to run as administrator in order to apply or revert viewport patches. This always indicates a bug, so you should file a bug report and attach this file.
Log Archive
This folder will appear in the Documents\Helios folder and contains all log files that are not the current one. Every time you run Control Center or Profile Editor, the current log file will be archived and a new one started. This means that any messages in the normal log files is from this session, or the last session that had problems in the case of the *Problems.log files.
Archived logs are kept for 7 days (up to 30 files) and then automatically deleted. This means you should report any bugs in this time frame, before you have run another 30 sessions or 7 days have elapsed, so you can still access the logs. Otherwise, find the related log file and save it somewhere for filing a bug later.
Log Features
Log files also have millisecond time stamps now so you can use them to get an idea of how long things took. Any status report items in the Control Center Console or Interface Status also have time stamps, so you may be asked for the log file that matches the time codes in any such report that you share. In that case, find the file that includes the given time code. Files include their date in the name and the time of day you can figure out from the last accessed time in Windows Explorer.
For profile developers, Bindings are now logged once. This means you can see if any bindings you created were actually fired without switching to debug logging. However, it won't log a second time during the same session, because that would crush performance and fill up the logs.
To switch to verbose debug logging, you can use the --loglevel command line argument on both Control Center and Profile Editor and specify Debug, Info, Warning, or Error. There is no setting for "None," so "Error" is the least you can log.
Lua exceptions are now only logged once per trigger. In previous versions, errors in bindings that use Lua scripting would stop Control Center from being responsive while it kept throwing exceptions and logging them. Such errors are now logged only once per binding, so profile developers can check "Control Center Problems.log" for any issues. All problems are fixed when this file does not get created any more.
When bindings are logged, the entire paths to the source and target of the binding are now logged. This makes is much easier to locate the control(s) and interface(s) involved.
Unhandled exceptions in the product no longer silently exit but instead get logged with a stack trace and an message box is presented asking the user to file a bug. If you are the user and see such a dialog box, please file a bug and include the "* Problems.log" file or files. If no problems logs are created due to a bug, then please screen shot the dialog box showing the exception thrown.
removed HeliosDiag.cmd
This diagnostic script was removed because:
- of privacy violations
- the information gathered isn't usually relevant to debugging any Helios problems
Instead, please just include the anonymized report from Status Report Sharing and any log files you are comfortable sharing. Please note that your Windows user name may appear in some paths in the log files in the current version of Helios, since logs are not yet run through the anonymizer.
DCS Export.lua Changes
The Scripts\Export.lua
script for Helios is now just a simple loader, similar to the Scripts\Export.lua
used by Capt Zeen, DCS-BIOS, Tacview, and basically everyone else. Scripts\Export.lua
just contains a dofile(...)
call to the main Helios export script, which in this version is called Scripts\Helios\HeliosExport16.lua
. You can also configure DCS Interface to not write Scripts\Export.lua
or to write it and include additional dofile(...)
calls for you.
In any configuration, Helios will check the validity of all the script files in Profile Editor (for Interface Status) and in Control Center during Preflight Check.
NOTE: Capt Zeen export scripts Scripts\Helios\Helios*.lua are NOT used by this version.
You may leave them installed if you want, but don't call Scripts\Helios\HeliosExport.lua from Scripts\Export.lua. In other words, don't actually run them. The only Capt Zeen export files you should install are the ones in Scripts\Helios\Mods. If you are using a properly configured profile that uses 1.6 features, then even these module files are written for you by Helios, because each Profile will carry its module inside.
HeliosExport16 provides the following new features:
-
supports all airplanes and profiles with one export script
- switching airplanes/vehicles will load the appropriate module or driver for the active vehicle and active profile
-
module format types
- Capt Zeen's modules can now be loaded by the same export script that also supports Helios-generated drivers
- additions to the export protocol allow requesting a module type by name
-
status reporting
- the export script tells Control Center what aircraft and module are in use, for auto loading and module type negotiation
- this status appears in the Control Center UI
-
error reporting
- if a probably fatal error is encountered, the export script will send the error message to Control Center for display
-
logging
- relevant information is now logged to the DCS log file, which is at
Saved Games\DCS(or DCS.OpenBeta)\Logs\dcs.log
- relevant information is now logged to the DCS log file, which is at
Installer Changes
Many of the non-user files that Helios 1.4 installed to the Documents\Helios folder are now installed to the Helios installation folder. Specifically, the licenses and documentation are located in the "Docs" folder, which is found in the installation location. These files must not be changed by users and are therefore part of the installation.
Helios Templates provided by Helios are now also located in the installation location. Previous editions of Helios would lose all their templates if the user deleted the Documents folder or switched to a different Documents folder. Users may create additional templates in the Documents\Helios\Templates folder as before.
The "organization" portion of the installation path has been changed from "Gadrocs Workshop" to "Helios Virtual Cockpit" to reflect the change to an open source team developing Helios instead of the original developer. For example, on a typical machine, the installation path might be C:\Program Files\Helios Virtual Cockpit\Helios
.
Note: It is our hope that Gadroc will join this team if he ever decides to come back to developing Helios.
System Requirements
- .NET Framework 4.7.2
- Windows 64-bit
- or Windows 32-bit using 32 bit installer (almost no testing is done on the 32-bit build)
Bug Fixes and Resolved Issues in 1.6
- CustomGaugeRenderer now survives missing image
- Prevent crashes when DCS aircraft does not match profile
- Saved layouts are now discarded when upgrading to a new version of Helios that adds new UI panels instead of losing access to new panel
- Touch screen delay slider was always enabled on control center start
- Unhandled exceptions on main dispatcher now logged and displayed before program exit
- Control Center no longer overwrites settings changes from Profile Editor and vice versa
- Control Center no longer requires restart to receive latest settings from Profile Editor
- Profile Editor now shuts down cleanly if closed during profile load
- Scroll wheel now works in Profile Editor views with multiple scrollers
- Lua exceptions only logged once per trigger to prevent Helios from becoming unresponsive
- Fixed a crash that could happen if starting profile while DCS is already sending updates
- Fixed a crash that could happen if profile was changed via Control Center UI while starting
- Helios now survives failure to load layout file (.hply)
- DualRocker switch trigger 2 fixed
- Helios now survives controls with 0 width and/or height
- A-10C interface ILS volume and KHz axes switched
- control arguments were assigned backwards
- KHz range set to 0.9 based on DCS-BIOS data (needs test)
- licenses and manual _Documents installed to user files #219 (derammo)
- files installed in Documents folder #218 (derammo)
- UI panels can now be recovered from View menu even after loading saved layout #216 (derammo)
- update notification problems #215 (derammo)
- ProfileEditor Drag and Drop drops in the wrong place if scaled #209 (derammo)
- help for command line options #191 (derammo)
- logging performance #188 (derammo)
- Deserializers intolerant of unrecognised attributes in profile #125 (derammo)
- FC2 Exports.lua has been truncated #110 (derammo)
- MiG21 Exports File corrupted #109 (derammo)
- Restructure Export.Lua framework #108 (derammo)
- 32-bit Control Center does not exist #90 (derammo)
- Export.Lua chaining for multiple interfaces #86 (derammo)
- Correction to the FA-18C export script to correctly handle 16 segment displays in the UFC #213 (BlueFinBima)
Known Bugs and Limitations
- Interface Status for ProfileInterface will shown images as missing even if these images are no logner referenced. This list is only cleared on Profile Editor restart or change/reload of profile. #239
- Stretching a composite visual such as the Helios-provided UFC and IFEI to a small size will cause text fields to become unreadable due to incorrect scaling. #230
- After "Reset Monitors", the "Profile Preview" view may show a corrupted view of the monitors. Selecting and then unselecting the "Full Size" option will work around this problem to reset the view. #240
- Custom controls will not maintain their aspect ratio if containing panel is resized #241
Implementation / Internal Changes
The remainder of these notes are for Helios developers regarding additional changes made in the code base for 1.6.
internal: Unsupported Interfaces
Helios can now run a profile that contains unsupported interfaces. If interfaces from plugins or later versions of Helios are not found, they are replaced with a dummy interface that preserves the XML and bindings in the profile, while doing nothing. This permits editing and saving a profile without dropping all unknown interfaces.
internal: AvalonDock
- switched to Dirkster.AvalonDock 4.x-
- change in Avalon license to Ms-PL as a result
internal: NLog
- log level can now be adjusted per component
- config file is NLog.config in Helios folder and can be edited in the field
internal: Donate link now goes to wiki where we can maintain links
internal: cleaned up project dependency tree
internal: build.cmd now takes "test" argument instead of build number
- this will build the default build number without a tag, for build testing
internal: support for expander-groupbox hybrid control
internal: anonymizer utility replaces appearances of user name with variables
- support for URIs
- support for file paths
internal: profile loading is now done in small chunks on main thread instead of separate thread
- this eliminates WPF object ownership issues
- and makes a lot of work arounds in the code obsolete
- deserializer no longer carries a dispatcher
- old profile manager API made deprecated and unimplemented
- profilemanager2 API is now default in configmanager
- Dispatcher is not necessary for synchronous work any more
- using application dispatcher for new asynchronous work
internal: reset monitor work is now on main thread
- this fixes crashes in UI components that get notified when things move
internal: interfaces are now removed from the profile on unload
- specifically, their Profile is set to null, so they can process this event the same as being deleted from the profile
- this means interfaces can keep resources alive as long as the profile is loaded and clean them up when the profile is replaced or Helios exits
- this helps with hardware interfaces like Phidgets
internal: fixed crash bug on profile change via UI
- while profile was running or maybe in the process of starting, changed profile via the UI and managed to call OnProfileStopped without it having been started now ignored
internal: added HeliosXmlModel base class
- this class can be used to directly and flexibly load/save configuration into an object in ReadXml/WriteXml
internal: added HeliosInterfaceWithXml base class
- this interface has an XML model as its configuration data and
- provides all necessary glue
internal: add interface dialog now supports async factories
- interface factories can optionally scan and generate available instances while the dialog is already displayed, allowing for long running searches
- async interface factories called back to shut down after Add Interface dialog completes
internal: plugin projects can now reside outside Helios subtree
- include HeliosPlugin.targets from where ever
internal: rewrote UDP transport to be thread safe
- various thread safety issues resolved by complete rewrite
- fixed a race condition in UDP interface under load: if starting under load, it was possible to process traffic before the protocol handler was installed and crash
internal: implemented modal dialog boxes
- view models can now cause a modal dialog box to be displayed
- implemented share dialog for configuration check
- Modal dialog content can specify a default size and resizability for the dialog
internal: now providing pixels per dip for font sizing
- as required by current Windows API
- no text scaling changes observed, but suspicious
internal: added Application capability flag to start or not start keyboard server connection
internal: provided various interface capabilities as optional interfaces that Helios interface objects can choose to implement
- IDynamicBindings
- IExtendedDescription
- interfaces can now declare what happens if you remove them
- interfaces can now describe what they do
- IHeliosInterfaceFactoryAsync
- IProfileAwareInterface
- IReadyCheck
- IResetMonitorsObserver
- IStatusReportNotify
- IViewportProvider
internal: removed unused command line option to disable touchkit
internal: removed unsafe references to ephemeral layout nodes of avalon dock
internal: added sample program to try to build good example structure
internal: massive refactoring of all DCS-related configuraiton
internal: Helios UI Expander style now supports removing bottom border
- bottom border removed in toolbox expanders for readability
internal: now using windows glyphs from icons font
- instead of drawing our own chevrons and delete button X
- instead of very low resolution legacy menu icons
internal: added verbosity information to status messages
- this allows control center not to display too many info messages
internal: numbered build disallowed if working directory dirty
- this avoids mismatch between build and its tag and also catches missing checkins
internal: InitSubmodules
- as part of prebuild, InitSubmodules is compiled against git library and run to initialize submodules
- necessary since Visual Studio git client does not refresh submodules
internal: factored XAML to use global styles for headings
- improved some layout
internal: changes for style management
- base editor styles are now in resource dictionary in Helios
- this allows plugin dialogs to access them at design time and not rely on styles being applied by Profile Editor
- more dialogs are previewable at design time
internal: support for DCS versions with 5 numbers
- DCS sometimes issues a release with a version number with 5 groups, i.e. a.b.c.d.e, even though windows does not recognize such version numbers
- care must be taken to handle this strangeness where DCS version numbers are processed
internal: no longer fixing version of system packages to try to avoid dependency duplication
internal: build configurations externalized from project files into shared files
- now building Any CPU again (not yet for installed release) to support blend and user code in design instances
- see Build Configurations topic in Wiki
internal: command line build
- default version number changed to 1.6.1000.0
- build.cmd can be run as "build 1.6.BUILD.REVISION"
- this will create an installer that does major upgrade against any former build
- or "build test" to test build a dirty working directory
- all assembly version numbers now set from command line or single location
- extra rebuilds eliminated in Helios project
- removed xcopy post build steps from aircraft and helios dll
internal: build number 1000-1999 now marks Helios as a development build
- permanent releases must be numbered 1.6.3000 or higher
- will stop running 30 days after the last time
TimeStamp.tt
was executed - uses "HeliosDev"
- as the default documents folder (can be overridden from command line with -devdocuments)
- as the product name
- as the app instatallation folder
- using a separate upgrade code to be a different product
- shortcuts are created for Dev builds
- these are separate from regular shortcuts and
- no shortcuts for dev builds are put on desktop
internal: using wild cards to no longer lists template files individually in helios project
- project files now use wildcards so they automatically include all templates or all bitmaps instead of listing each
- project has to be reloaded to recognize newly added files
internal: stopped throwing on high DPI display
- logging an info message instead
- todo tag placed to correctly figure out why this happens
- see issue #151
internal: implemented check in Profile Editor to avoid restoring an old layout
- that will lose new views that have been added to the software
internal: build updates for visual studio 2019 16.5.1
- Visual Studio 19 patches required some project file fixes
- earlier Visual Studio may or may not work any more, so Visual Studio >= 2019 should always be used
internal: Patching plugin created
- contains DCS Monitor Setup
- contains DCS Additional Viewports
- contains generic patching functionality
internal: added private build to fork of google diff match patch
- fixed bug in diff-match-patch
internal: factored composite visual to allow lack of auto bindings
internal: factored TextDisplay base class to allow alternate descendants
internal: all DCS interfaces now use DCSInterface base
internal: removed per-user files from git
- per-user debugging settings and such were checked into the repo previously, now removed and gitignored
internal: rebuilt control center forms
- now built from controls instead of bitmaps
- cleanup and renaming in preparation of export gen
- no more painted labels in preferences
- tighter and controllable packing for more switches
internal: implemented hot reload functionality
- optional alternate way to start DCS Export script
- if running in this mode, the script will reload itself if
- changed on disk, without restarting DCS
- required script HeliosReload.lua is not shipped with Helios and is for developer use only
internal: implemented ALIVE announcement from export Lua
- sent every 3 seconds if no other data is sent by export script
- this is required for Helios to discover the Export script's UDP client
internal: tokenizer now creates extra tokens
- to allow existing unsafe code to work without crashing
internal: fixed RunProfile command corrupting the next/prev data
internal: error reporting from HeliosExport16.lu
- messages are base64 encoded to defeat Helios protocol trying to parse them
- this requires "mime" lua module, which is apparently available under DCS
- if this requirement should become a problem, we can implement Base64encode ourselves easily
internal: contributors are now shown alphabetically
internal: image resources now checked for size
- image manager documentation corrected
internal: fixed incorrect project settings copying too many dlls around
internal: massive changes to control center settings
- all writable properties are now in separate file
- new file is ControlCenterPreferences.xml
- this avoids Profile Editor and Control Center both writing the same unprotected file and destroying all settings
- Control Center also resynchronizes the HeliosSettings.xml on profile start or preflight check to get latest changes that were made in Profile Editor
- control center now synchronizes helios settings file before starting profile
- reloads profile with new settings if any changes were detected
internal: refactored Falcon interfaces into HeliosFalcon.dll plugin
- some images are duplicated in Helios.dll because they are referenced in existing profiles
- allows BMS folks to send each other just plugin for testing
internal: implemented prebuild solution to allow a fresh clone to be built
- without requiring git command line
- builds and runs its own git submodule update utility using libgit2sharp
- creates templates so they will be correctly added to projects when Helios.sln is opened
- removed all configurations except Release|x64 from BuildMeFirst
internal: fixed A-10 vs A-10C controls mess
- images are still duplicated in Helios and aircraft DLL, because old profiles will refer to the images in the location where they were when the template was added to a profile
- profiles do not contain template references, so duplicate templates were removed
- all A-10 named templates and controls are now shown in "A-10C" categories in the Profile Editor, but they retain their true names so that Profiles do not break
internal: installer build:
- SQL support now directly included in installer script
- don't stamp version into Lua: otherwise it will always be considered out of date even if it has the same contents required after upgrade
internal: known folders
- known folders utility has properties for known folders including those that require GUIDs
internal: patch version logic
- if a patch set is selected from My Documents, it does not pull any inherited patches from different versions in the application folder
- this means you can place a full patch set into my documents for a new version of DCS and that is all that will be patched
- if the same exact version of patches also exists in the application installed patches, patches continue to be inherited
internal: control center no longer uses version check dialog
- version check choices require writing settings file, which control center cannot do
- instead, a direct link to the upgrade version can be followed through browse button in console
internal: refactored DCS Interface to allow sharing of sections
internal: added HELIOS_64BIT conditional compile setting
internal: repo to check for new versions is now only built in or from "Repo" setting
There is a Helios setting called "Repo" in group "Helios" that can be added to HeliosSettings.xml (there is no UI) to override the repo from which releases are downloaded. This can be used in the future to jumpstart the process if the built-in repo is wrong.
NOTE: Code from 1.4 Versions after 1.4.2020.0315 is not included in Helios 1.6
1.4.2020.0315 Release
- Fix for some post installation file level strangeness. #204
- Fix for a silent failure due to a problem with RWR Bezel
- Significant restructure of the installer
- HeliosDiag.cmd Data Privacy Notice
- KeraLua update to 1.0.29.0
1.4.2020.0308 Release
- Regression fix for change in Lua 5.3 interpreter causing bindings to return integer #201
- Regression fix for rotary switch not working for the last position
- Installer change to make Iris and Keyboard Receiver delivery optional
- Improved diagnostics during initialisation
- New shortcuts for Control Center and Profile Editor to start with loglevel debug
- Removed Visual C++ Runtime dependency
- Control Center Version Check now checks GitHub and not gh-pages. Also it has a better "Reminder" mechanism.
Version check added to "About" dropdown in Profile Editor #200
1.4.2020.0226 Release
Huge "Shout out" to derammo who was this release's primary contributor. 1.4.2020.0226 benefits from his many improvements and bugfixes.
- BMS F-16 - Altimeter fixes Added altimeter pressure reading fix for _airPressureDrum.Value only can accept 4 digits Added Altimeter Calibration reading from FlightData2 Support barometric readings of altitude and pressure Use math.abs to get absolute value Read values from flightData2 to support barometric altitude and calibrated airpressure
- Keyboard Interface changes Bug relating to sending keys "RETURN" and "ENTER" fixed. Both of these now send the ENTER key on the right of the main keyboard. New "NUMPADENTER" sends the Enter key on the numeric keypad. This potentially needs profiles sending "RETURN" which previously activated the numeric pad enter to be changed to send "NUMPADENTER" instead #178 New feature to force QWERTY keyboard keycodes to be sent to programs (such as BMS) which only understand keycodes and not keystrokes. #164
- A-10C fixed button command for MFCD brightness down Corrections to the values used by the interface for VHF AM Radio
- Bug fix for orphaned triggers and actions when there is a change in interface #173
- UDP traffic logging now only for loglevel Debug
- Fix for Reset monitors Bug where bindings don't move to the correct monitor #177 & #117
- Fix for CLR20r3 crash on release check when there is no internet connection #163
- Fix for crash on startup when Helios Settings file has been corrupted #106
- Fix for Text Display font size being incorrect when textbox is resized #146
- Fix for ArgumentOutOfRangeException on HeliosTextBox #158
- Installer changes to re-req the Visual C++ 2015-2019 Redistributable Runtime.
The installation is only attempted when using "Helios setup.exe". 14.24.28127.04 is the minimum level. - Helios is now an x64-only offering
- HeliosDiag.cmd is delivered to aid the collection of diagnostic information
- Package Updates:
- HidSharp 2.1
- KeraLua 1.0.2.6
- NLua 1.4.29 (including Lua 5.3)
- New Custom Drum and Custom Gauge controls added
- Fix for Reset Monitors: on reset from 5 to 3 screens, all controls lost #194
1.4.2019.1005 Release
-
A-10C Interface
- New devices for AN_ALR69V, TISL, DVADR and ACCELEROMETER
- A-10C Interface completed, improvements in GuardedSwitch and CustomGauge, and new rotation option
- Fixed:
- "101", "IFFCC", "Ext Stores Jettison", fixed output buttom number.
- All TISL values changed from IFFCC to the new device TISL.
- Corrected the output buttons number of all IFF functions for the correct ones.
- Added one missing position to Intercom, Transmitter Select Dial.
-
M2000C Interface
- What’s new
- Improvement of guards on the Test and LG Panels: Made all 4 guards on this 2 panels working
- Improvement of the Tacan Panel: add the 2 potentiometers and made them continuous and working
- Improvement of VOR/ILS Panel: added the 2 potentiometers and made them continuous and working and made the Mode Selector working
- Improvement of the HSI Panel: all the needles are working
- Known issues
- Fuel Panel: the Fuel CrossFeed Switch doesn’t work, the two toggle switches don’t work (seem not to be used in DCS)
- Master Caution lights Panel: still not working despite the modification with IndicatorPushButton. Seems the id is not the good one when clicking on the 2 indicators ?
- HSI Panel: the potentiometer doesn’t work properly
- ECM Box: the potentiometer is not working
- What’s new
-
Controls:
- Custom Gauge, chages to improve workflow and visuals
- Guarded switch, added a new image for open state
-
General:
- Mousewheel support for some rotaries and pots in Control Center
- Added a new rotation option on the editor: 180º Turn
-
Interfaces DCS common: New DualRocker function, work like the normal rocker but this one return the actual arg value form DCS, too.
Bug Fixes:
- Fix for duplicate bindings #156 problem with autobindings
1.4.2019.0930 Release
-
M2000C Interface
- Added the Fuel Panel with the 7 empty tanks indicators, the refueling indicator, the left and right neddle gauges and the JAUG and DETOT drums
- Added the PPA Panel with the 8 indicators on the buttons, the 4 buttons and the 5 switches
- Added the PCA Panel with the 17 indicators on the buttons, the 11 buttons, the 2 switches and the guard on the Jettison switch
- Added the PCN Panel with the 9 indicators, the 9 indicators buttons, the 10 keypad buttons and the Parameter selector working only from DCS to Helios
- Added the TACAN Panel with the frequency display and the 2 switches (X/Y Mode and Mode Select) working only from DCS to Helios
- Added the VOR/ILS Panel with the frequency display and the 2 switches (Power and Mode Select)
- Added the Engine Sensors Panel (still in beta) with the 2 needles and the drum
- Added the HSI Panel (still in beta) with the drum, the 4 stop flags, the 2 needles, the green needle, the mode needle, the compass rose, the switch and the potentiometer
- Added the ECM Box with the potentiometer and the 3 switches
- Added the INS Panel with the 2 switches
- Added the Test Panel with the 4 indicators, the 3 switches and the 3 guards on the switches
- Improvement of the Engine Panel by adding the 2 guards
- Improvement of the Landing Gear Panel by adding the guard for the gun safe switch and the emergency landing gear lever
- Improvement of the pictures of the cockpit to allow the new panels to work fine
- Improvement of the Master Caution lights Panel, trying to make the 2 indicators clickable with the same solution as the PCN Panel
- Miscellaneous: Added the Post Combustion Indicator, the 2 Fire Warning Indicators, the Demar Indicator, the 5 RWR indicators, the AOA needle
-
Profile Editor now polices only adding one UDP interface.
-
AV-8B Interface Elements
- Autobinding Master Arm Panel added
- Autobinding Gear and Flaps panel added
- Autobinding Gear Indicator Panel added
- Autobinding H2O Panel added
- Autobinding Threat Indicator panel added
- Autobinding RWR control panel added
- Autobinding Cockpit as a single control
- Autobinding AV-8B Radios now use text displays saving viewport exports
- Known issues: there has had to be some breaking changes, so profiles may not work completely as they once did, but all new items are autobinding so hopefully can be fixed easily.
-
Small change to UFC font to allow AV-8B decimal point
1.4.2019.0908 Release
- Adjustments to the method to identify the scripts directory
- Graphical improvements to AV-8B SMC, FQIS, ODU, EDP, UFC, MFD including support for automatically
binding the controls to the AV-8B interface if it has been added.
- Note: We've tried to limit any beakages, but there are certain to be some issues with existing AV-8B profiles.
- AV-8B ODU and UFC text based displays - to avoid viewports for these devices
- Fix for problem with new Export.lua not sending data after the first set of sends
- Refactoring to move images and templates from Helios.dll into aircraft specific dlls. Any profiles which make use
of images for M2000C, AV-8B or F/A-18C embedded within Helios will have to change references
from
{helios}\Images\aircraft\xxxx.png
to{M2000C}\Images\xxxx.png, {AV-8B}\Images\xxxx.png, {FA-18C}\Images\xxxx.png
- New Autobinding Caution Panel for Mirage 2000C
- Updates to the Interfaces for A-10C, F/A-18C, AV-8B, and Mirage 2000C to improve integration with the different types of DCS World installations
1.4.2019.0901 Release
- Profile Editor now polices only adding only one UDP interface.
- AV-8B Autobinding Cockpit as a single control
- AV-8B Radios now use text displays saving viewport exports
- A-10C DLL added and images can be referenced by
{A-10C}/Images/xxxx.png
Shadowman's M2000C Status as of 31st August 2019
* Caution Panel: What is working: all the indicators; all the switches
* Master Caution Lights Panel: What is working: 2 red and yellow PANNE indicators
* Start Engine Panel: The 5 switches work
* Landing Gear Panel: the 3 switches, the landing gear lever, the emergency jettison lever and all the indicators are working
* Other: Testing is incomplete, but more of the switches should work.
* Known Issues
* Master Caution Lights Panel: this indicator has to be clickable to aknowledge the audio alarm and light off the 2 indicators
* Start Engine Panel: Temporarily removed the two red Guard Covers because we are not able to use the switches/button under
* Landing Gear Panel: two red Guard Covers removed; the emergency landing gear lever : it seems there is nothing coming from DCS
and need to work a little on the RotarySwitch in CompositoVisual.cs
1.4.2019.0823 Release
- Adjustments made to templates for F-16 gauges, parts, etc in toolbox
- Empty panel template created for toolbox
- Helios exports.lua plays nicely when in a chain of exports.
- Breaking backwards compatibility on the Hornet UFC (*** you'll need to re-add the F/A-18C Export.lua interface ***)
- Bug fix for Hornet UFC font (now 1.2)
- Bug fix for datastream encoding in non-Latin locales.
- Bug fix for 10 second delay on profile start introduced in 1.4.2019.0616
- Special Guest submission from Jabbers.... Control Center size independent of the Windows scaling value - Let us know what you think
1.4.2019.0616 Release
- Fixed bug stopping both Profile Editor and Control Center not running at the same time
- Extended the 0611 change log.
- Changed the Helios Update process and version checking
- Reduced the nagging frequency when there is a new release available
- Fix for Control Center window positioning not working.
1.4.2019.0611 Release
- Original Helios User Guide refreshed and included
- GNU LESSER GENERAL PUBLIC LICENSE file added to the distribution
- Returned missing BMS F-16 images
- New control - Potentiometer with Translate and rotate. (Rasmaninoff)
- New custom gauge providing standard way to create a new suction gauge with only one needle (Capt Zeen)
- Rectangle Fill control used to create instruments like the Su25 Fuel bars and Mi-8 doppler bars (Capt Zeen)
- Kneeboard control added (Capt Zeen)
- Black Shark Interface changes(Capt Zeen)
- Corrected Device numbers: PPK, ILLUMINATION INTERFACE, SIGNAL_FLARE_DISPENSER, STBY_ADI, PSHK7, ZMS_3, K041
- Added ACCELEROMETER device 61
- Added CLOCK device 29
- modified DH/DT device to NAV_SYSTEMS
- modified Abris power swith from 1 0 to 1.0 0.0
- Added plafond switch
- Added lightimg auxiliar panel switch
- Swapped values in INU fixating method swith from 1 to 0
- Change device to the Datalink Power switch to DATALAINK
- Corrected Pitot AOA switch
- Corrected Pitot Hat RAM switch
- Swapped values in Engine rotor anti-ice switch from 1 to 0
- Added Baro QFE Knob encoder
- Added lighting back panel switch
- added lighting NAVG switch
- added lighting main panel switch
- Added lighting ADI HSI switch
- Added UV26 Messages display
- Added PVI message digits
- Added EKRAN messages displays
- Modified and corrected the Magnetic variation function
- Modified device on Accelerometer Reset button to ACCELEROMETER and BUTTON_1
- Corrected AC/DC Inverter switch from 01.f to 0.1f
- Corrected fire extinguisher work/off/test guard values to float
- Corrected EEG Power Turbine Test guard to floats
- Magnetic variatoin selection btn_1 is a rotary encoder now
- Latitude Correction btn_1 is a rotary encoder now
- Added test backup adi button
- Added Backup ADI Longitudinal Deviation Bar
- Added Backup ADI Lateral Deviation Bar
- Added ambient temperature
- Corrected UV26 power guard and Test guard buttons numbers
- Corrected System Bit selector to rotaryswitch
- Configurable reflectivity for front Glass of IFEI (derammo)
- Control Center Preference added to stop secondary mouse events that some touch screens generate afrter a touch event (derammo)
- Update Phidgets to version Phidget21 2.1.9 Build date Feb 15 2018 (KiwiLostInMelb)
- Fixed Phidgits crashing on startup and closure (KiwiLostInMelb)
- Fixed Phidgit's to handle out of range acceleration and travel entries entered in the Profile Editor (KiwiLostInMelb)
- Added events for startup, connect aircraft and shutdown - used for re-centering real guages before shutdown to a known state - needed with Phidgits interface as it doesnt remember state across restarts - eliminates broken needle issues. (KiwiLostInMelb)
- Added Key Press Receiver program (Runs on PC which is running DCS) to issue key presses on DCS machine served from Control Center running on a different PC (KiwiLostInMelb)
- Added ability to send key presses to a different PC using TCP on port 9088 (KiwiLostInMelb)
- The usual minor bug changes
1.4.2019.0317 Release
- TextDisplay Control Added
- Hornet UFC updated to remove the need for a viewport
- Hornet IFEI updated to remove the need for a viewport
- Auto-binding for some devices to their intended interface
- MS33558 Font incorporated (c) Derek Higgs 2000 which some sites claim is postcardware but I was unable to find an address / email
- Seven Segment font incorporated (free for personal use) http://www.kraftilab.com/portfolio/7-segment-display-font/
- Reimplement the version checking for Control Center using HTTPS
- Minor bug fixes
- Distributing Iris Screen Exporter for people who run Control Center remotely (it is in the Helios directory in My Documents)
- Code corrected to identify destination directory for DCS, Betas and Alphas
- Stricter version numbering which breaks the installer's version checking so previous Helios needs to be uninstalled manually.
1.4.2018.1008 Release
- F/A-18C Interface
- DCS Generic interface added. This is an enabler for complex aircraft profiles from authors such as Capt Zeen.
- Prototype "Simple" interfaces for the Mirage 2000 and Mi-8
- Guard Switch (without Toggle) added to tool box controls
- A-10 NMSP and UFC Toolbox contents moved into "A-10"
- Mi-8 ADI gauge added
1.4.2018.0924 Beta 3 Release
- AV-8B Interface
- MiG-21Bis Partial Interface by Cylution
- Profile Editor zoom funtionality restored
- Various Profile Editor bug fixes
- New file extension for profile layout
1.4 Un-released (Gadroc Open Source)
- Switch to NuGet for dependency management
- Switch to open source license (GPLv3)
- Upgrade to AvalonDock 2
- Remove all traces of DRM
- Fix A-10C Master Caution Template
- Merge all "Gauge Packs" into main Helios assembly
- Upgrade Lua version
TODO
- Switch from Old Managed DirectX so SharpDX
- Move images out of assembly into filesystem
- Split Helios Assembly into Helios and HeliosUI (Move all dependencies on WPF to HeliosUI)
- Fix save/load crash bug on EOS servos
- Merge all DCS export.lua into one
- Fix value interpretation on lua expressions (Frank bug)
- Add exe scanning for CMSC, CMSP, Radio and PUI-800 (from forums)
1.3 Release - Build 191
- Fix crash when renaming analog inputs on EOS Devices
- Fix intermitant crash when trying to send data to EOS bus
1.3 Release - Build 190
- Attempt to fix always on top with DCS World 1.2.4
1.3 Release - Build 189
- Added "Autopilot - On Indicator" to BMS interface
- Fixed Phidgets Servo to properly configure and save servo type
- Update to EOS Bus v2
- Updated Phidgets.dlls
- Added Servo, Stepper and LED Output support to EOS bus
- Updated to properly detect DCS World 1.2.4
- Removed last references to SCSimulations (Install folder, Start menu folders)
- Removed last of license management code
- Fixed phidgets.dll in installer
- Fixed input calibaration save/load when output values are in reverse order
- Fixed setup for phidgets servo's using userdefined settings
1.2 Release - Build 176
- EOS Interface Enhancements
- Profile Editor: Added uncaught exception handling
- Control Center: Added uncaught exceptoin handling
- Increased EOS Direct scanning speed
- EOS Interface Editor: Added board active indicator
1.2 Release - Build 175
- Added EOS Interface Module
Changes
- Resolved bindings not showing up on Phidgets Servo Board
1.2 Release - Build 173
Changes
- Composite Controls (MFDs): Input bindings now load properly from a saved profile.
1.2 Release - Build 172
Changes
- A-10C Gauge Pack: Fixed colors on ADI ball
- A-10C Gauge Pack: Added Backup ADI
- Profile Editor: Moving controls up and down in the display order now reflects immediately
- General: Added ability to toggle "always on top" behavior on monitor properties
- Phidgets Servo Board: Fixed crash on exit if servo poperties where open
- Phidgets Servo Board: Fixed crash when servo was set outside it's limits.
- Profile Editor: Prevent names from having control characters added to them.
- Profile Editor: Add tool tip explaining validation errors.
Known Issues
- Old profiles may contain names with periods which cause bindings to be lost on save/load.
- DCS Black Shark Interace: VHF-1 & VHF-2 Power switches do not work as input bindings (bug in BlackShark 1.0.2 not Helios)
1.2 Release - Build 168
- Controls: Added Guarded Toggle Switches
- Profile Editor: Added ability for all controls to be rotated
- Profile Editor: Depricated Orientation setting on Toggle Switches (Existing profiles will load properly but new controls should use rotation)
- Profile Editor: Removed all "horizontal" control templates in favor of using rotation
- Profile Editor: Fixed crash when you create a zero width or height control
- Installer: Modified installer to check for both .Net 2.0 and Managed Direct X
- DCS Balck Shark Interface: Fixed EKRAN text extraction
- Profile Editor: Misc corrections in help text
- DCS FC2 Interface: Added support for 3rd Party scripts
- DCS Black Shark Interface: Fixed HSI rotary encoders (may require rebinding in your profile).
- DCS Black Shark Interface: Added fuel meter power switch
- DCS Black Shark Interface: Added Shkval Wiper Switch
- DCS Black Shark Interface: Added Anti-Collision Beacon switch
- DCS Black Shark Interface: Added SAI power switch
- DCS Black Shark Interface: Added rotor tip lights switch
- DCS Black Shark Interface: Added formation lights switch
- DCS Black Shark Interface: Reversed switch positin on laser range finder. (Require binding adjustment for existing profiles)
- DCS Black Shark Interface: Added fire extinghuiser controls
- DCS Black Shark Interface: Fixed AC/DC Inverter switch to be three way switch
- DCS Interfaces: Fixed guard on three way switches
- DCS Black Shark Interface: Added all indicators for PVI-800 Control Buttons
- DCS Black Shark Interface: Added LWS Power Switch, Self Test Button and ready lamp
- DCS Black Shark Interface: Added UV-26 power and self test switches
- DCS Black Shark Interface: Added VMS BIT Button
- DCS Black Shark Interface: Added PPK-800 System Prep panel switches
- DCS Black Shark Interface: Added INU Power/Heat Switches
- DCS Black Shark Interface: Added EKRAN/Hydraulics Power Switch
- DCS Black Shark Interface: Added Engine Power Indicator Export
- DCS Black Shark Interface: Added Engine/Gearbox Oil and Temperature data
- DCS Black Shark Interface: Added swing load auto / manual switch
- DCS Black Shark Interface: Added Gearbox oil reduction switch
- DCS Black Shark Interface: Added R-800 VHF-2 Test Button
- DCS Black Shark Interface: Added Magnentic Variation and Latitude Entry Controls
- DCS Black Shark Interface: Fixed Datalink ID and Master Mode Switches
- Falcon Interface: Added browse button for key file
- Falcon Interface: Fixed so callback list refreshes after changing keyfile
- Falcon Interface: Added BMS to falcon type selection
- Control Center: Removed Transparency from main window
- Control Center: Removed Transaprency from windows if background color is set.
- Profile Editor: Added ability to hide all controls by default
- Profile Editor: Toolbox Icons no longer respond to clicks.
- DCS A-10C Interface: Fixed ILS Volume and Khz frequency knob issues
- Profile Editor: Fixed arrow key movement bounds for rotated panels and controls
- Profile Editor: Fixed paste bug on checking bounds for rotated panels and controls
- Profile Editor: Removed annoying rectangle in profile explorer
- Four Way Hat Switch: Fixed hit boxes when switch is scaled.
- Profile Interface: Added action to launch an external application.
- Control Center: Added minize button, made power switch close application.
- Profile Editor: Fixed scaling of rotated panels and contorls
- Profile Editor: Fixed scaling of grouped items by corners other than bottom left
- Profile Editor: Fixed Profile Preview bug where it would mis-display monitor rectangles in some scenarios
- Profile Editor: Added reset monitors interface to allow easy switching of monitors including scaling
- Falcon Interface: Fixed light bit export for BMS 4.3.2
- DCS Interface (A-10C / Black Shark): Default axis/level items to increase acuracy of data.
- KA Gauge Pack: Fixed radar altimeter needle.
- Phidgets Interface: Added full support for Phidget Stepper controllers
- Phidgets Interface: Added beta support for Phidget Servo controllers (untested)
- Falcon Interface: Fixed nozzle position in BMS
- Falcon Interface: Fixed ftit output in BMS
- Falcon Interface: Fixed Indicated Altitude in BMS
- Control Center: Removed white border
- Profile Editor: Fixed controls not redrawing in editor
- Control Center: Added do not display again for Aero warning
- Profile Editor: Add working indicator to monitor reset
- DCS Intefaces (A-10C, KA-50, FC2): Removed log file from export.lua
- DCS A-10C Interface: Fixed UHF Radio Bindings
- DCS A-10C Interface: Added UHF Radio cover bindings
- DCS Black Shark Interface: Added support for Black Shark 2
1.1 Release - Build 146
- Fixes loading of profiles which have multiple DirectX interfaces of the same type
1.1 Release - Build 143
- DCS A-10C Interface: Fixed TACAN tens dial
- DCS A-10C Interface: Fixed Fire Bleed Air Detect button
- Profile Editor: Fixed crash bug when removing interface while it's open in the editor
- Profile Editor: Fixed error preventing multiple directx controllers with the same name from being available
1.1 Release - Build 142
- Profile Editor: Fixed Rotary Encoder to rotate when changing initial position
- Helios Control Center: Added addition log message at debug level
- DCS A-10C Interface: Fixed parsing error on non-english systems
1.1 Release - Build 140
- Profile Editor: Fixed bug where wrong data was saved in layout
- Profile Editor: Fixed crash on reload bug when invalid name is saved in layout
- DCS Interfaces: Updated Export lua to support broadcast addresses (untested)
- DCS A-10C Interface: Fixed ILS Window readout
- DCS A-10C Interface: Added IFF Reply and Test lamp
- DCS A-10C Interface: Fixed Emergency Flood switch spelling (will require rebinding for this control)
- DCS Black Shark Interface: Fixed HSI range export
- DCS Black Shark Interface: Added PUI Station lamps to export
- Fixed bug on profile load preventing some profiles from reloading
1.1 Release - Build 133
- DCS Black Shark, A-10C, FC2 Interface: Added ability to remove Helios config
- DCS Black Shark, A-10C, FC2 Interface: Added ability manually set game path
- DCS Black Shark Interface: Added PUI-800 Station and Ammo displays
- Control Center: Added Donate Now button.
- Profile Editor: Added Donate Now menu item.
- Control Center: Added automatic version checking on startup.
1.1 Release - Build 132
- KA-50 Gauge Pack: Accelerometer
- KA-50 Gauge Pack: Radar Altimeter
- DCS Black Shark Interface: Added clock data triggers
- KA-50 Gauge Pack: Clock
- Fixed Hidden panel controls not properly redrawing when shown
- KA-50 Gauge Pack: EGT
- DCS A-10C Interface: Added PhantomMonitorFix
- Removed 10 minute time limit
- Fixed crash bug on cut & paste
- Added Phidgets Advanced LED board interface
- KA-50 Gauge Pack: ADI
- KA-50 Gauge Pack: Tachometer
- KA-50 Gauge Pack: Fuel Gauge
- DCS Black Shark Interface: Fixed tank fuel qty exports
- Phidgets Advanced LED: Fixed set brightness to automatically turn on led
1.1 Release - Build 124
- KA-50 Gauge Pack: Completed HSI
- DCS Black Shark Interface: Fixed HSI Commaned Course and heading exports
- KA-50 Gauge Pack: Blade Angle
- Fixed template manager causing Helios to crash
- Updated shortcut creation in installer
- Added KA-50 Gauge Pack to installer
- DCS Black Shark Interface: Added Commanded Altititude to Baro Altimeter output
- KA-50 Gauge Pack: Barometric Altimeter
- Added VC 2010 Runtime to installer
- Modified installer to not register Development version for file extensions
- KA-50 Gauge Pack: Completed Rotor RPM
- Added warning dialog for disabled Aero glass
- KA-50 Gauge Pack: Completed IAS
1.0 Release - Build 120
- Resolved new installer issues causing crash on start for some machines
- Installer changes to use regular shortcuts
- Additional fixes for nested panels and TouchKit
- Resovled text scaling while zooming
- Resovled F16 MFD corrupting profiles
- Resolved touckit issues with hidden panels
- Resolved a cut & paste crash bug when cut controls had bindings to it's parent panel
- Fixed Falcon Allied Forces export bug which prevented data export
- Added RWR Bezel for A10
- Fixed SAI pitch inversion
1.0 Release - Build 113 - 3/22/2011
- Fix for installer error causing Profile Editor to crash
1.0 Release - Build 112 - 3/21/2011
- DCS A-10C Interface: Reversed SAI Bank direction
- Fixed TouchKit support broken in build 111
1.0 Release - Build 111 - 3/21/2011
- Optimized for fewer screen redraws
- Added configuration option to adjust number of updates per second from DCS based simulations.
- DCS A-10C Gauge Pack: Resovled stuck key issue with MFDs
- Added full multi-touch capability with mutli-touch capabile touch screeen you can press and hold mutliple buttons or switch more than one switch.
- Fixed panel rotation so it works on first profile start
- Changed the way rotary switches and encoders are scaled when not uniformly scaled
- DCS A-10C Interface: Added Auxiliary Landing Gear bindings
- DCS A-10C Interface: Added Seat Arm Handle bindings
- New installer
- Consolidated all gauge packs into main Helios install.
- Small performance improvment in packet parsing
- Changed rendering loop for better performance and less laggy needles
- DCS Black Shark Interface: Fixed duplicate control issues with ARK-22 Antenna/Mode switches
- DCS Black Shark Interface: Fixed duplicate control issues with PVI Datalink Power Switch and PVI Brightness axis
- Fixed Helios so it will return itself to the top most windows every 3 seconds.
- Fixed lua script values becoming strings instead of numeric - No really I think I really fixed it this time
1.0 Release - Build 103 - 3/9/2011
- Fixed DCS switches to properly pass values as numbers instead of string for lua functions
- Added additional error trapping for DCS configuration
- Add additional error trapping around Add Interface dialog
- Disabled Add button on Add Interface dialog until an interface is selected
- DCS A-10C Interface: Fixed engine temperature to be more accurate
- DCS A-10C Interface: Fixed altimeter acurracy around rolling thousands altitude
- Digital Counters for gauges now properly roll digits so they are easier to read for multiples of ten being displayed
- DCS A-10C Interface: Added SAI pitch trim
- DCS Black Shark Interface: Fixed indicator push buttons to work correctly
Experimental Add
- DCS Black Shark: Added UV-26 CMD Panel
- DCS Black Shark: Added PVI-800 Control Panel
- DCS Black Shark: Added PVTz-800 Data Link Panel
- DCS Black Shark: Added Autopilot panel
- DCS Black Shark: Added ADF ARK-22 panel
- DCS Black Shark: Added R828 Radio Panel
- DCS Black Shark: Added Signal Flare Panel
- DCS Black Shark: Added R-800 Radio Panel
- DCS Black Shark: Added Targeting Mode Control Panel
- DCS Black Shark: Added Engine Start-Up Panel
- DCS Black Shark: Added Intercom Panel
- DCS Black Shark: Added APU Panel
- DCS Black Shark: Added Electrical Panel
- DCS Black Shark: Added Fuel System Panel
- DCS Black Shark: Added Comm Power panel
1.0 Release Candidate 4 - 2/28/2011
Bug Fixes and Changes
- Fixed logging bugs causing crashes
- Changed default log level to Warning instead of Debug
- Added command line flags to disable touchkit integration (-t|--NoTouchKit)
- Added command line flags for log level (-l|--LogLevel [None | Error | Warning | Info | Debug])
- Fixed crash when clicking start when no profiles where available
- DCS A-10C Interface: Moved 3rd Party Script to end of Export.lua
- Added window triggers to all VHF Radio dials so you no longer have to format them in LUA Script
- Fixed DCS A-10C radio rotaries for final DCS A-10C release
- Fixed OpenFalcon crash when using shared textures
- Fixed background fill when running profile
- A-10C Gauge Pack: Fixed ADI Pitch Steering Bar and Glide Slope Indicator direction
- A-10C Gauge Pack: Fixed ADI Glide Scode Indicator scale
- A-10C Gauge Pack: Fixed Engine RPM needles
- Improved debug logging.
- DCS A-10C Interface: Added SAI value exports
- DCS A-10C, BS and FC2: Set export back to max of 30fps
Experimental Adds
- DCS Black Shark: Added Magnetic Compass triggers/actions
- DCS Black Shark: Added Overhead Panel triggers/actions
- DCS Black Shark: Added Landing Gear Panel triggers/actions
- DCS Black Shark: Added Datalink panel triggers/actions
- DCS Black Shark: Added Laser Warning Receiver triggers/actions
1.0 Release Candidate 2 - 1/28/2011
- Settings and preferences are now store in My Documents Helios, so they will not be lost during upgrades
- Fixed Cut and Paste display order issues
- Fixed so you can't drag a control with negative top or left co-ordinates
- Fixed crash when opening second instance of Helios Control Center
- Fixed saving of panel rotation
- Fixed saving of monitor background fill
- Fixed reset monitors to not put panels outside monitor border
- DCS A-10C Interface: Added Secure Voice Panel, IFF Panel, Emergency Flight Control Panel, Intercom Panel
- DCS A-10C Interface: Emergency Flood switch is fixed
- DCS A-10C Interface: Fixed UHF Mode / Frequency Selector bindings