Cycle Analyst V3 preview and first beta release

Some time ago on the ASI Controller thread I asked if there was a way to disable the plug braking phase of motor braking, some way to allow only regenerative braking, the force for which would gradually fade to zero as vehicle speed drops. My motivation for this request is explained in some detail in this post:

https://endless-sphere.com/forums/viewtopic.php?f=31&t=65031&p=1166279#p1166126

An advantage of disallowing plugging altogether is that plug braking force is much greater and, unlike regeneration, is capable of skidding a tire, which is usually not desirable.

Although I'm still waiting for a response from Grin to learn if there is some obscure feature in BACDoor that can satisfy this on the BAC2000 and other similar ASI controllers, I thought of another way to achieve the same effect through a new feature in the CA3: a regen braking current limit.

Commanded regen current using throttle-mediated motor braking by supplying an appropriately-programmed controller fed a throttle signal from 0.85v down to 0.00v, typically varies on my bikes between -30 Amps and +40 Amps, the latter consuming battery power as the controller operates in its plugging regime below about 15 kph.

I propose a constraint on the upper bound of this range while commanding motor braking through the CA3 "EBrake" feature. In my case I might set a regen braking limit of zero (0.0) Amps to allow only negative current. Feedback behavior might use the current gain parameters, but it may be desirable to have a tighter feedback current loop for motor braking current. This will still allow some plugging at moderate speed as regeneration transitions to plugging but will not consume battery energy, my primary concern. The allowed range on this current limit should cover both positive and negative values.

Although my concern is to limit motor braking only to negative current values, it may be useful to offer a second constraint on the most negative value. This might help users who cannot adjust their controller's maximum negative regen current and who wish to prevent over-stressing a battery that can only accept a modest charge current.
 
Dartman said:
I noticed weird issue after updating CA3-1b13_Conventional firmware. When I power on bike and twist throttle first time and let go, motor keeps running two seconds. Even if I try to slow motor with gently braking, it pulls about 50 watts power. This happen only once after power is turned on, after that all is normal... Untill I turn power off and wait a while, like 10 seconds, then power on and runaway appear again.
It seems this is repeatable, so we should be able to track down the cause...
Please PM your settings file.
 
Hey guys, we just finished making a video tutorial which shows the basic setup process for the digi aux button input option in the new CA3.1 firmware builds that Teklektik has been developing here. The feature has been present since last summer and explained in this thread a few times, but I think a video demonstration can communicate a lot for those who missed appreciating the details in the earlier posts:
[youtube]IU4qWSXtJUU[/youtube]
 
Nice new features Justin / Teklektik!
Can the digital buttons be programmed to do different things, or is it only one programmable digital parameter and one analog ?
Eg the down button scrolls through say an amp limit and the up button scrolls through a speed limit ?
Having the ability to programmable multiple fine steps of increment now almost does away with the need for the analog aux, aside from those who like the tactile feel of a pot!
 
Hi guys, brought to an cycle analyst, it burned nearly all the parts, including the display and microcontroller, I change all defective parts, but there is a problem with the firmware and bootlader, tell me where to get? It would be nice if there is a circuit with nominal parts of the details can not be read for example Q2.
PCB Pic
IMGP3352_20170215_093624-1.jpg
 
Hyena said:
Can the digital buttons be programmed to do different things, or is it only one programmable digital parameter and one analog ?
Hey Hyena!
Nope, both buttons are tied to the same function parameter, so one analog function and one digital function.

Hyena said:
Having the ability to program multiple fine steps of increment now almost does away with the need for the analog aux, aside from those who like the tactile feel of a pot!
Ya - I'm still a fan of the pot for some things, but I've tried PAS with 32 levels and it's really tunable and drives nicely. The situation is very different if you're riding alone where a few levels can be okay or trying to match performance with another rider where more refined control becomes more important to match speeds, etc.

We actually added the 'long-press-means-go-full-hi-or-full-lo' feature specifically to allow use of many fine steps so you can quickly jump to the extremes without stepping all the way.
 
