Convert your Gyrosco.pe travels to GPX files

Overview

gyroscope2gpx

This little python joint will do you a favor of taking your "Travel" export from Gyroscope (https://gyrosco.pe) and turn it into a bunch of daily GPX files. Maybe you need this for some reason!

Usage!

  1. Clone this repository and install dependencies
    1. Must use Python3
    2. pip install -r requirements.txt
  2. Go to https://gyrosco.pe/export/
  3. Export your "Travels" csv file
  4. Run the script (help below)
    1. example: ./gyroscope2gpx myexport.csv
usage: gyroscope2gpx.py [-h] [-o OUTPUTDIR] [--debug] inputfile

Reads a 'Travels' CSV export from Gyroscope and converts to daily GPX files.

positional arguments:
  inputfile             csv file from Gyroscope

optional arguments:
  -h, --help            show this help message and exit
  -o OUTPUTDIR, --outputdir OUTPUTDIR
                        (optional) directory to output GPX files, defaults to ./gyroscope2gpx_output
  --debug

Important stuff to be aware of

There are a few caveats with how this data exports from Gyroscope and is thusly processed:

  1. Gyroscope does not include time data for each point in a segment, only start and end times for the segment
  2. Because of #1, this little script assumes that the points are equidistantly spaced in time across that interval.
  3. This means that the track will indicate you traveled at constant velocity throughout that time interval (impressive, if not astronomically impossible)
  4. There is no elevation data, so we use a third party library to load it, which requires an internet connection and a few gigabytes of data to download, depending on where you've been in the world (only once!)

Because of these caveats, these tracks are probably not well used for say, uploading to Strava, or something. However, they might be reasonably useful for geotagging your 35mm photos (my use case!)

If you'd like to see something change in the data provided by Gyroscope, try [email protected] :)

Subsequent executions, updating data

If a GPX file already exists in the output directory, it will be skipped. If you need to overwrite a file for any reason, delete it yourself and run the script.

Elevation data

Elevation data is provided by the SRTM.py library, which has this to say:

On every elevation requested the library will:

  1. Check if the SRTM file is stored locally
  2. If not -- download it from NASA servers and store locally (in ./.srtmcache/)
  3. Parse elevations from it

This could mean quite a bit of data needs to be downloaded, so beware (my export needed about 2.29gb of elevation data!)

I could make this part optional, I guess? Create an issue!

Follow me on Gyrosco.pe:

https://gyrosco.pe/ngordon779/

License

This software is licensed under the GNU GPLv3. See file COPYING.

Owner
nick g
mostly python these days, but I have a lot of knives in storage
nick g
Windows Task Manager with special features, written in Python.

Killer That damn Chrome ⬇ Download here · 👋 Join our discord Tired of trying to kill processes with the default Windows Task Manager? Selecting one b

Nathan Araújo 49 Jan 03, 2023
A Python 3 client for the beanstalkd work queue

Greenstalk Greenstalk is a small and unopinionated Python client library for communicating with the beanstalkd work queue. The API provided mostly map

Justin Mayhew 67 Dec 08, 2022
Painel de consulta

⚙ FullP 1.1 Instalação 💻 git clone https://github.com/gav1x/FullP.git cd FullP pip3 install -r requirements.txt python3 main.py Um pequeno

gav1x 26 Oct 11, 2022
Estimate the Market Size for Electic and Plug-In Hybrid Vehicles In Africa

Estimate the Market Size for Electic and Plug-In Hybrid Vehicles In Africa The goal of this repository is to use open data repositories to answer the

Leonce Nshuti 0 Feb 21, 2022
A tool to allow New World players to calculate the best place to put their Attribute Points for their build and level

New World Damage Simulator A tool designed to take a characters base stats including armor and weapons, level, and base damage of their items (slash d

Joseph P Langford 31 Nov 01, 2022
Back-end API for the reternal framework

RE:TERNAL RE:TERNAL is a centralised purple team simulation platform. Reternal uses agents installed on a simulation network to execute various known

Joey Dreijer 7 Apr 15, 2022
Build your own Etherscan with web3.py

Build your own Etherscan with web3.py Video Tutorial: Run it pip3 install -r requirements.txt export FLASK_APP=app export FLASK_ENV=development flask

35 Jan 02, 2023
Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators

Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators. Install

quantumlib 3.6k Jan 07, 2023
Chess bot can play automatically as white or black on lichess.com, chess.com and any website using drag and drop to move pieces

Chessbot "Why create another chessbot ?" The explanation is simple : I did not find a free bot I liked online : all the bots I saw on internet are par

Dhimas Bagus Prayoga 2 Nov 11, 2021
A Powerful Tool For Making Combo List(All possible modes)

ComboMaker A Powerful Tool For Making Combo List Introduction Check out all possible Combo list build modes with this tool =) How to Install Open the

MasterBurnt 7 Jan 07, 2023
One destination for all the developer's learning resources.

DevResources One destination for all the developer's learning resources. Find all of your learning resources under one roof and add your own. Live ✨ Y

Gaurav Sharma 33 Oct 21, 2022
Python library to decode the EU Covid-19 vaccine certificate

DCC Utils Python library to decode the EU Covid-19 vaccine certificate, as specified by the EU. Setup pip install dcc-utils Make sure zbar is installe

Developers Italia 13 Mar 11, 2022
VirtualBox Power Driver for MAAS (Metal as a Service)

vboxpower VirtualBox Power Driver for MAAS (Metal as a Service) A way to manage the power of VirtualBox virtual machines via the MAAS webhook driver.

Saeid Bostandoust 131 Dec 17, 2022
Old versions of Deadcord that are problematic or used as reference.

⚠️ Unmaintained and broken. We have decided to release the old version of Deadcord before our v1.0 rewrite. (which will be equiped with much more feat

Galaxzy 1 Feb 10, 2022
laTEX is awesome but we are lazy -> groff with markdown syntax and inline code execution

pyGroff A wrapper for groff using python to have a nicer syntax for groff documents DOCUMENTATION Very similar to markdown. So if you know what that i

Subhaditya Mukherjee 27 Jul 23, 2022
SuperMario - Python programming class ending assignment SuperMario, using pygame

SuperMario - Python programming class ending assignment SuperMario, using pygame

mars 2 Jan 04, 2022
Contains the code of my learning of Python OOP.

OOP Python This repository contains the code of my learning of Python OOP. All the code: is following PEP 8 ✅ has proper concept illustrations and com

Samyak Jain 2 Jan 15, 2022
Wordless - the #1 app for helping you cheat at Wordle, which is sure to make you popular at parties

Wordless Wordless is the #1 app for helping you cheat at Wordle, which is sure t

James Kirk 7 Feb 04, 2022
Add-In for Blender to automatically save files when rendering

Autosave - Render: Automatically save .blend, .png and readme.txt files when rendering with Blender Purpose This Blender Add-On provides an easy way t

Volker 9 Aug 10, 2022
An extension for Arma 3 that lets you write extensions in Python 3

An Arma 3 extension that lets you to write python extensions for Arma 3. And it's really simple and straightforward to use!

Lukasz Taczuk 48 Dec 18, 2022