Commit Graph

1557 Commits

Author SHA1 Message Date
Mark Liversedge
ce12016863 Tacx Fortius Driver Stubs
To work with Tacx Fortius on 32/64 bit platforms without
having to install the Tacx software (which requires the
user to pay to upgrade to TTS2/3/4).

Fixes #550.
2011-12-17 23:39:18 +00:00
Mark Liversedge
756b63d1b0 Remove dynamic load of libusb on Windows
It wasn't adding any value and caused problems
with static build targets and using libusb functions
in other parts of the code (e.g. EzUsb).
2011-12-17 22:21:51 +00:00
Mark Liversedge
cd07d933d8 Fix zero speed in TxtRideFile for Imperial units
When importing files with imperial units the importer
does not set distance data and the speed is reset to
zero.

This patch fixes that.
2011-12-17 21:20:19 +00:00
Mark Liversedge
3c221089ba Rename EF to Efficiency Factor. 2011-12-17 17:58:49 +00:00
Damien
8c38809838 Add ResponseIndex and EfficiencyFactor
modified:   src/BikeScore.cpp
	modified:   src/Coggan.cpp
	modified:   src/DBAccess.cpp
2011-12-17 17:54:20 +00:00
Mark Liversedge
91726c93a3 TrainTool make Fortius dependant upon GC_HAVE_LIBUSB. 2011-12-17 15:59:39 +00:00
Mark Liversedge
5c6755df33 Merge branch 'release_3.0.0dev' of github.com:srhea/GoldenCheetah into release_3.0.0dev 2011-12-17 12:36:00 +00:00
Mark Liversedge
4b9a618859 Tacx Fortius fixes for Mac OSX
Under Mac OSX the Tacx Fortius support needed
a few minor tweaks;

* sleep 60ms between read/write operations to
  avoid interrupt errors

* clear_halt on read/write endpoints before
  attempting to read/write to the device

* remove the errant usb_reset which really should
  not have been called in LibUsb since it deletes
  the device structure(!)

The LibUsb class has been modified to clear_halt
when opening ANT devices too -- since regression
testing on Mac showed that a) you need the latest
drivers to work with a USB2 stick on Lion (64bit)
and it now appears to mandate a clear_halt when
opening the device (but this may be related to the
Garmin ANT agent leaving it in an unknown state).
2011-12-17 12:31:25 +00:00
Mark Liversedge
afd32b6baa Introduce OperatingSystem global variable
The LibUsb (and possibly other classes) need to know
what operating system we are running on at runtime. In
the past this has been achieved with lots of #ifdef pre-
processor conditionals, but this makes the code quite
difficult to read in places.

This patch introduces the variable OperatingSystem and
it can be one of WINDOWS, LINUX, OSX.
2011-12-17 11:44:47 +00:00
Damien
de233e4efe Add average for Power, Cadence and Heartrate
modified:   src/DialWindow.cpp
	modified:   src/DialWindow.h
2011-12-17 10:15:19 +00:00
Mark Liversedge
9a9a587afe Mingw has not sleep(), uses WinAPI Sleep(). 2011-12-12 22:33:45 +00:00
Mark Liversedge
330ad7df42 Mingw build fixups
- #ident not supported in EzUsb.cpp
- sleep() missing <unistd.h> in LibUsb.cpp
2011-12-12 22:24:22 +00:00
Mark Liversedge
abfcf078fc Tacx Fortius Support
Initial support for Tacx Fortius devices.

Note this requires libusb support to be present and will
work on Linux, Mac and Windows.

The handlebar buttons up/down will increase/decrease the
load/intensity in a similar fashion to the +/- keys on
the Computrainer controller.

The cancel button will stop a workout and the enter key
is used to mark a lap.

Slope and Ergo modes are supported, but we do not set the
brake at all if the speed is below 10kph, this is to
ensure it does not get burnt out when users 'grind'.

SPECIAL NOTE:

   The Fortius handlebar controller is a Ez-Usb device
   and requires firmware to be loaded when it is connected.
   Since this is copyrighted by Tacx BV we do not distribute
   it, instead, when the user sets up a Fortius device they
   must also provide the file. Full instructions on how this
   should be done are given when configuring the device.

Additionally, for Linux users udev rules should be added to
ensure that the USB devices are accessible to non-root users.