us__007 said:
Hi guys, brought to an cycle analyst, it burned nearly all the parts, including the display and microcontroller, I change all defective parts, but there is a problem with the firmware and bootlader, tell me where to get?
Wow, it sounds like a pretty extensive rebuild. The processor is nothing special, but the bootloader is proprietary and necessary to decrypt and load any of the posted CA firmware. Grin is very good in supporting DIY repairs, but I'm not sure about getting you a naked processor preprogrammed with the bootloader. You would likely have better luck getting a whole replacement PCB. In any case, you need to email Grin Technical Support directly.
 
teklektik said:
I've tried PAS with 32 levels and it's really tunable and drives nicely.
Wow, I can't imagine you'd need 32 discrete levels of PAS adjustment! But then I don't ride with others as you've said.
As Tats said pretty much the different presets are perfect for tuning the bike to most applications.
Are they still limited to 3 in the new firmware or have they been increased as well ? With the ability to scroll up and down now I imagine there's no need to limit it just to 3 ?

I find it's only on really high powered bikes I could do with a 4th preset
Legal: 200w for those chance encounters but essentially useless for pushing along a heavy bike
Eco: ~1000w and speed limited to ~35km/hr for maximum range - essentially manual PAS with a throttle
Offroad: ~3kw - good enough for most trail riding where you need some shove to get around rough terrain
Unlimited: e-moto mode - for the occasional squirt when you need max power

teklektik said:
I'm still a fan of the pot for some things
I must admit, I have a strong desire to add one simply so I can add a label around it that goes up to 11 :p

We actually added the 'long-press-means-go-full-hi-or-full-lo' feature specifically to allow use of many fine steps so you can quickly jump to the extremes without stepping all the way.
Cool. Again great work on the new features ! :)
 
Hyena said:
As Tats said pretty much the different presets are perfect for tuning the bike to most applications.
Are they still limited to 3 in the new firmware or have they been increased as well ?
Yep - it's a configuration storage thing - no memory to do that sort of thing. If fact, some time back, the CA3 was cut back from three battery presets to just two just to recover the extra storage...

Hyena said:
I find it's only on really high powered bikes I could do with a 4th preset
If you don't have PAS and so don't need to adjust it, you can do nicely with the digital input for the presets and a simple two position switch for current limiting either as a 'walk' mode or as a 'boost' mode. That walk/boost mode would apply to all presets and would likely take the first or last (4th) preset case off the table as just special cases of extra or restricted power.

If that looks attractive, but you really want Basic non-torque PAS as well, you can use the AutoTrqPAS gimmick in the Guide to add a PAS Assist pot to the TRQ input instead of the AuxA input so you have three controls on the CA instead of two (presets, current limit, PAS). So - maybe more than one way to get what you want.... :D
 
Hi teklektic - is the "AutoTrqPAS gimmick in the Guide" setup the same inb13 and can I have different setting per preset? I tried to figure this out but the parameter options looked different?

e.g.. I can set torque scale for preset 1 and have as per the guide 175-455watts using TrqScale 38.2, Start 265, AssistFactor 1. But I don't seem to have the option to set a different torqscale for preset 2 or 3?
 
Oops, in the post above I meant to say the 'Virtual Torque Sensor' gimmick, not 'AutoTrqPAS' (described in the Guide as "6.6 PAS Assist Control without AUX Pot – DIY Virtual Torque Sensor"). This uses the AutoTrqPAS idea but most importantly uses a pot to supply a variable voltage to the TRQ input instead of a real PAS torque signal. Since the assist power in TorqPAS mode depends on rpm x torque, this allows the PAS assist to be adjusted for a Basic PAS wheel without using the Aux input. This is really a trick from before the digital Aux feature, but it still works if you have the need.

Apologies for any confusion there....

Tats said:
Hi teklektic - is the "AutoTrqPAS gimmick in the Guide" setup the same inb13 and can I have different setting per preset? I tried to figure this out but the parameter options looked different?

The AutoTrqPAS chapter of the Guide became obsolete in b11 and will disappear in the 3.1 version of the Guide. This gimmick originally provided a means to get RPM-scaled PAS with a simple PAS wheel by running in TorqPAS mode where the assist calculation depends in part on rpm.

As you noted, the parameters mentioned in the 3.0 Guide have changed. Now, to get the former AutoTrqPAS rpm scaling effect, you skip all the funky Guide setup tables, select AutoPAS, and adjust the 'Assist Start Power' and 'Assist Power Factor' to set the basic Assist level and desired amount of extra Watts per rpm. Easy-peasy. Setting the 'Assist Power Factor' to zero means there is no rpm scaling and things work like the old 3.0 AutoPAS. You can configure these differently for each preset.

