Following this discussion I’ve found a cool feature that could be implemented:
https://support.zwift.com/hc/en-us/community/posts/115018973403-Riding-with-Powertap-Powercal
Currently Powercal it’s an affordable Powermeter, with some caveats, but it’s commonly referred as one of the best entry-level power meters for people that it’s not sure if power training it’s going to be profitable long-term for them (therefore, impossible to access to this software)
Since users have to spend a lot of money to join the ride, Powercal permit users get the first taste of the product, and I’m sure that with a good experience in 3-4 months people will think on investing more money in their equipment, like direct power meters or trainers.
But I’ve found two main issues to use Powercal more appropriately:
- Cadence sensors should be taken into consideration in order to not move the bike if the user it’s not running his pedals.
if cadence = 0 , then speed = 0.
If cadence = N/A then, not consider cadence for speed calculation
That simple. This is an easy fix that automatically gives Powercal a 100% more usability.
- Also, another problem is the spikes in training. With this type of power meters, it’s impossible to grow more than 100 W in less than 5 seconds. So obviously it’s impossible to go from 200W to 600W for 10 seconds.
Solution? This is a little bit more difficult because it’s something specific of Powercal type power meters. In case it could be possible to identify the powercal as the
The only solution In case it could be possible to identify the powercal as the power meter, and in case the user has a cadence sensor, then, stablishing a multiplier between cadence variation and power output of the power meter, considering also the slope of the in-game session
Let’s see an example:
If the user it’s running with an average of 80RPM, and 250W and with the same slope % it increases from 80RPM to 120RPM (50% increment), then we could apply a multiplier of 1+(0,02 per % increment/decrement) to the Power Output (in this case 1+ (0,02*50) X = 2X multiplier, therefore 250W x 2X = 500W output. So in this case is the user wants to achieve that 600W target for 10 seconds as the workout may suggest, then the user should increase his cadence to 130 RPM (62,5% increments) to get a multiplier of 2,25X so 250W x 2,25 = 562,5 W (plus the increase of W per effort that may put up the power meter output to around 280W, therefore, 630W total output, accomplishing the target, with a more realistic estimation).
To adjust a little bit further the multiplier, we could take in consideration the in-game slope variations. For example by adjusting the slope % to the RPM variations. If the slope increases 5% and the RPM remains the same, then the software must understand that the RPM has increased a 5% variation.
And obviously, the variations should have a decay over the time with an inverse logarithmic function taking time as the input of the function
But to be sincere, I have oversimplified the equation, so in this case, the only feature that it’s short-time feasible it’s the first one I stated.