Commit Graph

34 Commits

Author SHA1 Message Date
Ale Martinez
7e77dd552a Include first record in exported CSV files with All Data
Fixes #3396
2020-04-13 13:29:19 -03:00
Erik Botö
d1e2f38e07 Add support for VO2 measurements and VO2Master VM Pro
Add support for a generic set of VO2 measurements:

* Respiratory Frequency
* Respiratory Minute Volume aka Ventilation
* Volume O2 consumed
* Volume CO2 produced
* Tidal Volume
* FeO2 (Fraction of O2 expired)
* Respiratory Exchange Rate (calculated as VCO2/VO2)

Make the new metrics usable in TrainView, and store VO2 data as XDATA
using the same pattern as for HRV data.

Add support for VM Pro by VO2Masters

The VM Pro is a BLE device, so support is added in the BT40Device class.
Since the device requires some configuration in order to be usable, such
as the size of the "User Piece" a special configuration widget is added
and shown in a separate window when the device is connected.

This window is also used to set a number of useful settings in the
device, and to show calibration progress. There's also a detailed log of
the status messages shown, and this can also be saved to file.

Allow notifications from RealtimeControllers and devices in the
notification area of Train View. In order for devices to display
information in the notification field in TrainBottom the signals need
to added and propagated from from device level via RealtimeController
to TrainSidebar and finally TrainBottom.

Fix an issue with multiple BT40Device per actual device

Currently on MacOS there will be multiple BT40Device per actual device,
since the QBluetoothDeviceDiscoveryAgent::deviceDiscovered() signal is
emitted multiple times with e.g. updated RSSI values. Avoid this by
checking the previously created devices first.

