Some news on the reverse enginering and opensource firmware effort:
- We have as of today also managed to reverse engineer the Firmware Upgrade protocol which is used by BESST to upgrade controller firmwares. This means that in the future we will be able to create update software that does not...
Yes you are interprenting that correctly, Bafang is pretty conservative with this number.
the default is 42 in this case, so 41 for the ultra seems to be right.
41v or 42v might be beter for battery longevity, but if you only occationaly (lets say one in 6 rides) reach below 10%, it's...
Reprogramming is not possible currently and possibly never for the official firmwares (modified or not).
What we've currently done is expose a few(!) options by manually altering firmwares which can be flashed by using the BESST tool. However: I just started doing so yesterday. So I would say...
@savas I found what might have caused your issue while decoding the Bafang firmwares.
The bafang firmwares have a relatively low "low cutoff voltage" aka "0% battery voltage".
It's very well possible that Bosch have a a lower and more sane "low cutoff voltage".
Here is an experimental firmware...
Short update:
It seems we are having some success in manually altering the firmwares to allow for a higher max current.
This means we can now invite more if you to test:
https://github.com/OpenSourceEBike/Bafang_M500_M600/tree/main/Firmwares/Custom/Motor
Also, we've been able to unlock the...
Today we figured out which controller is used, so we also need people with experience with microcontrollers.
Specifically we need people with experience with the "NXP ST32K142" microcontroller
At the moment we need work with the CANBUS, we hit a snag where most GET commands donnot get a response from the firmware, we need people with CANBUS experience and/or Javascript to help us, more than we need people who can build Apps. Because we need to figure out this CANBUS protocol.
Thanks for the thumbs up!
Yesterday I spend a whole day on reverse enginering the CANBUS FrameID's used and I can now quite confidently say that I can translate every frameid to a certain function inside BESST and connect it to certain configuration variables.
What's needed from now on is...
A little secret about the Bafang first assist level:
It is about 50% too agressive (in comparison to bosch et.al.) aka putting too many watts through the motor (providing too much assistence). This might explain your performance, because if you add 50% more range you get quite close to the Bosch...
@Migli54 I've done some initial work on getting more CANBUS framenumbers and information out of the BESST software package.
You might want to check it out:
https://github.com/OpenSourceEBike/Bafang_M500_M600/blob/main/CANBUS/BESST-CANBUS.md
It's basically the code snippet from the BEST software...
That would be amazing, you can continue where CiDi left off :-D
What CiDi has done till now, is reverse engineer the SET parameters available in the BESST tool, so I think documenting all SET and GET parameters that are available to/from the display would be a good start.
That might also give...
Some can be changed already (even with non-BESST tools), but indeed most of them are still not reverse engineerd.
I need someone to use CANBUS tools to find out the other GET adresses on the CANBUS and investigate if he/she can set those as well.