Fixes #538.
2011-12-12 17:26:59 +00:00
Mark Liversedge
347e12f3fc Computrainer +/- keys and load zero
The recent patch to fix displaying load on ANT+
devices broke the same for computrainer in manual
ergo mode.
2011-12-11 14:00:24 +00:00
Damien Grauser
9c611c4b5b Add temperature icon to GCBubble 2011-12-08 22:38:58 +00:00
Damien
f59e81b634 Correct temp plot for smoothing 2011-12-08 21:29:40 +00:00
Mark Liversedge
efc7ad039d Remove need for cadence on virtual power
Since you may not have a cadence sensor available it
does not make sense to zero power when cadence is zero.
2011-12-08 21:03:52 +00:00
Greg Lonnon
053c5548a6 fixed the gps parser to take mapmyride routes
Fixes #533.
2011-12-07 22:19:34 +00:00
Damien Grauser
8d3d89d44d Add temperature to AllPlot
Fixes #536.
2011-12-07 21:55:35 +00:00
Mark Liversedge
9f25fdc6f8 Fix PfPv refresh bug
Fixes #520.
2011-12-06 10:01:58 +00:00
Mark Liversedge
58eb527fd0 Use uint8_t* not void* in memcpy()
Computrainer spinscan memcpy() used offsets
but failed to declare the datatype used by
pointers.

Interestingly, some compilers will assume a
void* points to a byte, whilst others will
rightly complain.
2011-12-04 14:31:04 +00:00
Damien Grauser
ac3112b286 Add Temperature and Slope Data Series
This patch adds support for temperature and slope
across the ridefile readers.

For the most part their is no functional change
although it is now possible to view and edit these
data series in the editor.

File formats that can provide temp or slope include;
.bin, .fit, .srm, .sync, .wko

Further updates will be required to display the data
in the ride plot and histograms.
2011-12-03 23:17:11 +00:00
Mark Liversedge
ba3c6c11d6 Remember mode in pedalstroke chart. 2011-12-03 15:29:29 +00:00
Mark Liversedge
63635d8864 Add Polar SpinScan Plot
The Power Stroke chart will now show a
bar or polar chart.
2011-12-03 15:08:23 +00:00
Mark Liversedge
a90bc301c9 SpinScan L/R different colors 2011-12-02 18:51:03 +00:00
Mark Liversedge
c71ea615ca Fix Target load Dial
When working with ANT+ devices the load dial always
showed zero, because the ANT device was not updating
the realtime data with the desired load.

In addition, the target load telemetry always showed
watts even when working in slope mode (where it should
show the gradient).

Fixes #532.
2011-12-01 21:35:39 +00:00
Mark Liversedge
ae6b8869f5 Added SpinScan Plot
I finally got round to decoding the spinscan data
from computrainers. This is now implented in train
view.

A new chart is available 'Pedal Stroke' to show the
spinscan data returned by the computrainer.

I am unsure if the decoding is 100% on the money but
have been testing for a week and it seems ok.

Fixes #530.
2011-11-30 23:26:20 +00:00
Mark Liversedge
a9d7879498 Windows URIs are file:///c: not file://c: 2011-11-27 15:33:20 +00:00
Mark Liversedge
eb468aad72 VLC Filename convert to file:// URL
Passing a filename with spaces in it causes some issues
on WinXP/2003, this patch converts all filenames to valid
URLs (which is the preferred way to reference media in VLC).

Specifically;

* The file path is prepended with file://
* backslashes in filenames are converted to forward slashes in URLs
* Spaces are converted to %20
2011-11-27 15:03:31 +00:00
Mark Liversedge
79c38a738d Better Bounds Checking in RideFile::intervalBegin()
Return value when out of bounds had a fencepost error. Annoyingly
it is exactly the same fencepost error that was fixed in a line
of code 10 lines lower in the source.

This fixes rare issues with rides where intervals start at the
end of the ride file. This can happen with rides that have been
split.
2011-11-27 00:00:48 +00:00
Mark Liversedge
aff4153ede Fix SEGV on Mac on Save Preferences. 2011-11-26 22:54:30 +00:00
Mark Liversedge
eeeaf13c75 ErgDB download should say exists not exported. 2011-11-26 21:08:14 +00:00
Mark Liversedge
2d28edcb34 Fix Serious Delay after saving Preferences
Caused by instantiating way too many copies
of the specialfields class, when one is freely
available for reference.
2011-11-26 20:51:45 +00:00
Mark Liversedge
289f8b37a4 missing src.pro 2011-11-26 18:01:16 +00:00
Mark Liversedge
c39eaf3e50 Removed accidental commented out code 2011-11-26 17:59:01 +00:00
Mark Liversedge
19b3ead80a Download from ErgDB
A new menu option added to download workout
files from the ErgDB. Will also need to look
at upload so we can share amongst the GC
community.