AutoTrqPasReplacement.png
In the configuration above, we see that up to 55rpm the CA will deliver 400W (the 55rpm is not configurable). Over 55 rpm the CA will deliver 2W extra per rpm. So, this means the Assist will increase from 400W @ 55rpm to 470W @ 90rpm (400W + (90rpm - 55rpm)*2W/rpm = 470W). This is very modest increase that can be increased by raising the Assist Power Factor. These Assist Levels can be scaled 0-100% by an AuxA or AuxD 'PAS Level' setting.
 
Grin was nice enough to replace my PAS sensor that partially crapped out, so I've got my PAS up and running again!
Of course while I was there, I couldn't resist picking up a new 2-button Digital Aux for $10!

I updated to 3.1 b13 firmware after taking some snapshots of my previous settings and stats.

In the setup I set 11 steps for Digital Aux switch set to PAS Level.
The 3-position Analog Aux rocker switch is now daisy-chained to the Digital Aux input.

The Analog Aux is tied to presets:
1-Power (just throttle only), 2-Low power 400W AutoPAS, and 3-High power 700W AutoPAS.

I was riding in #2 lower power PAS at around the highest Digital Aux level 10 or 11 setting.
Then I switched over to #3 for High power forgetting which level I was at and got a bit more power than I needed.

When you change levels it shows what setting you're at, but would it be possible to also show briefly what level # the Dig Aux is at when you switch presets?

Eg. show the regular DigAux screen after the normal one after you change presets?
Both screens show for about 2-secs, it could just show the 2nd DigAux for 1 sec if you think that's too much disruption.

Another idea, it might also be neat to match Dig Aux Level to closest PAS Power Watt level if you switch presets.

Eg. Dig Aux set to 400W max on Level 10 of 10 then switching to a different preset with lets say 800W max would change to preset #5 of 10 to match previous power level..

Thanks and keep up the good work!
 
You might try configuring the custom field to display AuxD which will show the present Assist Level in Watts. This should let you make a level adjustment after a preset change to re-establish something like your previous assist level.

I do see your point - the issue you describe will get some discussion - it can be difficult to solve some of these problems in a general way that doesn't create undesirable behavior with other configurations. We have discussed forcing the custom field to the AuxA/AuxD fields on an AUX input change if the fields were configured. Applying this strategy to a preset change would accomplish a display effect similar to what you have described without intruding with an additional transient pop-up screen.
 
Hi teklektik,

Thanks for the heads up, I haven't changed the custom fields before.
I've just enabled the AuxD custom field now to see what it looks like.

The AuxD custom field display looks good, showing you the % scaled PAS Level Watts.
I wonder if you could make the AuxD custom field display once after a preset change, if AuxD was setup, even if it wasn't selected in the custom field settings? If not desirable for everyone, maybe this could be enabled through an extra variable setup in the AuxD menu, Show After Preset Change? [Y/N]

I don't think I need to see it cycling through with all the other custom fields Km, Ah, Temp all the time.. its just after a preset change when I might not remember what I set the AuxD to that I'd like to see it.

Cheers!
 
Hi Tech, cool timing for this update. Just got my newest project up and running. Loaded 3.1 and found that a few of the settings labels have changed and some have moved around a little and some new ones have been added. I have often relied on the the page that allows each of the sections to be opened up and viewed so that I can see where stuff is likely to be found. I'm sure that documentation for the new upgrades are on the way. But is there any way to show just the arrangement of the settings in hierarchical tree or something...just as a temporary reference.
 
v3.1 Beta 14 Released (b13 with added documentation)

Obiwan007 made a valid point about the lack of a contemporary menu/settings summary (Thanks!).

So -- here's b14 which is identical to b13 except for an added file "SettingsSummary.txt" that is installed along with the Release Notes. This contains some overview material in the manner of the Grin CA3 Web page settings information (actually largely pilfered from that page).

If you have installed b13, there is no reason to download this version, it is only a documentation change. Since it was in hand, it seemed worth getting out there to fill the gap until the next regular code update comes out. As in b13, two versions are provided to support both conventional and Schottky diodes in DigiAux circuits.

