Reverse engineering an Ananda M100 mid-drive motor

sseefried

1 µW
Joined
Nov 26, 2021
Messages
1
I recently bought an e-bike which has obviously been assembled from parts. However the assembler has gone to some length to obscure the exact parts. With a little judicious googling of serial numbers I discovered that the TFT display is a Bafang 500C but the motor is an Ananda M100 (http://www.ananda.com.cn/index.php/product/view/cid/4/id/25.html). This seems like quite an odd combination!

I'm interested in increasing the speed at which the PAS cuts out. It's currently set to 25km/h even though, on my regular push bike, I could easily get up to 32km/h on the flat just using my own leg muscles. This is a little hard now given the weight of the bike is around 27kg and the friction seems to be a lot higher.

The Bafang 500C display has been flashed with some custom graphics to make it look like it was made by the assembler of the bike, but the menu structure is the same. I've tried to get to the password protected part of the menu (https://cdn.shopify.com/s/files/1/0537/7176/3911/files/500C_Display_Manual.pdf?v=1628090638) but it doesn't appear to be the default password of *1919*. I also tried *1199* (which Luna cycles sets theirs too) but this did not work either. I think it's safe to say that the password has been set to a custom value.

Even if I was able to get to this part of the menu it's not immediately obvious to me that a Bafang display could even talk to the controller of the Ananda M100. Can it? Or is it a completely different protocol.

I'm aware that there are "chips" out there that you can buy that will remove the speed limitation on a wide range of motors but I'm not particularly interested in paying for them.

Can you suggest what I might do here?

Here are some specific questions.

1. How is it that a Bafang 500C display worksa with an Ananda M100 motor?

2. Could you, in principle, increase the speed cut-off using the Bafang 500C display (if one had the password?) Do they speak the same protocol?

3. Or would it be better to talk directly to the Ananda M100 controller somehow? If so, how would I go about this? I saw that

4. Is the controller for the Ananda M100 built into the motor because I can't find anything that looks like a controller anywhere else on the frame.

5. What kind of GitHub repos should I look at? I'm finding the documentation on a lot of them pretty light.
 
sseefried said:
With a little judicious googling of serial numbers I discovered that the TFT display is a Bafang 500C but the motor is an Ananda M100 (http://www.ananda.com.cn/index.php/product/view/cid/4/id/25.html). This seems like quite an odd combination!
It does, to me, but I am not well-versed on all the middrives out there these days. I'm not sure if they share a comm protocol or not, I couldn't find anything here or on the web that describes a system using both, or that analyzes their protocols for compatibility.

I did find a number of pages selling "ananda bafang" bikes or systems, but I think they just used those words in their title because they are known brands. :(



This is a little hard now given the weight of the bike is around 27kg and the friction seems to be a lot higher.
Friction at the cranks making it harder to pedal?

Or the wheels, making it harder to just walk it along or hand-spin the wheels offground?

Or something else?




The Bafang 500C display has been flashed with some custom graphics to make it look like it was made by the assembler of the bike, but the menu structure is the same. I've tried to get to the password protected part of the menu (https://cdn.shopify.com/s/files/1/0537/7176/3911/files/500C_Display_Manual.pdf?v=1628090638) but it doesn't appear to be the default password of *1919*. I also tried *1199* (which Luna cycles sets theirs too) but this did not work either. I think it's safe to say that the password has been set to a custom value.
Probably not worth the money for just one use, but this
https://www.aliexpress.com/item/4001013865002.html
purports to reset to factory defaults / bypass password, etc. I have no info on it other than what the page says; never used one.


Even if I was able to get to this part of the menu it's not immediately obvious to me that a Bafang display could even talk to the controller of the Ananda M100. Can it? Or is it a completely different protocol.
It could use the same protocol, or have been altered to do so; with no "standards" it's a crapshoot.


Can you suggest what I might do here?
Presumably there is a wheel speed sensor since this is a crank drive and has no other way to determine how fast you're going. You could alter the signal for the speed by putting a divide-by-2-counter between the sensor and the system. There are a number of easy ways to do that if you're interested, but you'd have to build it yourself.


2. Could you, in principle, increase the speed cut-off using the Bafang 500C display (if one had the password?) Do they speak the same protocol?

3. Or would it be better to talk directly to the Ananda M100 controller somehow? If so, how would I go about this?
For the latter, you'd need the specific programming cable and computer software for that specific model of controller. This may not be available to anyone outside the factory (dealers might have it, might not). If you had the software you could probably make a USB-serial cable with the right pinout to match the connector inside the controller, if that is marked on the controller or you can find out what it is.

For teh former, if they are compatible and designed to work together, then as long as that is an available setting and is not locked out by the factory for legal reasons, then yes, you could.

If it's not an avialable setting, you could fake it by changning the wheel size to something larger than what you have, so it thinks the wheel is moving slower than it really is. Assuming it has a size larger than what you have by enough to do what you want.




4. Is the controller for the Ananda M100 built into the motor because I can't find anything that looks like a controller anywhere else on the frame.
I didn't find specifics on that, but all the major crank drives I'm aware of put the controller in the same box as the rest of the stuff.


5. What kind of GitHub repos should I look at? I'm finding the documentation on a lot of them pretty light
Are there OS projects for this Ananda system? I know some are bieng worked on for some Bafang displays, but I don't know if they are compatible with anything other than the matching OSFW for the controllers that match those displays.

If there are, you'd probably have to flash both your ocntroller and display to the matching FW via whatever instructions that specific project has, to make them work together and then set them up for your system. Sometimes flashing bricks things, so keep in mind there's always a chance of breaking your hardware.
 
It does, to me, but I am not well-versed on all the middrives out there these days. I'm not sure if they share a comm protocol or not, I couldn't find anything here or on the web that describes a system using both, or that analyzes their protocols for compatibility.

I did find a number of pages selling "ananda bafang" bikes or systems, but I think they just used those words in their title because they are known brands. :(




Friction at the cranks making it harder to pedal?

Or the wheels, making it harder to just walk it along or hand-spin the wheels offground?

Or something else?





Probably not worth the money for just one use, but this
purports to reset to factory defaults / bypass password, etc. I have no info on it other than what the page says; never used one.



It could use the same protocol, or have been altered to do so; with no "standards" it's a crapshoot.



Presumably there is a wheel speed sensor since this is a crank drive and has no other way to determine how fast you're going. You could alter the signal for the speed by putting a divide-by-2-counter between the sensor and the system. There are a number of easy ways to do that if you're interested, but you'd have to build it yourself.



For the latter, you'd need the specific programming cable and computer software for that specific model of controller. This may not be available to anyone outside the factory (dealers might have it, might not). If you had the software you could probably make a USB-serial cable with the right pinout to match the connector inside the controller, if that is marked on the controller or you can find out what it is.

For teh former, if they are compatible and designed to work together, then as long as that is an available setting and is not locked out by the factory for legal reasons, then yes, you could.

If it's not an avialable setting, you could fake it by changning the wheel size to something larger than what you have, so it thinks the wheel is moving slower than it really is. Assuming it has a size larger than what you have by enough to do what you want.




I didn't find specifics on that, but all the major crank drives I'm aware of put the controller in the same box as the rest of the stuff.



Are there OS projects for this Ananda system? I know some are bieng worked on for some Bafang displays, but I don't know if they are compatible with anything other than the matching OSFW for the controllers that match those displays.

If there are, you'd probably have to flash both your ocntroller and display to the matching FW via whatever instructions that specific project has, to make them work together and then set them up for your system. Sometimes flashing bricks things, so keep in mind there's always a chance of breaking your hardware.
any motor tear down list or diagram
 
Or is it a completely different protocol.
I've analyzed a system of an Ananda controller and a Bafang CAN display (from a hub motor bike) some time ago:

I was able to emulate the controller by a simple STM32 Bluepill board and let the display show anything I wanted.

But I could not identify the CAN ID that sets the speed limit.
The CAN protocol Ananda uses is obviously completely different from the Bafang CAN protocol.

regards
stancecoke
 
Anyone had any further success with this? I have a similar bike with an Ananda motor/controller and a Bafang display. Curious to know if anyone has found a tool to program the motor.
 
Bonjour j'ai acheté 2 vélo scrapper exc4 avec un moteur ananda m80 mfc et je voudrais savoir si vous savez comment câbler le câble USB .
merci
 
Back
Top