Laufhelden

Rating: 
4.57143
Your rating: None Average: 4.6 (7 votes)

Laufhelden is a sport tracking application for Sailfish OS. Laufhelden is german, meaning run heros.

I made this app mainly because Meerun is not maintained anymore. Features are well behind Meerun but there are some little advantages.
Meerun is closed source meaning if the developer won't maintain any longer, the app will die. Laufhelden is opensource so that problem should be avoided.
I am working out a few month with the app and really enjoy it, hope you also will!

To import workouts you can place GPX files in the directory ~/Laufhelden/
GPX files exported from Meerun will be recognized and hopefully workout type as well as a few other things will be imported.

Current features are:
- recording workouts
- workout types: running, road bike, mountainbike, walking, inline skating
- view recorded tracks and show statistics
- save track as GPX file
- autosave every minute
- connecting to bluetooth heart rate device (supports Zephyr HxM BT and Polar Wearlink iWL, no BLE)
- show battery level of heart rate device
- alarm thresholds with voice output for heart rate too high/low and pace too high/low
- default music player is paused and resumed when alarm threshold is triggered
- 4 display modes for record screen: AMOLED mode, LCD mode, silica mode, night mode
- automatic night mode
- upload workouts to sports-tracker.com

 

I hope there is a lot to come in the future. I am only one person so don't expect any of these too soon.
- better statistics with diagrams
- configurable lock page
- indoor workouts without GPS
- voice announcements (every 0.5 kilometer: distance, duration, heart rate, average pace, ...)
- pebble integration
- BLE heart rate devices support (waiting for kimmoli: https://forum.xda-developers.com/oneplus-x/development/rom-sailfish-os-t...)
- use scout server as map tile provider (waiting for Jolla: https://talk.maemo.org/showpost.php?p=1528801&postcount=257)

Please go here for more details of planned features or bugfixing.

Here is the TMO thread.

This application orginates from a fork of Rena by Simoma: https://github.com/Simoma/rena
Workout icons are from here: https://de.icons8.com/ They are under this license: https://creativecommons.org/licenses/by-nd/3.0/
Messagebox is from: Kimmo Lindholm, https://github.com/kimmoli/paint/blob/master/qml/components/Messagebox.qml

Credits go to:

  • atlochowski for polish language
  • caballlero for spanish language
  • eson57 for swedish language
  • niemisenjussi for finnish language and sports-tracker.com implemantation

 

This software is open source GPLv3. Sourcecode: https://github.com/jdrescher2006/Laufhelden

Please report bugs/issues to here:
https://github.com/jdrescher2006/Laufhelden/issues

If you wish you may donate for this project (it might boost my motivation a little bit ;-)): https://www.paypal.me/JensDrescher

Enjoy!!!

Screenshots: 
Application versions: 
AttachmentSizeDate
harbour-laufhelden-0.9.0-1.armv7hl.rpm1.1 MB12/09/2017 - 09:08
harbour-laufhelden-0.9.1-2.armv7hl.rpm1.1 MB12/09/2017 - 10:01
harbour-laufhelden-0.9.1-2.i486.rpm1.11 MB12/09/2017 - 10:01
harbour-laufhelden-0.9.2-3.armv7hl.rpm1.1 MB22/09/2017 - 21:32
harbour-laufhelden-0.9.2-3.i486.rpm1.11 MB22/09/2017 - 21:32
harbour-laufhelden-0.9.3-4.armv7hl.rpm1.11 MB26/09/2017 - 08:31
harbour-laufhelden-0.9.3-4.i486.rpm1.12 MB26/09/2017 - 08:31
harbour-laufhelden-0.9.4-5.armv7hl.rpm1.11 MB16/10/2017 - 21:52
harbour-laufhelden-0.9.4-5.i486.rpm1.12 MB16/10/2017 - 21:52
harbour-laufhelden-0.9.5-6.armv7hl.rpm1.12 MB31/10/2017 - 19:17
harbour-laufhelden-0.9.5-6.i486.rpm1.13 MB31/10/2017 - 19:17
harbour-laufhelden-0.9.6-7.armv7hl.rpm1.14 MB16/11/2017 - 09:23
harbour-laufhelden-0.9.6-7.i486.rpm1.15 MB16/11/2017 - 09:23
Changelog: 

0.9.0-1, 12.09.2017

  • initial release to openrepos

0.9.1-2, 12.09.2017

  • fixed a bug, app crashed if a workout type was choosen.

0.9.2-3, 22.09.2017

  • added a settings menu page for better overview
  • replaced "let's go" button with forward navigation
  • grids on record page can be made invisible
  • pace is no longer decimal, now it's mm:ss
  • added polish language (thanks to atlochowski)
  • added spanish language (thanks to Caballlero)
  • added padding to texts on record page
  • autosave now includes the heartrate
  • fixed bugs

0.9.3-4, 26.09.2017

  • Added a dialog to resume a broken workout
  • fixed localization problems

0.9.4-5, 16.10.2017

  • added new feature autosave
  • new values for record page: altitude and average heartrate
  • value fields on record page are configurable now
  • small optimizations and bugfixes

0.9.5-6, 31.10.2017

  • Startpage and PreRecordpage will also stay in portrait mode if selected in settings​​​​​​
  • new feature/setting: center current position on map or center track on map
  • new feature/setting: optimize screen mode for record page if map is viewed
  • new feature/setting: automatic night mode
  • if workout is not started and map is in full screen mode, scrolling left on map is now working properly
  • resolved some unlocalized texts

0.9.6-7, 16.11.2017

  • fixed many bugs in pause function​​​​​​
  • new value for record page: pause duration
  • added map icons (start, stop, pause)
  • added skiing as new workout type
  • workouts can be uploaded to sports-tracker.com (thanks to @niemisenjussi)
  • added finnish translation (thanks to @niemisenjussi)
  • some bugfixes

Comments

moli's picture

I am eager to get this application running, but I get into problems with installing qt5-qtconnectivity-qtbluetooth. I have had this problem while installing other applications. It must be something specific for me and my SFOS on my Jolla, since other users seem to have this application istall and usable. Is there some clue to get the Qt5 Bluetooth library installed? 

moli's picture

Sorry for the noise: I dug into pkcon, and saw that it could "search name" the 5.2.0 version of qt5-qtconnectivity-qtbluetooth. I tried to install, but pkcon reported that the package was not found "on the medium". I tried a "pkcon refresh" and another search, now showing the package in version 5.6.0, which could then install. It beats me that users have to "pkcon refresh" manually to get up to speed. Is there no automation for this in Sailfish or with the Warehouse application for OpenRepos?

jdrescher's picture

I think, I could do this in the installer of the app. But I don't know if that makes sense. Maybe it could be for some users/phones a dangerous operation.

martonmiklos's picture

Great app, it is good to see promising open source successor for the Meerun.

silta's picture

At first thanks for display pace in minutes and seconds. Since I'm on XperiaX it's no longer possible to force installation of meerun, so Laufhelden is the choice for me. (rena also works good, but is very basic and seems not developed further) So thank you once more for your good work.

It would be nice if it could be possible to edit name, description and type of sport afterwards.

Thanks, silta.

jdrescher's picture

Hi silta, your request makes sense and I will add that to my todo list.

 

gomerus's picture

I found the autosave and renamed it. I got a close or wait message and laufhelden wasn't responding, when trying to save. After renaming i was able to start a new workout

jdrescher's picture

Ok, I will have a look at the autosave mechanism. There might be bugs.

gomerus's picture

I noticed, that loading a "bigger" walking autosave of 8km was taking really long. Is there a way to optimize this? Also it is counter intuitive to have to start a new workout, to load the autosave.

jdrescher's picture

Next release will resume workout directly on start of the app.

I was not aware that loading of autosave can take long. What phone do you use? I noticed that on Jolla 1 the loading of the GPX files takes very long.

gomerus's picture

I am using fp2. That should be fast enough. Unfortunately I didn't backup the autosave to give to you

jdrescher's picture

Yes fp2 is really fast, that should not be the problem. I will check it out.

gomerus's picture

First of all thanks for the app. I noticed something weird. I used a workout and in the save screen i wanted to look into another app. So i swiped it in the background and the app killed itself. Now i cannot save the workout, cannot see it in the workouts, but can continue the workout in the minimized app? How can i resurrect a workout?

jdrescher's picture

The app has a autosave function. You can find the file in the ~/Laufhelden folder. If the file is there, and if you start a new workout, it should start from the old position. You could then regularely end the workout and save it to GPX file.

If this does not work, could you send the autosave file to me?

silta's picture

Thanks, nice app so far. Keep up the good work on it.

One request.  Could you please display pace and average pace in minutes and seconds instead of decimal?

jdrescher's picture

Hi, thanks for your suggestion. I was thinking about this. Are you sure if this is standard in other apps? How is this done in Meerun?

silta's picture

In meerun it's done in minutes and seconds. I don't know what's standard in other apps since I only use meerun.

For me it's more intuitively to have minutes and seconds and it seems more consistent since total time of actual training and all trainings are displayed with seconds.

jdrescher's picture

OK, I will change this in the next release.

atlochowski's picture

I've added Polish localisation on GitHub.

jdrescher's picture

Thanks for that, you're damn fast!

I will put that in the next release. Give me a few days...

nodevel's picture

Thank you for the app/fork!

I just have to say it is quite raw yet and I don't mean missing features. The look of the app looks very non-native to Sailfish as it does not adhere to some best practices of SFOS UI development.

  • Settings - Attached Pages are not meant to be used as a carousel (this is the first time I am seeing it) as the user has no way of knowing the menu structure. Settings categories are usually done by using one page and SectionHeader elements, or by having a settings categories list (SilicaListView) and then pushing each page when selected.
  • The Let's go! button in Workout settings is too high on the page to be used comfortably - using a pulley menu instead would be more comfortable.
  • Workout selection looks very weird - instead of normal ComboBox, there's a weird animation of the sports icon and a text clipped at a side of the screen.
  • The workout screen looks overall very non-Sailfish like
    • vertical and horizontal lines
    • no padding, text too close to edges
    • colors that do not adhere to the current ambience
    • non-native buttons
    • weird bottom pulley menu in the middle of the screen which overshoots on pull - according to SFOS design principles, up to 4 pulley menu items are allowed in one menu - why have one in the top and two in the bottom one, when you can have all at the top?

I apologize for this extensive critique - I really do appreciate the effort to replace MeeRun. The thing is, MeeRun was/is a great app for its variety of features, but it had two big faults:

  • it crashed often
  • it had an unintuitive UI that did not fit into SailfishOS

So please do not copy all the features, with the faults above.

 

If you accept PRs, I would be happy to contribute some to the UI. Otherwise, I would recommend to read the Common Pitfalls in Sailfish Application Development article on Sailfish wiki.

jdrescher's picture

Hi @nodevel,
thanks for your feedback I really appreciate that. I'm afraid that I have to disagree on some of your points.

1. settings pages: that is a good point, I will rework this and have an overview page with a listview
2. Let's go button: starting the workout is the most important function of this page and I wish to have it in a prominent place. But I agree that a button is not the best solution. I will lilely use the Meerun solution for this.
3. Workout selection: this is a normal ComboBox, next to an image. The image helps identifying the workout type with just one look at it, no need to read the text. I did it that way because I wanted to bring the users focus to that. It is an important setting and if you overlook it, you have no chance to correct that later on.
4. Workout screen: I agree that an app should look as sailfish like as possible. But certainly not at all costs. I was very disappointed by the bad using of display space on every single sport tracker app I used before. I wanted to do that better. Also I liked the clear arrangement of elements in the original SPorts Tracker app on Symbian. This is also were the lines come from.
    - there are lots of infos on that screen and the lines help sorting them out.
    - padding was a little bit difficult, I will try to add that in the next version.
    - colors are optimized for each specific display mode. The silica mode has system colors.
    - buttons need background color for easy and fast identifying. I was not able to achieve that with default buttons.
    - bottom pulley menu is in the middle of the screen only if the map is viewed. I took that from Rena and liked it so far.
    - bottom pulley is a bit full. I will put some items in the top menu.

I might think about making the lines switchable and using the silica mode as default mode. That would make the record screen more sailfish like for the average user.

About the two big meerun faults:
- it never crashed a single time for me and I used it for years extensively. If my app is near as stable as meerun was, I will be very satisfied. Only problem is that it was not maintained for more than a year.
- I liked the UI of meerun very much and found it also very sailfish like. If you look in the feedback section for meerun and on Jolla together, you will notice that many other users agree with me. Some users even stated that of all SFOS apps, Meerun makes the best use of the UI possibilities. I mostly agree with that.

The biggest problem with the UI is certainly that people have different taste about the look&feel of an app. We should try to reach an agreement so that the UI fits most peoples taste.
As I invested much time in the app, I am not willing to throw everything over board, I hope you can understand my point here.

Instead of putting very much more work into the UI we should concentrate on missing features, like better statistic page with diagrams. Pebble integration would also be a killer feature for me, that would be so cool!

I have a suggestion for you. Let me do a rework of the points above in the next version of the app. After that we can talk again and I might accept pull requests about the UI.

I think for that kind of discussions we might need a maemo thread. Should I open one?

osetr's picture

Yes, the UI should be "Sailfishalised".

osetr's picture

Thanks a lot! Meerun's become really hard to use. Though Laufhelden currently is quet raw I'm happy to see it here!

jdrescher's picture

Hi, yeah there are a lot of missing features. Good thing is that I use the app nearly daily and thus am reminded of the lots of work to do. Maybe there are other developers who might join in...

Unfortunately I found a bug. I will upload a new version today.

osetr's picture

Maybe there are other developers who might join in...

I'll contribute with pleasure if I have time. Also I can participate in localisation.

jdrescher's picture

Thanks, that would be cool!

hias's picture

I also would like to contribute. How do you want to coordinate the development?

jdrescher's picture

Hi hias, what do you mean by coordinating the development?

Unfortunately I have not much experience with open source projects and multiple developers. On the other side, the code is on github and you can always do a pull request.

What would you like to contribute?

hias's picture

I'm contributing to KDE so I don't have experience with github.

Do I need access to your repo to create feature branches or do I need to fork your repo and then make pull requests?

By coordinating I just mean how to communicate on the features one is currently working on, so there is no double work. I didn't found a possibility on github to contact you.

I already played with the RecordPage and managed to make it look more like in Meerun, while still having the options to set the display mode. Furthermore I'm also quite interested in programming the graph.

Pages