Cycle Analyst V3 preview and first beta release

I installed a Sempu on my bike (G310, Grinfineon, CA, 52V) and due to the way the sensor measures force (bending the spindle), spinning the cranks freely generates HWt spikes in the 0-80W range due to the weight of my legs. To eliminate that I put the start threshold to 85W. That pretty killed motor activation due to free spinning. However now the power level that activates the motor is higher - 86W. If the scale factor is larger 2 or more, the starting power of the motor is 86 * 2 or 86 * 3W which is quite the spike for starting power. Is there any way to make the motor start at HWt - 85W? So for example if HWt is 100W and the scale factor is 3, can the motor power be 75W instead of 300W?
 
I have a new Sempu as well on my Tangent 3210 with Phoniex Edge hv80 Esc and running latest CA beta. I also see higher input reading spikes with essentially no force applies, only crank rotation. Tends to occur after having applied strong crank force. I too ended up setting the starting force at around 80-90 to reduce this.
 
lightrush said:
However now the power level that activates the motor is higher - 86W. If the scale factor is larger 2 or more, the starting power of the motor is 86 * 2 or 86 * 3W which is quite the spike for starting power.

Is there any way to make the motor start at HWt - 85W?
It presently works like this:
If you apply 86W of power, your assist with an 85W Start setting and 2x scale factor will be (86HW-85HW)*2W/HW = 2W. As you can see, the start power is affected by the scaling factor. So, at 2x scaling you need 170HW to overcome the Start level.

If you are requesting that the Start Level be in terms of motor watts (i.e. (86HW*2W/HW) - 85W = 87W ) then that mode is not supported - although there was some discussion about it a while back. This would behave more aggressively with higher scale factors which sounds like what you are trying to avoid.

Remember that the HW screen shows the true human watts but the CA calculates assist based on a minimum rpm of 50 - so initially it is applying more assist than you might expect.
 
Adamlivi said:
I have a new Sempu...
I also see higher input reading spikes with essentially no force applies, only crank rotation. Tends to occur after having applied strong crank force.
I can't duplicate this on the bench with a cursory test -- not sure what is going on there. Anyhow, I'll write a ticket on this and we'll look into it.
Thanks for the report.
 
Interesting. So it sounds like it already operates the way I -want- it to. Can you elaborate on how the 50 RPM threshold can affect the amount of initial power applied? I thought the human watts are calculated based on force and RPM so I thought RPM should be already factored in. Based on that, if my scale factor is 3x, my start threshold is 85W and I see 100W on the human watts display, I would expect to see (100W - 85W) * 3 = 45W motor power, regardless of cadence. Am I misunderstanding how this works?
 
lightrush said:
So it sounds like it already operates the way I -want- it to.
Yep.

Human Watts = torque x rpm.
This is what is reported.
However, for the purposes of assist, the calculation is: (Torque* MAX(50rpm, ActualRpm)).
This means that up to 50rpm, the number on the Human Watts screen is not the value used in the start power/scaling equation. Above that cadence the reported Human Watts is the same as that used in the assist calculations.
 
Hm. So then if HWt shows 86W and I'm spinning with 20 RPM (it does), then torque is 86W / 20RPM = 4.3Nm. Then for PAS, the CA calculates 4.3Nm * 50RPM = 215W. Then that's fed in the other formula, (215W - 85W) * 3 = 390W. If this calculation and logic is correct, then that could explain the power spikes above the start threshold with the Sempu. This does match what I'm observing - significant power output when spinning slowly and with only the weight of my legs. This seems to be entirely driven by the bogus force output of the Sempu generated by leg weight instead of spinning torque (which it can't detect directly). Seems like so long as the scale factor is high, this effect is inevitable. One way to counteract it I came up with is setting the starting threshold to 1W and then using smaller scale factors. That way the bogus leg weight torque isn't multiplied as much and the response feels less disconnected from my legs. I guess another thing to try would be to set the zero force level for the PAS device a little higher.

Is there a way to adjust the 50RPM value used to calculate PAS human watts under 50RPM?

If you apply 86W of power, your assist with an 85W Start setting and 2x scale factor will be (86HW-85HW)*2W/HW = 2W. As you can see, the start power is affected by the scaling factor. So, at 2x scaling you need 170HW to overcome the Start level.

Sorry I didn't understand what the last sentence means. Is start level the start threshold (85W)? If so how does scale factor affect that?
 
lightrush said:
If this calculation and logic is correct, then that could explain the power spikes above the start threshold with the Sempu.

I'm not sure we on the same page with nomenclature. A power spike is a brief transient power application. This should not be happening. If you mean a sudden and persisting power application when PAS kicks in, then that can result from configuration issues and can be addressed.

If the latter is the case, try
  • reducing ThrO->PASRate to a smaller value. This will prevent sudden power application exclusive of operator throttle behavior. You might try 0.5V/sec and work from there. For a normal 3V throttle range, this will take 6 seconds to go to full throttle.
  • reducing PLim->WGain to make both power limited increases/decreases softer. Because the PAS system uses the Power PID controller and so power is essentially always being limited when PAS is engaged, this reduction makes PAS power control more heavily damped (smoother/slower). This will have an adverse effect on the responsiveness of Power Throttle so you might want to forego that throttle mode if this is the solution of choice to make PAS operate as you desire. Try something like 10 and go from there.

lightrush said:
Is there a way to adjust the 50RPM value used to calculate PAS human watts under 50RPM?
No. It was discussed but there seemed too few cases where it proved truly useful.