MacOS doesn't disclose the address, so QBluetoothDeviceInfo::address()
can't be used there, instead deviceUuid() is used which is instead only
valid on MacOS.
2020-02-03 12:00:08 +00:00
Alejandro Martinez
0b0f99889e Enable import of XDATA series from CSV files (#3179)
* Enable import of XDATA series from CSV files
Since XDATA series are preserved across merges this allows to add
arbitrary XDATA series to any activity.
Sample WEATHER file is included for testing.
Sample swim file is also included, once imported set Sport=Swim and use
Fix Lap Swim with pool length=25 to rebuild standard series and laps
Fixes #2010 item 4.

* FixLapSwim - Alternative way to store pauses in XData
Some devices s.t. Moov Now generates a CSV with REST field
after each length. FixLapSwim now can use this alternative
way to express pauses and to mark end of laps.
This is intended to be used together with XDATA csv import.
A Moov Now csv file modified to comply with our format is
added as an example to test folder.
2019-10-10 23:16:22 -03:00
grauser
8820817d0f CSV : iBike remove debug line 2019-05-23 21:54:01 +02:00
Oleksiy Mishchenko
08a704ec1b No reason to skip a datapoint if DFPM is null 2019-05-23 21:51:59 +02:00
Oleksiy Mishchenko
fbb6f68f81 iBike CSV: If Timestamp stream is present, take the first one as the
activity start time.

It is out of sync when merged with external GPS data.
2019-05-23 21:51:59 +02:00
oleksiy
eec18940ae CSV : ibike, import recorded Air Density as Rho XDATA series
Signed-off-by: oleksiy <oleksiy@oleksiy-macbookpro3.lan>
Signed-off-by: oleksiy <amishchenko@gmail.com>
2019-05-23 21:51:59 +02:00
grauser
3f4b7a64e3 CSV : ibike note can have ","
fix #868
2019-05-14 22:31:51 +02:00
grauser
7cb72490a8 CVS : ibike convert temperature for english
temperature in english (imperial) ibike file is in degF
2019-05-14 22:01:13 +02:00
grauser
09acc4700e CSV : ibike change metric/imperial determination
Use info on first line
2019-05-14 21:51:19 +02:00
grauser
c45bd52edd CSV : Convert total weight to metric (if needed) 2019-05-13 22:06:11 +02:00
grauser
20d6d80ded CSV : ibike keep original weight, CdA and Crr for aerolab 2019-05-13 22:01:55 +02:00
Pascal Obry
04b6bab3e5 Minor typo fixes in comment. 2019-01-27 10:25:21 +01:00
Mikael Grønfeldt
7cf678307e Support for x-Trainer (http://www.x-trainer.dk) added.
Committer: Mikael Grønfeldt <mikael@gronfeldt.dk>

Signed-off-by: grauser <Damien.Grauser@gmail.com>
2018-12-18 22:01:29 +01:00
grauser
a7844fb6ad CsvRideFile : ibike correct ride time for pause
add XData for calculated power
2018-11-13 21:05:25 +01:00
Mark Liversedge
322b774387 HRV R-R data in Train View 3 of 3
.. reads .rr file when processing csv and adds the XDATA
   series "HRV".

NOTE: the HRV processing data added by Leif Warland will
      process the data and calculate SDANN/SDNN and friends
      since we use the same convention as for Polar HRV.
2018-09-22 11:30:51 +01:00
Mark Liversedge
b0c6a5b3b1 OpenData CSV support
.. enables import of an opendata.zip file to get all the workouts
   imported in one step.
2018-04-03 15:59:47 +01:00
Mark Liversedge
72106e7a97 Row Perfect 3 quoted data in CSV file
.. curve data is embedded using quote delimeters but our
   parser was lazy and just split on commas.

.. updated to handle quote delimeted data, but only for RP3
   format files (don't want to break anything else!)
2017-05-10 11:35:34 +01:00
Keith Reynolds
9ba5f2e348 Fix precision of Lat/Lon when exporting to CSV.
Set precision to 8 decimal places.
2017-03-31 22:12:46 -06:00
grauser
8950b0bd75 CSV: Remove white space in header
fix #2330
2017-02-06 22:57:09 +01:00
grauser
ea1ab203dc Train/CSV ; thb and smo2 are double 2017-01-25 18:59:19 +01:00
Mark Liversedge
0ef25121a0 WebPage Download invokes Import
.. very simple hack to import any file that is
   downloaded from a webpage.

.. when working with e.g. TodaysPlan if you click
   on Download Original it will download and
   import it into GC.

.. nice way of getting data from web sites that
   offer a manual download but no sync api
2017-01-22 12:27:05 +00:00
Mark Liversedge
d0028e49cc Fix Stages Freemotion timestamps
.. using regexp based parsing of the timestamp since it is
   not a valid time format.
2017-01-18 08:23:28 +00:00
Mark Liversedge
aa2d973fec Small compile nit fix
.. implicit conversion fixed to explicit and get rid of gcc
   compiler warning
2016-12-09 14:16:17 +00:00
grauser
9e16fe04b3 CSV : No value for temperature is not 0° 2016-12-08 23:02:28 +01:00
grauser
c7c2237459 Train : Record load in XData TRAIN 2016-12-08 22:56:05 +01:00
Mark Liversedge
fd55ee97bb Fix integer constant is too large for 'long' type
.. use long double constant
2016-09-24 16:19:52 +01:00
Mark Liversedge
36df2e3aed Merge pull request #2052 from gernot-hochmuth/master
Fix calculation of minimum values of SmO2 and tHb and average of tHB
2016-09-16 22:10:48 +01:00
Mark Liversedge
121818b90f Fix RowPerfect 3 CSV Import
.. handle intervals properly
.. fix offsetting of intervals in RideFile.cpp (ancient bug!)
2016-09-08 22:59:19 +01:00
Mark Liversedge
d654d91538 Add XData UNITS support Part 1 of 2
.. added to JSON file format, set when importing from RP3 and FIT files

.. primarily used by FIT developer fields that contain unit data

.. but we add units for file formats where we know them (as an english
   language string)

.. in part 2 we will add units to the datafilter expressions and the
   dialogs in the ride editor to let users edit unit names along with
   value names.
2016-08-26 09:27:08 +01:00
gernot-hochmuth
83d2d581de Added metric running speed in CSV-file import recorded by BSX-Insight2
In CSV-files recorded by a BSX-Insight 2 sensor the running speed measured using a footpod is denoted as *speed*. Running speed is recorded in m/s. Conversion to km/h is implemented. The metric is converted to mph if GC is configured to use non metric units.

please review
2016-08-13 13:20:49 +02:00
Mark Liversedge
63264f6f59 Row Perfect 3 CSV File Support
.. all data added as XDATA.
.. time, distance, power and hr available in standard data too.
2016-07-19 15:41:07 +01:00
grauser
78e1f5781b CSVRideFile : import wahoo MA (Motion Analysis ?) csv files 2016-07-11 23:41:48 +02:00
Mark Liversedge
4b5201c4c5 Restructure source directory
Introducing a directory structure to make it a bit less
daunting for new developers and perhaps even old hands.

The main folders all start with an upper character, so src
files are now located in;

* Core - Core data structures
* Gui - Main GUI elements
* Metrics - Models and Metrics
* FileIO - Device and File I/O
* Charts - All the chart types
* Cloud - Working with Web Resources
* Train - Anything Train View specific
* ANT - Our ANT+ Stack
* Resources - Images, Translations, Web etc

Apologies to anyone who needs to merge across this update.
2016-02-25 14:51:53 +00:00