EDIT: Here's a corrected description of the AuxA 'Lo Deadband' and 'Hi Deadband' settings and tips on adjustment. This change will appear in the next beta release but in itself didn't warrant a new release - so - here you go... :)

Code:
[Lo Deadband]
	Specifies the voltage offset above the baseline voltage at which the pot
	will be considered to be at MINIMUM setting.  This setting may be 0V to
	some small number and can be tuned by rotating the pot upward from
	minumum while observing the AuxA preview percentage (e.g. configure for
	AmpsLim so '%Amp' is displayed on the preview screen). A proper setting
	shows a no-rotation value of 0% that increases shortly after the pot
	begins to be turned upward.  This option is present only for pots with
	limiting (non-Preset) function.
	
[Hi Deadband]
	Specifies the voltage offset below 5V at which the pot will be considered
	to be at MAXIMUM setting.  This setting may be 0V to some small number
	and can be tuned by rotating the pot downward from full rotation and
	observing the AuxA preview percentage (e.g. configure for AmpsLim so
	'%Amp' is displayed on the preview screen). A proper setting shows a
	full rotation value of 99% that decreases shortly after the pot begins
	to be turned downward. This option is present only for pots with
	limiting (non-Preset) function.

Download!
View attachment CA3-1b14_Conventional.zip
(Previously implemented 3.1b13 beta features (part of this build) described here and in the Release Notes.)
(Newer 3.1b15 beta release available here!)
 
Stealth_Rider said:
Any ETA on when a V3.1 final will be available?
Nope - we really do want to get this out there, but the project is driven more by the target features than a hard date for release.
We have one significant new feature and a handful of small items left to go on the 3.1 feature pile - so I'd say in time for bike season in the northern hemisphere, but not much detail beyond that... ;)

Unless you are building a bike for a client and feel the need for a formal production release, I'd encourage you to load up the latest beta package - it has 95% of the final 3.1 stuff already and looks solid.
 
v3.1 Beta 15 Released

3.1b15 is ready to go with a bit of minor tidying-up and a nifty new regen feature. Once again, new features introduced changes to the EEPROM map, so a full 'from-scratch' config is required...

Here's a complete list of changes:

Code:
ReleaseNotes.txt - Summary of changes in this release

Release: 3.1b15                                                      2017-03-18

Note: V3.1b15 Setup files are **incompatible** with firmware or Setup files
      of **ALL** prior releases including any earlier 3.1 version.

 (1) 2918 - Change DigiAux circuit to use Schottky Diodes
*(2) 3834 - (new) Eliminate ThotPAS mode
*(3) 3838 - (new) Relocate 'PAS->MxThotSpeed' to 'SLim->MxNoPdlSpd'
 (4) 3994 - Torque Offset re-sample mode has unnecessary 'sample display' view
 (5) 2020 - 'Torque Offset' operation has different terminology than 'Zero Amps'
 (6) 4000 - AuxA 'Lo Deadband' setting cannot always eliminate deadband
*(7) 2418 - (new) Extend Speed Limiting to use regen braking

Here's a rundown of noteworthy features:

View attachment 1

  • DigiAux support has migrated to use Schottky diodes

    Justin discussed this in an earlier post (DK-11 Digital AUX buttons see the light of day). This change has been finalized and the firmware will henceforth support only Schottky diodes. If you wired up a custom switch, a direct replacement with any low-power Schottky with a Vfwd of about 0.4V will do to replace your existing conventional diodes (e.g. 1N5711).

  • Eliminate 'ThotPAS' mode

    In the past there was a PAS->Throt PAS mode that actually provided no assist but otherwise provided the same pedaling requirements as the other PAS modes. This core throttle/pedal behavior is now present in all cases whenever a PAS device is installed and the dedicated ThrotPAS mode has been eliminated. Specifically, the original no-assist ThrotPAS behavior is obtainable by installing a PAS device and selecting PAS->NoAssist. The minimum 'no pedal speed' setting has been relocated to the 'Speed Limit' category to group speed-related parameters together.

  • AuxA 'Lo Deadband' setting cannot always eliminate deadband

    The change to Schottky diodes for DigiAux buttons opened the possibility of slight voltage variations due to differences in diode types and production runs. The internal 'AuxD enabled' Low Pot voltage has been reduced to 0.7525V from the previous 0.86V when in DigiAux mode so that there is greater adjustment range on Lo Deadband to ensure that AuxA can always be adjusted to 0% scaling. In general this will have no effect, but revisiting the Lo Deadband setting is recommended to ensure proper AuxA operation.

  • Extend Speed Limiting to use regen braking

    The Speed PID controller normally can remove all power as the most extreme measure to reduce speed. A new parameter SLim->RegenLmtg now allows speed limiting to automatically engage regen to actively brake the bike to slow excessive speed. This feature is primarily intended for folks with terrain where regen is used to slow on hills. With this feature engaged, the maximum speed can be set and optionally controlled by Aux scaling to cause the bike to automatically switch to regen on downgrades without explicit rider braking. When the road begins to level out, regen is rolled back and normal power reapplied. Different max speeds might be set in different presets or AuxD might be configured for speed limiting with steps of 2 mph or so.

    This feature can work in concert with proportional throttle regen control and similarly requires a Grinfineon or Phaserunner controller.

