Torque-sensing AND Cadence-sensing — an idea

jonsully

1 W
Joined
Jul 25, 2023
Messages
63
Location
Columbus, OH
I'm considering which motor and drivetrain system I want to employ for my next conversion (a Surly Ogre) and hoping I can figure out a way to have both cadence-based pedal-assist that supports the BBSHD style of allowing me to tailor a specific target cadence RPM that makes me happy (e.g. the motor does all the work to get me to 85rpm but doesn't surpass me there) and also support torque-based PAS for more technical / specific operations. The idea being that I might ride the bike up to a trail park and use cadence-sensing on the way there, but once I get there, switch to torque-sensing for the trail ride itself.

I'm looking at GRIN's All-Axle v3 + a Phaserunner + a Cycle Analyst 3 and, assuming I only have either the torque sensor or the cadence sensor plugged in at a time (I'd just stop and swap when I get to the park and then again before I hop on the road back home), I think this would work? My only concern is the type of PAS modes the CA3 supports. In particular, I'm not totally sure if I can replicate the "help me get to 85rpm then just help me stay there" concept that works so well in the BBSHD. CA3 docs, https://ebikes.ca/amfile/file/download/file/35/, page 22

1714346905005.png

So I guess my question is, assuming I get a cadence sensor into / onto my bottom bracket (so that the reading is my actual human RPM), is the "Basic (Pwr)" style of PAS from the CA3 able to encode the logic of "start with high/max power then once I get to 85rpm, just help me stay at that cadence by adding whatever power is necessary"?

Curious for y'all's input! 🙏
 
I'm looking at GRIN's All-Axle v3 + a Phaserunner + a Cycle Analyst 3 and, assuming I only have either the torque sensor or the cadence sensor plugged in at a time

So I guess my question is, assuming I get a cadence sensor into / onto my bottom bracket (so that the reading is my actual human RPM), is the "Basic (Pwr)" style of PAS from the CA3 able to encode the logic of "start with high/max power then once I get to 85rpm, just help me stay at that cadence by adding whatever power is necessary"?

Curious for y'all's input! 🙏
Many torque sensing PAS units have both torque and cadence sensing built in. The ERider, for example "The 2 wire quadrature signal for the cadence sensing allows it to take advantage of the latest CA3 firmware which tracks back-pedal sensing for regenerative braking where applicable." :

Basic(ThO) is probably close to what you're looking for. You could adjust the torque sensing to give you the higher start power.
 
I guess what I'm realizing in reading over the definitions of the three types of PAS that the CA3 offers is that there doesn't appear to be anything quite like what I'm hoping to replicate — a form of pedal assist that purely seeks to help you reach a specific cadence RPM and stay there, also not pushing beyond that RPM.

Basic(ThO), particularly on the Phaserunner (where throttle input can be interpreted in different ways), sounds interesting but I wonder if it would mean that I'd need to change the PAS level every time I shift gears on the bike and just have all the math done correctly such that "okay in gear 3 at 85rpm that equals a road speed of... 14.3mph. In gear 4 at 85rpm that equals a road speed of... 16.8mph" etc. etc. Since Basic(ThO) should mean that each PAS level is essentially just a set road speed (I think?)
 
...a form of pedal assist that purely seeks to help you reach a specific cadence RPM and stay there, also not pushing beyond that RPM
How about installing a BB cadence sensor, and using a leg of the output of that to drive the speed loop in the CA3?
 
> installing a BB cadence sensor

That is the plan, if I can figure out what CA3 setting would accomplish the software layer I'm wanting!

> to drive the speed loop in the CA3

Can you elaborate?
 
The combined specific mode you want may not exist, but the CA does allow for easy-switch profiles which means you could potentially get two modes setup you do like and quick switch between them.
 
Basic(ThO), particularly on the Phaserunner (where throttle input can be interpreted in different ways), sounds interesting but I wonder if it would mean that I'd need to change the PAS level every time I shift gears on the bike and just have all the math done correctly such that "okay in gear 3 at 85rpm that equals a road speed of... 14.3mph. In gear 4 at 85rpm that equals a road speed of... 16.8mph" etc. etc. Since Basic(ThO) should mean that each PAS level is essentially just a set road speed (I think?)
Depends on what you want. When I use PAS, I use the cadence power adjustment so when I downshiftt for a steep hill and my cadence increases, the assist ramps up due to the increased cadence so in the end I supply the same pedaling effort as on flat ground but when going up a hill. There a several parameters to get what you want or maybe better than what you want. For me, I don’t want to pedal harder when I get to a hill.
 
For me, I don’t want to pedal harder when I get to a hill.

For sure, and I agree. I accomplish the same idea with my BBSHD programming but I think the algorithm is just different. As I begin to approach a hill, putting in no additional effort, my cadence naturally begins to fall. So the BBSHD kicks in more power to keep my cadence up where it should be. And thus I don't pedal any harder but still go over the hill (BBSHD comping the extra required watts).

Letting it percolate in my brain, I think Basic(ThO) is probably the closest I'll get to my goal. I'll have to compute out for my given gearing and preferred RPM what the specific road speed is at said RPM, then just change the PAS level to match the gear number, but that should give me the right setup — the motor helping me stay at that RPM (road speed at a known gear), helping more or less given terrain and human input.

I do wish the pure-RPM style of PAS was available in the CA3! Though I recognize that I'll likely be one of very few running a dedicated BB cadence sensor for this reason.

the CA does allow for easy-switch profiles which means you could potentially get two modes setup you do like and quick switch between them

Nice! I'll have to read up on the profile/switching feature. That'll be great for switching the sensor on the fly.
 
To tell you the truth, I barely use PAS anymore and just pedal with throttle. I probably would use it more if the Grin digital buttons weren't so crappy. I don't think they could have made them worse. Tiny, super hard to press, and no feedback that you've actually made contact because you're mashing as hard as you can. I set my PAS to 280W, and don't even bother with the levels. Some day, I'll take the electronics out of the Grin pad and cannibalize and modify my old KT button pad to work with my CA.

One thing about the CA, after you get used to how the logic works, you can kludge together solutions to do a lot of things. Thinking out loud, IF I really wanted PAS to be based on speed, I'd use an analog input to the CA to set max speed, and set the PAS settings for the way you want it to kick in or out, and the assist high. That way any time you pedal, it will accelerate up to that speed and stay there. I'd probably throw an override switch in too.

A side note: throttle always overrides PAS with the CA. For instance, even though I have PAS set for 280W, which is too much while navigating foot traffic. I use my throttle to lower assist, by applying a very small amount of throttle. That let's me keep pedaling, while slowing down to pass by people, then let off the throttle to get back up to speed.
 
Hah, I appreciate the thoughts! I actually don't ride with throttle at all, so it's all about PAS for me. But good insights nonetheless!
 
> to drive the speed loop in the CA3

Can you elaborate?
I mean connect one of the quadrature outputs from the cadence sensor to the speed input on the CA3, so that you can use the CA3's speed PID loop to servo to a specific cadence, rather than a wheel speed.
 
I mean connect one of the quadrature outputs from the cadence sensor to the speed input on the CA3, so that you can use the CA3's speed PID loop to servo to a specific cadence, rather than a wheel speed.

Ah! That's clever! If that's doable (and easily swappable back for when I want to go torque-sensing), that sounds great! Awesome idea.
 
GRIN did respond to my question email with:

To clarify, the Cycle Analyst V3 (CA3) can indeed support both a torque sensor and a cadence sensor simultaneously.
...
You can configure it to switch between a mode that uses a torque multiplier for power assistance based on your pedaling force and another mode that targets a specific cadence RPM for more traditional cadence-based assist.

Which sounds great, but this message didn't have the particular setup details for how to accomplish those two things. I'll report back here as I hear more there. Both of those notes from GRIN sound like exactly what I'm hoping to build!
 
Back
Top