7.8 Changes - boschmotorsport/WinDarab GitHub Wiki
-
WinDarab 7.8 Changes
- Outing Report - Virtual Channels
- Oscilloscope - Quick Expand an area
- Calculation of Lap Statistics Changed
- File Compression
- WinDarab supports opening WinDarab files with multilogging option
- BMS2Api - Trackmap/Segments support added
- New features added to lap- and segment-based math functions
- The caption of all views can be edited
- Math Channel - Explicit control of interpolation
- Telemetry - Refactoring the handling of disconnect/connect from/to WDServer
- Oscilloscope - Settings dialog is coming back
In the outing report settings (Options Tab) a new feature is added. If enabled, the outing report provides a virtual channel for each configured column.
For each column the outing report creates:
- A virtual channel with lap-based results
- A virtual channel(s) with segment-based results, if racetrack segments are evaluated
Important: If outing report is configured to evaluate segments, the “lap” row shows the maximum or minimum of the single segment values. The lap-based virtual channels contains the statistic value over the whole lap, which is not the same as the “lap value” in the outing report table!
The user can expand a single area of an oscilloscope to the whole Oscilloscope display area while the other areas are 'hidden'
Hotkey:
- Use 1,2...-0 on the keyboard.
- 'Z' Shows a context menu with all 'zoom' operations
Replaced Hotkeys:
- Zoom Tag: T → Z, T
- Zoom Marked: M → Z, M
- Zoom Segment: S → Z, S
The functions to calculate lap statistics were changed.
- They don’t include interpolated values at the lap boundaries any more.
WinDarab only evaluates the recorded samples within the lap boundaries (LapTimeBegin <= time < Lap.TimeEnd)
WinDarab supports WinDarab files using channel data compression
Starting with WinDarab v7.08.003 WinDarab files can use a format extension allowing WinDarab/DataLoggerImport to compress channel data in WinDarab files.
- This reduced the WinDarab file size by ~ 70-90% of the uncompressed size.
Important:
- Starting with WinDarab v7.08.003 files can take advantage of channel data compression.
- Both, WinDarab and DataLoggerImport, have options in their program settings to DISABLE data compression. The default is ENABLE data compression!
- Starting with WinDarab v7.07.036 support to open WinDarab files using data compression was added. Nevertheless WinDarab v7.07 cannot create compressed files.
- If users/teams start using v7.08 but need backward compatibility to WinDarab v7.07.035 and before, they have to DISABLE data compression.
- Upcoming dataloggers devices / setups support a synchronized data recording with multiple dataloggers in a single car. The files generated by these devices contain a multilogging identifiers.
- If such files are selected and opened, WinDarab detects the multilogging identifiers and arranges the files accordingly:
- All files from the same logging device are opened as an internal linked file group (or single file, if it’s only a single file)
- The resulting internal files for each logging device are then combined to a single larger file:
- If channels names are duplicated the channel of the first logging device “wins”
- Laptriggers of all member files are unioned.
Note: The implementation is preliminary as a proof-of-concept and and especially to test the results of multilogging and how to combine and handle the data.
- The code for trackmap and segments was refactored (separation of trackmap data and trackmap UI implementation) and the trackmap data implementation was moved to the common data-access-layer sources. With these changes BMS2Api now supports the use of all trackmap- / segment-based operations! E.g. the track length normalization of distance/lap distance channels.
Now evaluation of a subexpression is supported instead of evaluation a channel only:
LapAve((speed_wl + speed_wheel_r) / 2)
An optional argument was added to all lap- and segment-based math functions:
LapAve(<channel>)-> LapAve(<expression>[;<condition>])
Only values are taken into account, if the condition evaluates to true.
Note: Because these math function have to evaluate their subexpressions independently from the calculation of the math channel, the use of variables within the arguments is not allowed!
The caption of all views can be edited individually (see context menu of the caption or in the ribbon category Windows)
Normally the channel data is accessed in the same way that WinDarab draws the signal on the screen (Analoge, Digital, Dots, …).
- That means the channel data is interpolated between to timestamps (analoge) or just the last sample value is taken (Digital, Dotted).
So, the result of the math function depends on the current signal kind the user has selected.
This can be an issue in the reliability of math functions.
- Because of this we decided to add an optional appendix to channel names, which let the math formula creator control how the channel data is accessed by the math function:
{ChannelName:a} to get interpolated values
{ChannelName:d} to get the last sample value
{ChannelName} to get the value depending on the current signal kind
- Because of several problems in the past regarding the stability of WinDarab when the connection to WDServer is lost and reestablished, we decided to overhaul the handling of disconnect/connect from/to WDServer.
- Since the beginning of telemetry support WinDarab tried to preserve and synchronize the objects of a telemetry connection when reconnecting to a WDServer after a temporary network failure. But this approach was never 100% stable but caused from time to time known and new issues.
- Now, we overhauled the implementation and discarded the approch of keeping and synchronizing existing objects. Now, we create a new and complete set of the telemetry stream objects and replace the outdated telemetry stream by the new stream.
- After customers asked for the oscilloscope settings dialog, a new implementation of the former dialog is started.
Note:
- The dialog is still “under work” and provided for testing!
- Digital/Analog/Dots does not appear in this dialog → it is a Channel setting not an Oscilloscope setting!