r0mko said:
casainho said:
R0mko, thanks for the pull request solving the issue of motor type selection.
You're welcome. There's another one for the display FW: https://github.com/OpenSource-EBike-firmware/Color_LCD/pull/89
Ok, I will include on next version soon, I already implemented the following and I am now testing and cleaning the code:
- display: automatic battery resistance measurement
- display: set wheel speed to 0 at startup
- TSDZ2: coast brake negative torque
- TSDZ2: solve overrun issue
- display: used Wh must be editable
- display: quick set max power
- display: street legal / offroad modes
This is my TODO:
- cruise
- virtual throttle
- disable sensors (because some of them can get faulty)
- increase max cadence limit
-- increase PWM frequency
-- implement field weakening
r0mko said:
I personally find that 10A/sec current ramp is way too conservative, so I decided to make it more aggressive to allow faster acceleration. For example, dropping a gear even at 10 A/sec leads to quite long loss of assist. In my opinion, the current ramp is good for soft start to reduce stress on gears and chain. In my opinion, as the motor is already spinning at decent speed, we don't need to limit its current change over time. I believe that there's no problem if at 2000 RPM (267 ERPS) we increase current from 5A to 16A just instantly. But this needs to be checked.
I agree, I also would like to have faster response on some situations.
r0mko said:
casainho said:
Note that limit of 525 ERPS is because at least the voltage phases should have 25 points to be draw otherwise, the motor will be less efficient and have less torque - for the same amount of battery power. You need to evaluate also the efficiency and not only the amount of speed and torque, because battery range / efficiency is important!!
I totally agree that efficiency is a primary goal. But having a possibility to reach high RPM occasionally is also important. One doesn't usually ride at high cadence all the time, so the numbers over 80 RPM are actually achieved only over short periods of time during overtakes or harsh accelerations. I think that feeling of confidence is worth sacrificing of a couple of Wh.
I also agree and sometimes I feel the need of a bit more cadence over the 90 RPM. But my plan is:
Increase max cadence limit:
1. increase PWM frequency
2. implement field weakening
Implementing 1. would mean small loss of efficiency, I think it is loss because of more switching per time and that will make probably the mosfets to here more. Anyway, should be way better than reducing the number of points.
Having 1. would be great and for users with 14S or 15S batteries would be really good!! (considering the 48V motor).
2. Would be nice to have, would bring value mostly for users of 13S batteries or others when they more discharged... (considering the 48V motor).
WARNING: we have few memory available on TSDZ2 motor controller firmware as also very low processing speed available so all this will be hard to implement.
r0mko said:
casainho said:
About the torque mode, if you make a pull request and with clean code, I will accept it. Since would be nice to have the same assist levels working, maybe on torque mode we could consider a fixed cadence of 50 RPM which is about half of max cadence.
I think I'll need to test it a bit more. I am also thinking of combining the both approaches. For example, we can introduce a setting for a percentage of torque sensing vs. power sensing. For example, at 0% the motor calculates the target current purely based on torque, and at 100% we use only pedal power. We need to calculate the target current in both ways simultaneously and then mix values according to the proportion. I guess, this can be a nice replacement of startup boost feature which is, to be honest, a bit cumbersome to set up.
So you agree that not human power mode and not torque mode are perfect, all of them have disadvantages.
I prefer human power because I always drive more dynamic, I stand up at startup to give my own boost while get the same boost from TSDZ2.
My wife have a city bicycle where she prefer to have the startup boost because she doesn't like to stand up at startups and not even change gears, so, she needs a big boost from TSDZ2 at startup. That is why I would like to keep startup boost as also because I remember other users did mention to use it and did not like when it was removed on V0.20 version.
But I agree it is difficult to setup... and if you see, the startup boost is more or less what you say you would like to implement.... you have a time window for boost where the torque value only is used and after you have another time window where the first assist merges/fade to the human power. What could change on your implementation would be not defining the time window duration but instead the cadence middle point transition, like at which point of cadence value the assist is half based on torque and the other half based on human power.