lightrush said:
If you apply 86W of power, your assist with an 85W Start setting and 2x scale factor will be (86HW-85HW)*2W/HW = 2W. As you can see, the start power is affected by the scaling factor. So, at 2x scaling you need 170HW to overcome the Start level.
Sorry I didn't understand what the last sentence means. Is start level the start threshold (85W)? If so how does scale factor affect that?
Yes - that was an error that arose from refactoring the sample calculation which shows 170W due to both (rider effort + scaling) not rider effort alone. My Bad.
 
Yes, sudden persistent power application.

So are calculations where cadence is 20RPM, start threshold is 85, scale factor is 3 and human watts is 86 can result in persistent 300W+ assist, not spike, correct?
 
BTW, excluding some artefacts like this, the Sempu feels levels better than the Thun I used to have. Just trying to figure out if I can smooth those out.
 
lightrush said:
Yes, sudden persistent power application.
Ok, good. That's not entirely unexpected (whew...)


lightrush said:
So are calculations where cadence is 20RPM, start threshold is 85, scale factor is 3 and human watts is 86 can result in persistent 300W+ assist, not spike, correct?
Yes. Following your calculations above to derive the raw torque and then applying the baseline 50rpm instead of the actual 20rpm, this is entirely possible.

I think if you twiddle PASRate and WGain you will be able to get a much smoother and natural power application. In actuality, 50rpm is a pretty slow cadence and you should get there super quick. That rpm was really chosen so that you have some significant amount of power on an incline or off the line before you got to any kind of reasonable cadence. So - this brief period of coming up to speed is pretty quick on the flat and falls pretty nicely within the ramping delays achievable with PASRate. FWIW: This baseline assist cadence in 3.0x versions was 55rpm, but we backed it down a trifle in 3.1.

ThrO->xxxRate Tuning Tip:
  • If you switch to the Diagnostics Screen (one left of Main) and watch the <space> on the first line right after "Out", you will see little 'U', 'D', 'F', and 'P' flags appear when UpRate, DownRate, FastRate, and PasRate limits are in play respectively. This can help you understand what the CA is doing when these power transitions occur and help guide you in tuning these settings.

    And yes - these are presently undocumented flags that were only mentioned in early 3.1 beta release posts and so do not appear in the [strike]Un[/strike]official Guide which was written earlier for 3.0x.....

 
Awesome. So we're on the same page about how this works and there isn't something inherently wrong I'm doing. I totally get why max(50, RPM) is done. The use case when this produces an artefact for me is when I'm moving slowly 5-15 kph, barely spinning the cranks and not trying to accelerate. In that state I'd expect little to no assist and instead I'm getting quite a bit. It's not intolerable and as you said, I can try dampening it with the PAS ramp. The alternative I currently employ - 1W start threshold and lower scale factor also seems to make it decent. Yes the motor activates no matter how slow or weakly I pedal, but it operates at low power. Ultimately it's Sempu's fault that it detects spindle bending instead of twisting that's the root of this, which results in non-pedaling torque in some cases, but that's also factored in its price so all is well. Plus it feels vastly better than the much more expensive Thun in the majority of use cases.
 
lightrush said:
The use case when this produces an artifact for me is when I'm moving slowly 5-15 kph, barely spinning the cranks and not trying to accelerate. In that state I'd expect little to no assist and instead I'm getting quite a bit.
Ahh - okay - steady state not transitioning - well you could try two things:
  • Raise SLim->StrtSpeed so you won't get assist below 20kph.
    (This has some obvious disadvantages in other situations)
  • Scale down PAS->StrtThrsh and PAS->StopThrsh so PAS won't start until you get to 20rpm. These are the pole-to-pole times to detect rotation. So for a 20rpm Start threshold with the Sempu 24 poles you might try 0.13sec/pole and use a Stop Thresh of about 2/3 that or 0.08sec/pole (see attached dopey calculator...).
    (This will make PAS start-up more lethargic and the cutoff more abrupt, but if your troublesome Use Case is common this might be a good trade-off...)
So, a couple more possible setting tweaks for your experiments....


View attachment PasThreshFromRpm.xlsx
 
The first option is definitely a no-go. :D

The second, wouldn't that make PAS not help during starting from standstill? I really like feeling that help. :p
 
I was also thinking of putting the start threshold some margin above the weight on pedals torque. Then I either have to step harder on the pedals to overcome it which already works fine, or spin fast with little force to do so. In the latter case spinning faster and getting assist may feel more natural.
 
I tried a Shimano STEPS on the bike expo in Toronto two years ago and it felt amazing. This setup feels dangerously close to it. :D
 
Hey Lightrush. I’m tracking with you. Tangent with a Sempu just added. Could you share your relevant tweaked settings on power and pas. I’m getting closer butthink you’re ahead of me on the learning curve.

Thanks in advance.
 
I'm going to be away till next week so I can't check my exact settings but I think they're:

1. Start with all defaults for Sempu
2. Override torque averaging to 12 (default 24)
3. PAS rate is default 1V/s which for Tangent should be approximately 0.3ms/s. Make sure your power limit is representative of the maximum power you want during PAS. If it isn't, then recalculate your PAS rate to reach the max power you want during PAS in 3+ seconds. E.g. if your max power is 1500W but you want 500W max for PAS, you should set PAS rate to 0.1ms/s. Within 3 seconds the throttle will be at 1+0.3ms which is 1/3 of the maximum throttle and should produce 1/3 of the max power - 500W.
4. Override start threshold to 1W (default 50W)
5. Use smaller scale factors 1-3 instead of 2-5

Experiment with anything teklektik or I mentioned.
 
I have a CA3 that displays VERS3PRLM9 when I turn it on. I am trying to update it to the latest firmware. When I try to install it I get this message:





Where do I go from here?
 
Back
Top