An updated SettingsSummary.txt file is included and installed with the package.

As always, feedback posts are appreciated! :D

Download!

(Previously implemented 3.1b14 beta features (part of this build) described here and in the Release Notes.)
(Newer 3.1b16 beta release available here!)
 
Thank you so much Justin and Teklektik for everything you are doing!

Just received my 2 button DigiAux from you guys and installed b14 this weekend. I love it! The combination of the 3 position analog switch for presets and the 2 button DigiAux for pedal assist levels works awesome!

I'll test b15 next.

Appreciate you guys!

Jeff
 
Thanks, teklektik, for releasing b15 and adding optional feature of using regeneration to hold a speed limit. I have ordered my AuxD buttons from Grin, and will report back as soon as I've had a chance to test the new feature.

In the meantime perhaps you could look into a minor bug I found in b13.

I use AuxA to control PAS Level, which is set to PAS Watts. When I dial in a particular watt setting I observe that the actual watts limit to be roughly 15-20 watts greater. E.g. I dial in a watt limit of 400, but the controller draws 415-420 watts when limiting. The difference appears to be constant rather than proportional in that if I dial in a limit of 135 watts I observe the controller drawing 150-155 watts.

Question: The "CA3 Bugs and Features List" appears to be rather out of date.

http://www.ebikes.ca/product-info/cycle-analyst-3.html

Can you tell me if a more recent list is available for beta users to see? And, more importantly, should beta users be reporting bugs or feature requests through the Grin web interface on that page, on this E-S forum, or in both places? Thanks.
 
mrbill said:
...perhaps you could look into a minor bug I found in b13.

I use AuxA to control PAS Level, which is set to PAS Watts. When I dial in a particular watt setting I observe that the actual watts limit to be roughly 15-20 watts greater. E.g. I dial in a watt limit of 400, but the controller draws 415-420 watts when limiting. The difference appears to be constant rather than proportional in that if I dial in a limit of 135 watts I observe the controller drawing 150-155 watts.
Hmmm - okay. We have another little forest fire to address, but I'll cut a ticket for that to make sure it gets examined. I believe this may result from some fixed point arithmetic differences arising from different calculations used for setting and applying the values. There's also a somewhat annoying precision error where values entered in the SetupUtil as 5.00 display as 4.99 on the CA.

mrbill said:
Question: The "CA3 Bugs and Features List" appears to be rather out of date.

Can you tell me if a more recent list is available for beta users to see?
And, more importantly, should beta users be reporting bugs or feature requests through the Grin web interface on that page, on this E-S forum, or in both places?
These are very good questions.

The short form is that it's better to post up your bugs here in the beta thread. There are no means to examine the actual bug list for the CA. We have added the Release Notes to the packaging to offer a summary of what has been changed, but sometimes there are other structural changes that are not presented in the Notes since they have no customer-facing impact.

The long story is that Justin instituted the spreadsheet bug list some time back as a step in the right direction to track bugs but it's really unsuitable for a multi-developer or enterprise bug tracking system. So, when CA work went multi-developer about a year and a half ago we imported all the bugs from the spreadsheet into an in-house system and began using that system exclusively for tracking problems and enhancements. The web page gets examined from time to time, but to be honest, it's not really in the flow of normal problem reporting and resolution. We should either take it down or get it more directly into the flow.
 
Back
Top