Baserunner + BMC V3 48v 1000w.....wont autotune/detect halls. error 1-6

anarchy

1 µW
Joined
Apr 22, 2025
Messages
3
Location
ny
I tested volts from z9 to the hall sensors....just under 5v to each...pcb perfect....its a brand new motor! 80 pole pairs based on 5:1 gearing and 16 pairs. Autotune defaults to sensorless. I tried kv 9-13 and no difference. Anyone have a clue?
 
What do you see when you manually rotate the motor backwards? (assuming this BMC is a geared hub)

If you only read 5v on all sensors, they're not working. IIRC, for any 120-degree motor, they'll never have all three in the same state. There will always be two in one state, and the other in a different one.

When they are active they ground the circuit (so the 5v provided on the signal line from the controller's pullup resistor gets grounded to around 0v, sometimes as high as 0.8v).

You should also be able to see the hall status on the setup software's advanced page, IIRC.


You mention it's a brand new motor, but not the status of all the other parts. If they are not also new, what was the reason for changing the motor, and what happened to cause it to be necessary?
 
What do you see when you manually rotate the motor backwards? (assuming this BMC is a geared hub)
I see the halls toggle as normal...YGB

If you only read 5v on all sensors, they're not working.
I meant that each wire had 5v to the sensor, not that they were all activated at the same time.
IIRC, for any 120-degree motor, they'll never have all three in the same state. There will always be two in one state, and the other in a different one.
I understand

When they are active they ground the circuit (so the 5v provided on the signal line from the controller's pullup resistor gets grounded to around 0v, sometimes as high as 0.8v).

You should also be able to see the hall status on the setup software's advanced page, IIRC.
I see the halls toggle as normal...YGB

You mention it's a brand new motor, but not the status of all the other parts. If they are not also new, what was the reason for changing the motor, and what happened to cause it to be necessary?
I had 2x motors. The original had bad sensors, so I swapped out the new stator, coils and axel....
I am using a Cycle Analyst 3, twist throttle, 48v battery pack using Molicels
 
You mention the original motor had bad sensors, but not what caused that failure. That's often relevant, as some things that can damage hall sensors in a motor can also damage the controller.

But...since the program sees the halls toggle as normal, then it means the controller can read them correctly at low speed with manual rotation, so there's probably nothing wrong with the halls, wiring, or controller.

If the system previously worked with an identical motor (it's not stated if it's the same, but since you don't specify a different original motor, it should be safe to assume you're using another of the same), then you shouldn't need to run autotune, it should run just fine with your original setup.

Have you tried loading your backup file of the previously working setup, to see if it works correctly, without doing any autotune?

If there is no backup file of the working setup, can you go from screenshots or notes made from when it worked correctly?

Are you sure you are using the correct motor parameters for your new motor? If you give the controller the wrong kV, number of poles, etc,. it will be looking for the wrong hall data and consider what it does receive to be wrong even if it's perfect.


If necessary, there is a setting there to force it to use sensors, and turn off the sensorless fallback. If it then works, it means that despite the autotune being unable to figure out the sensors normally, the controller does still read them even at speed.


If it won't work with any sensored operation, forced or not, with a new motor identical to the old, then the most likely issue is electrical noise on the sensor signal lines, which can come from poor or no shielding between them and the phase wires, anywhere within the wiring from inside the motor to inside the controller--if it worked before, it's not liekly to be anything from controller to connector on the controlelr side, but could be anywhere in the motor or cabling. If it is this, replacing the motor cable starting inside the motor with one that's shielded between signals and phase wires could fix it.

It could also be noise on the halls from magnetic "crap" coming from the stator windings (the halls are embedded in the stator teeth in most hubmotors). That you can't do much about, other than trying capacitance right at the halls, or potentially some other system hacks that require buliding some electronics to use higher voltage on the hall pullups but protect the controller from that voltage.



If it didn't work with the old motor either, and it was also the same kind, then it might simply be unable to deal with the high ERPM of the geared hubmotor (not an uncommon problem in controllers).

If the old motor was not the same kind of motor as this one, it could also be that problem.
 
The original motor (same type)/controller (different; KLS4812 sine) was damaged from a battery short.

The sensored operation on the z9 will not run when forced with the sensorless fallback disabled.

I dont know how to calculate the kv. The owners manual suggests starting with 10....I tried 9,10,11,12,13.

Regarding "noise": I didnt have issue with the previous controller prior to damage. The new z9 has the same shielding as the motor cable. I did try separating the hall wires from the phase between controller and axel exit, although it doesnt make sense to me.
The hall sensors in the motor are not embedded in the stator teeth.


simply be unable to deal with the high ERPM of the geared hubmotor (not an uncommon problem in controllers)
Assuming ERPM is the same as kv.....

Thank you Amberwolf.....I really appreciate your attention to my issue.
 
You probably want a VESC ( no problem with high eRPM ) or one of BMC/MAC's modified infineon clone controllers that support a much faster switching rate.
 
The original motor (same type)/controller (different; KLS4812 sine) was damaged from a battery short.
A motor can't be damaged by a battery short. They are not connected to each other; the controller is between them.

A battery short would only damage the battery itself, with "short" being defined as something that connects wires together--the only short that can happen with a battery is it's positive to it's negative, which hurts nothing outside the battery and any wires leading up to the short location.

So you'll need to specify the exact actual failure and problem, so that we can know what really happened, and what may have been damaged in the process, so that we can help you find the failed parts and replace them.

If you're sure you've already replaced the failed parts, then it isn't really important.




The sensored operation on the z9 will not run when forced with the sensorless fallback disabled.
Then the controller can't read the sensors during motor operation (even if it does at manual-turning-speeds), which generally means a shielding problem.

If the new cable is identical to the previously working cable:
Regarding "noise": I didnt have issue with the previous controller prior to damage. The new z9 has the same shielding as the motor cable. I did try separating the hall wires from the phase between controller and axel exit, although it doesnt make sense to me.
and that was shielded internally between phases and halls (meaning, it had a metal braid or foil around all the hall wires, with the phase wires outside that braid or foil) then it sounds like the controller itself was damaged by whatever the "battery short" issue actually was.

Many things that damage motor halls also damage the controller's circuits for reading them (and can damage anything that's powered by 5v in the system, including throttles and PAS sensors, shift sensors, brake sensors, etc), especially if they involved motor cable damage or water intrusion.

This is what shielded motor cables generally look like inside (picture from the discontinued ebikes.ca cable page)
1745426766057.png

I dont know how to calculate the kv. The owners manual suggests starting with 10....I tried 9,10,11,12,13.
kV is RPM per volt, or RPM / Volt.

The manual itself describes a general way, of using the designated motor RPM at it's designated voltage, such as 220RPM at 36v: 220 / 36 = 6kV. Does the motor have a marking on it, or a manufacturer webpage with info, or anything advertised by the seller you bought from for how fast it spins with a particular battery voltage? If it doesn't say how fast the motor spins in RPM, it may say how fast the wheel it is in spins in MPH; you can use online calculators to convert MPH to RPM.



The hall sensors in the motor are not embedded in the stator teeth.
Does it put them between the stator teeth instead? That's effectively the same, for magnetic noise induced into the sensors. They are there to detect the rotor magnets passing, but they detect *all* magnetic fields that pass thru them from any source. Because they have to detect the rotor magnets, they must be placed very close to those magnets, so normally they are in the stator teeth. They could be placed on the outside edge of the rotor to minimize detection of stator fields, but this is not something I've seen in any of these types of motors.

The only other way I've seen them do it, without using a non-UVW/ABC hall setup (making them incompatible with controllers like the BR or other typical ebike controllers), is to use a separate magnet ring (magnetized identically to the rotor) mounted on the rotor away from the stator, usually close to the axle, and a board with the three hall sensors (and often some other electronics) close to that ring.

If it's some other type of encoder, then it's output generally wouldn't be compatible with most common controllers, and it wouldn't give you valid results even when hand-spinning the motor.


simply be unable to deal with the high ERPM of the geared hubmotor (not an uncommon problem in controllers)
Assuming ERPM is the same as kv.....
ERPM is the "electrical RPM", which is the number of poles times the RPM. Most of the common ebike motors are 23 pole pairs (46 poles), or similar. In a geared hub the motor itself spins much faster so that the gearing down it gets to wheel speed can convert that extra speed into torque. That makes it's ERPM several times higher than a non-geared hub, and some controllers simply can't switch that fast, or read hall sensor output that switches that fast.


Even though your old motor was identical to this one, and the system worked with the hall sensors, then this could still be the problem because you are using a different controller; the old one might have been able to keep up.


It's also possible the old controller auto switched to sensorless without notifying you (a common thing for dual-mode controllers, if it was one). So the problem could have been there with the original setup as well, just with no errors provided to you about it.
 
Last edited:
Back
Top