Fixes #521.
2011-11-26 17:57:14 +00:00
Mark Liversedge
84fc97f61d Fix double save of Configuration
The createIcons method in ConfigDialog also adds
another connect to the save button. This has been
removed.

Lame and brain-dead coding error.
2011-11-26 17:54:35 +00:00
Justin Knotzke
231de2eb3b Upload to Strava
A menu option to upload ride files to the Strava website.
Original code from Justin Knotzke ported to v3 by
Damien Grauser.

If the ride has already been uploaded the upload menu
option is disabled, once uploaded a tag is set in the ride
with the strava id.

Fixes #519.
2011-11-26 08:59:30 +00:00
Gareth Coco
1d0022e15e Initialise LAT/LON to zero (0.0) in the parser
If there is no LAT/LON data often GC will set really small numbers
to LAT/LON which the map functions will try to map.

Fixes #522
2011-11-26 07:47:33 +00:00
Mark Liversedge
d8ea426c64 Computrainer Calibration Mode on F3
Pressing F3 on the handlebar controller now starts calibration
mode and pauses all video and recording. Pressing F3 again will
resume the workout and restart.

Fixes #392.
2011-11-25 21:22:06 +00:00
Mark Liversedge
09658f679a Fix FTDI Adaptor on Linux and Mac
Eric Brandt provided a fix for the new FTDI adaptor
sold with Computrainers from late 2009. It only fixed
the problem under Windows.

This fix applies the same modification to turn off
hardware flow-control for Linux and Mac.

Fixes #523.
2011-11-25 16:09:27 +00:00
Mark Liversedge
9428205ced Add a Watts per kilogram metric
All the existing wpk metrics concentrate
on the wpk for a fixed period, which is great
but we should also support it for an interval
(where it is arguably most interesting).

This patch fixes that.

Fixes #467.
2011-11-22 20:28:18 +00:00
Mark Liversedge
5a70bc66b1 Remove Smart Layouts
They are horrible. We need a better solution. The
"smart" layout was the wrong solution and everyone
hated them.

We need some ideas about how this should work.
2011-11-21 09:49:16 +00:00
Mark Liversedge
6d28ad1e74 Merge branch 'release_3.0.0dev' of github.com:/srhea/GoldenCheetah into release_3.0.0dev 2011-11-21 08:02:53 +00:00
Mark Liversedge
7e03e82ab6 Version 3 to use metricDBv3
Some users often switch between v2 and v3 of GC. Either
because they are testing or they are transitioning from
v2 stable to v3 development builds.

But at launch the metricDB is refreshed each time, since
the v2 and v3 metrics are so different.

To avoid this, from version 3 the metricDB file will be
called metricDBv3 to avoid conflicting with the original
metricDB file.

Fixes #376.
2011-11-21 07:59:49 +00:00
Mark Liversedge
22c647f9df Use strtod() to convert text to double
To get improved precision when parsing pasted
data in the ride editor.

Fixes #477.
2011-11-20 21:47:11 +00:00
Mark Liversedge
0c029fa984 Add ToolTips to Toolbar Buttons
The show/hide sidebar, Toggle Tabbed Mode, FullScreen
and Add Chart buttons now have a tooltip to help explain
what they do.

We still need better icons too!
2011-11-20 20:46:10 +00:00
Mark Liversedge
c3570ef37c Fix FullScreen on Lion compile errors
Fix compile on Mac SDK < 10.7, silly initialisation
of fullScreen in MainWindow when it doesn't exist
and fixup gcconfig.pri.in definiton of GC_HAVE_LION.
2011-11-20 18:11:46 +00:00
Mark Liversedge
f2690b9208 Fix FullScreen Crash on Mac
When building with the latest Xcode their is a conflict
between the QtMacSegmentedButton cocoa container and the
same declared in QtMacVideoWindow.

This patch removes QtMacSegmentedButton since we do not
use it.  There appears to be a container in 4.7 anyway
so we no longer declare our own.

Video and FullScreen are fully operational now on 10.6
or higher using 4.7.4 or higher of QT.
2011-11-20 17:10:44 +00:00
Mark Liversedge
6b097dcfad Add Chart Menu fixups
The add chart menu had the ride plot on home
and charts were ordered in a relatively random
order.

This patch orders the charts by relevance for the
particular view and moves the 'Performance' chart
to the Analysis selection.
2011-11-20 15:58:45 +00:00