HMs DIY #1-6

Store Link

Because I want to keep this datafield and the app free for use I would be very grateful about a small donation to PayPal

A detailed description of how to use it can be found here: 

HMs_DIY_GUIDANCE.pdf
HMs_DIY_ANLEITUNG.pdf

Thanks very much to mcinner1 for putting so much time into this documentation!

Designer download

You can contribute on my github page.
You can upload your layout so others can use it as well.
Also any changes to the fonts.txt can be updated there as well.

Garmin_HMsDIY

=======================================================================
RELEASE NOTES
=======================================================================
-----------------------------------------------------------------------
3.6.2
* switched to new SDK 7.2.1
* added devices: Approach S7 42mm, Descent Mk3 43mm /Mk3i 43mm, Descent Mk3i 51mm, Edge 1050, epix Pro Gen2 42mm, epix Pro Gen2 47mm / quatix 7 pro, epix Pro Gen2 51mm / D2 mach 1 pro / tactix 7
Fenix 7 Pro, Fenix 7 Pro Solar, Fenix 7S Pro, Fenix 7X Pro, Fenix 7xPro Solar, Forerunner 165, Forerunner 165M, Venu 3, Venu 3S, Vivoactive 5
-----------------------------------------------------------------------
3.5.1
* switched to new SDK 4.2.4
* added devices: FR265, FR265S, FR965, GPSMAP 67/67i, Marq (Gen 2), Marq (Gen 2) Aviator, EDGE 540, EDGE 840, Instinct 2x Solar
* added two new font types GLANCE, GLANCENR (only available if device supports it!)

for full releasenotes see: releasenotes.txt
=======================================================================

 

  • Hi

    Thanks for your feedback. The value NP already disregards the zero values.

    I am already making a rolling average ^4 every 30s, thats the definition of normalized power. The difference in the first 30s is, that I just display the value. I know that the value is wrong in the first 30s, but I could either display the '--' or just the accumulating value, but I have to store and calculate the value in the background either way.

    What is exactly wrong with the value?

    regards

    Erich

  • Hopefully this will demonstrate it better:

    You can find the original appbuilder "code" here https://ciq-appbuilder.blogspot.com/p/examples.html

    Under:

    Normalized Power [AppBuilder5] [CIQ1] 

    avg(ifs(timer gte 30 and (timer - max(ifs (prev(timer) eq null, timer)) plus 1) gte 30, timeavg(power,30)^4))^0.25

    The deciding part here is timer gte 30 which waits 30s before calculating in beginning of activity, the complex part in bold (if I remember correclty) was to account for pausing, but never really found that to be as much of a problem in my own use.

    EDIT: Now thinking this over again the actual problem is not the 30s rolling average itself. Rather that if you start to introduce the values before the first 30s has passed the rolling average will include lower values not yet part of the activity that are added to total average of the NP value.

    This is different behavior than natively captured and recorded by the watch.

    Hopefully this finally clarifies the problem and a fix can be considered for future versions Slight smile

  • Hi. Some time ago I sent you a question if something could be done to fix it, and I repeat the question you probably forgot.
    1 (Eta avg.speed) shows the same value as (Time to dest avg speed).
    2 When the dynamic max Cadence color is set, it does not show the max cadence value.
    3. It is not possible to set the dynamic color of the heart of the time zones. Value 3600 = 6 min, 36000 = 1 hour, but you can not do for example 180000 = 5 hours.

    Particularly point 1 is a minor mistake, and point 3 if it can be done well but it is not a big problem.

    Regards.

  • Hi

    Because I only have little time at the moment I didn't make a new release. I will try to make one at the weekend.

    1. Is already fixed, but didn't release it yet.

    2. I still dont know what you mean by that.

    3. I will try to change this with another request to set a transparent dynamic color (only on/off). I will have to change the bit structure of the dynamic colors.

    regards

    Erich

  • Hi

    I will take a look into my formula if I can adapt the calculation at timer start.

    regards

    Erich

  • I‘ve copied the whole sequence for better understanding...
    From     ciq-appbuilder.blogspot.com/.../examples.html

    • Normalized Power [AppBuilder5] [CIQ1]
      Normalized Power (native): Activity average
      avg(ifs(timer gte 30 and (timer - max(ifs (prev(timer) eq null, timer)) plus 1) gte 30, timeavg(power,30)^4))^0.25

      Lap np (native): Carries the rolling average over from previous lap
      lapavg(ifs(timer gte 30 and (timer - max(ifs (prev(timer) eq null, timer)) plus 1) gte 30, timeavg(power,30)^4))^0.25

      Lap np: Resets at start of each lap
      lapavg(ifs(lapTime gte 30 and (timer - max(ifs (prev(timer) eq null, timer)) plus 1) gte 30, timeavg(power,30)^4))^0.25

      These behave like native fields, except in the case of when the activity is paused and unpaused. With these formulas, when the activity is unpaused, the np or Lap np will not be updated until a full 30 seconds has passed (to obtain enough samples for a rolling average)

      Explanation:
      timer gte 30: Wait 30 seconds from the start of the activity before considering data for the overall average
      LapTime gte 30: Wait 30 seconds from the start of the lap before considering data
      max(ifs (prev(timer) eq null, timer)) plus 1) gte 30: Wait 30 seconds from the last time the activity was unpaused before considering data 

  • Yes, I helped test those formulas against native NP and native lap NP, there is a AppBuilder showcase thread where this was originally discussed buried somewhere in this useless new forum software so I won't bother try to find it. Slight smile

  • Hello guys, probably my question (or answer) is lost somewhere in history, so I'm trying again.

    I still cannot figure out, how to setup my DYI datafield to work in day/night/automatic display mode same way as original garmin datafields.

    Thanks for any answer.

  • Your settings for Day/Night/Automatic Display do not affect the DIY data field.
    If a night layout is so important to you, you need to create one and select it when needed - either in an additional training page or in an additional activity profile.
    To create a night layout, copy the existing xml-file and name it XXX-night.xml Open it with a simple text editor and replace:
    -all "FFFFFF" with "XXXXXX"
    -all "000000" with "FFFFFF
    -all "XXXXXX" with "000000"
    Load the file into the Designer tool and see if everything looks good.

  • Hi

    There was a request regarding Day/Night switching. I will add a check and a seperate layout in the next release. Because of current lockdown situation in Austria chances are good, that I will have more time for this again in the near future.

    regards

    Erich