Giter Club home page Giter Club logo

waostats's Introduction

WaoStats

icon

macOS Windows wahooELEMNT Qt&5 FitSDK dropboxQt QMapControl QCustomPlot

Commit Activity Last Commit Contributors Open Issues Closed Issues

A desktop application to analyse and archive your Wahoo ELEMNT bike computer tracks. It runs on macOS, Windows and Linux.

waostats

Main features are:

  • load all your Wahoo FIT files into the application
  • view the statistics (entire track and lap/section) from your FIT files
  • view your Wahoo computer firmware versions, used sensors and their battery status (when track ended)
  • plot the recorded values (altitude, speed, cadence, temperature, grade, heartrate, power, battery, calories, L/R balance, gears, gear ratio, gps accuracy) from your FIT files, over time or over distance
  • link your tracks to your used devices (bikes) and see total kilometers per device
  • dropbox sync your FIT files
  • ADB (USB) sync your FIT files directly from your Wahoo bike computer
  • display your track on 16 different maps (google, openstreetmap, bing and more)
  • load GPX tracks into the application with reduced statistics (compared to FIT)
  • log service activities and get service reminders

Used Libraries

  • dropboxQt, under MIT
  • QCustomPlot, under GPL 3.0
  • QMapControl, under LGPL 3.0
  • FitSDKRelease_21.105.00, download code from Garmin official SDK webpage
  • App Icon by 71M

Download

  • Download here
  • Currently supported OS: macOS 10.13.6 and later, Windows 8 and later, Ubuntu 20.04 and later

Compile

  • Download FitSDKRelease_21.101.00 and copy archive content into FitSDKRelease_21.101.00 folder (when using fit C++ parser only - by default this step not needed)
  • Compile dropboxQt, as described in subfolder dropboxQt. You should get "WaoStats/dropboxQt/prj/libdropboxQt.a"
  • Open WaoStats.pro into QtCreator, compile with Qt5.15.2 and Clang(macOS) or minGW(Windows)
  • On Windows, install OpenSSL and copy library files to application folder

Compiling on Ubuntu: howto (thanks to Intyre)

Application - First Start

  • Open application.
  • Create / select a path of your choice, which shall contain your track files (fit/gpx).
  • In this path, create subfolders for your bikes (or choose from WaoStats menu: Archive - Add New Bike).
  • Put your track files (fit/gpx) into these subfolders.
  • Choose from WaoStats menu: Archive - Scan Tour Folder.

archive

Dropbox Sync

Tutorial video

IMAGE ALT TEXT HERE

Setup (do this before first sync)

  • Get an API app key by registering with Dropbox: https://dropbox.com/developers/apps
  • Click "Create app", give it reading permission to your "Apps/WahooFitness" folder. (Probably just option "Full Dropbox" can do this.)
  • On next page ("Permissions"), check "files.content.read" and "profile". Click "Submit".
  • Find your app key and app secret on page "Settings".

Sync

  • Enter app key and app secret to WaoStats dropbox menu.
  • Click "Get Token", follow the dropbox pages.
  • Copy the token from dropbox page into WaoStats menu.
  • WaoStats now is allowed to read your fit files (once). Another reading process needs a new token with same keys.
  • Find downloaded fit tracks in archive folder / WaoStats left list "New"

ADB Sync

  • Connect Wahoo device to your computer.
  • Open in WaoStats Archive -> ADB Sync, click Scan. The Wahoo device should be shown "unauthorized".
  • Disconnect Wahoo device to your computer.
  • Start debug mode for Wahoo device. (Press Up+Down+Power at the same time. Do this in Wahoos Pan & Zoom mode, because here menu options stay untouched.)
  • Connect Wahoo device to your computer.
  • Open in WaoStats Archive -> ADB Sync, click Scan. The Wahoo device should be shown with its name.
  • Choose your device and click select.
  • Find downloaded fit tracks in archive folder / WaoStats left list "New"

Plot

  • Wheel on plot: zoom 2D
  • Wheel on axis: zoom 1D
  • Left drag on plot: move 2D
  • Left drag on axis: move 1D
  • Right click: select between curves

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.