cagnulein / qdomyos-zwift

Zwift bridge for smart treadmills and bike/cyclette
https://www.qzfitness.com/
GNU General Public License v3.0
417 stars 116 forks source link

[BUG]50% Gradient Feel in MyWhoosh causing miscalculation on hills? #2148

Closed Mrschley closed 8 months ago

Mrschley commented 8 months ago

I was playing around with the "gradient feel" setting in mywhoosh last night. It is set to 50% by default. I can see that when this is set at 50% it sends 50% of the gradient back to qz. So if the gradient is 5%, qz sees 2.5%. Qz will calculate the power based on 2.5% and send it back to mywhoosh. My speculation is that mywhoosh then calculates speed based on the 5% grade. This is not a bug with qz, but before I try to do the math to determine if there is something wrong with mywhoosh, have you looked into this before? Does qz know what the "gradient feel" is set to in mywhoosh?

If I set the feel to 100%, the hill is difficult, I have to stand on the bike, I produce a lot of power and climb the hill at a reasonable speed.

If I set the feel to 50%, the hill in not as difficult, I don't stand on the bike, I peddle as fast as I can, and the bike just crawls up the hill. (as if it is a 5% grade and not a 2.5% grade).

Again, I think the power coming out of qz is fine. Just seems like there might be an issue with mywhoosh when set to 50% feel...

Or, is it just that the hill actually is a 5% hill, so the program is working as it should?

cagnulein commented 8 months ago

This is not a bug with qz, but before I try to do the math to determine if there is something wrong with mywhoosh, have you looked into this before? Does qz know what the "gradient feel" is set to in mywhoosh?

As far as I know Mywhoosh use the same Zwift algorithm, so it simply take the wattage from qz and then it applies the variable in the game like slope, power up and so on.

So the grade sent to QZ is only affects the effort (so the resistance on the trainer). Of course, higher is the resistance higher will be the wattage and viceversa.

Mrschley commented 8 months ago

Something like this, P = krMs+kaAsv^2d+giM*s, correct?

On Wed, Feb 21, 2024 at 8:20 AM Roberto Viola @.***> wrote:

This is not a bug with qz, but before I try to do the math to determine if there is something wrong with mywhoosh, have you looked into this before? Does qz know what the "gradient feel" is set to in mywhoosh?

As far as I know Mywhoosh use the same Zwift algorithm, so it simply take the wattage from qz and then it applies the variable in the game like slope, power up and so on.

So the grade sent to QZ is only affects the effort (so the resistance on the trainer). Of course, higher is the resistance higher will be the wattage and viceversa.

— Reply to this email directly, view it on GitHub https://github.com/cagnulein/qdomyos-zwift/issues/2148#issuecomment-1956638327, or unsubscribe https://github.com/notifications/unsubscribe-auth/BGH7REG5KYKFIZBPHV5HFNLYUXYCFAVCNFSM6AAAAABDTBBPNKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJWGYZTQMZSG4 . You are receiving this because you authored the thread.Message ID: @.***>

cagnulein commented 8 months ago

the power formula is a secret of mywhoosh and zwift. you can see my version here https://github.com/cagnulein/qdomyos-zwift/blob/4b289c57f84994d7e47ca890e3b0f35cf43f0025/src/metric.cpp#L262

stale[bot] commented 8 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.