Introduction: Using a Multimeter to Verify the Hall Sensors in Your Electrical Motor (M365 Scooter)
My Xiaomi M365 scooter suddenly made a terrible rattling noise, it was like the wheel was grinding some bolts. Loss of power, loud noise and the feeling that the motor is somehow blocked are often signs that either the controller is dead or that you may have issues with the hall sensors inside the motor.
To make it simple, hall sensors are magnetic sensors and if they fail, the controller (the board that is powering and managing the motor) will miss some important information to properly synchronize the power sent to the motor. You don't need to know all the technical details but the power is sent on 3 wires to the motor (the phases). These phases must be properly synchronized otherwise the motor will either be stuck, lack power or make this typical grinding sound.
This instructable will show you how to diagnose the hall sensors and detect if one of them is dead. The controller must also be checked beforehand for burnt traces or burnt mosfets as it is a common issue with the e-scooters. Be careful though if you open the controller which is enclosed in a transparent box on the Xiaomi scooters as the big 63V capacitor may hold a lot of charge, always discharge it with an isolated tool first !
You will need at least a multimeter and a low voltage DC source of at least 5V. The sensors on the Xiaomi have a working range of about 4.5 to 24V. Some batteries in serie or a 9V battery will perfectly do the job. You can also use the power line of a USB. Do not exceed the maximum voltage rating of the sensors.
Gloves are not necessary but as I had added some ferrofluid to this motor for cooling purposes, I absolutely did not want to touch this sticky and messy stuff that would stain everything around.
- A multimeter
- Some thin copper wires
- A low voltage, at least 5V, DC source (batteries, USB or generator).
- A new SS443F hall sensor if replacement is required
- Some thin insulating tubes for the new hall sensor.
Step 1: Unplug the Motor
First step is to open the lower cover underneath the scooter to access the controller. First unplug the battery (red circle on the picture) then proceed with the 3 phases of your motor (yellow circles), finally unplug the hall sensors connector (green).
You can then remove the red rubber cap on the scooter side and extract the cable. This will make the whole testing easier.
Step 2: Open the Motor
I won't cover this step in detail as there are many resources available about that part. But you basically need to remove the reflective stickers on each side of the wheel to access the screws. Then remove the plastic covers and use a wrench to remove the bolts on each side. Note in my case, they put so much glue on the threading that I had to use a heat gun to loosen things a bit before being able to turn the bolt. Be careful not to burn the cable if you are forced to use this solution, I made a small protective shield with a hole out of a thin wooden board.
You then just have to unscrew the side panel and gently pull it out.
Step 3: Inspect Your Motor
When your motor is opened, you will see the coils, the magnets and some wires running to a small PCB. This part is the one we are most interested in. However it is worth checking if you don't have burnt coils (dark/charcoal-like copper wires), loose magnets or any other mechanical issue. If the coils are heavily burned, you will have shorts and the motor is unlikely to be fixable at this point. Ensure that you can freely rotate the inner part (the one with the coils), there may be some resistance due to the magnets.
My motor on the picture is showing some signs of heat stress with some coils that are quite dark, this is a reason why I added ferrofluid to improve cooling. The small curved PCB is holding the wires and the three hall sensors. There are 5 wires running to this board:
- Red: positive voltage (VCC). Will be 5V in our test
- Black: ground
- Blue, green, yellow: one wire for each hall sensor
The same color scheme applies on the connector that is plugged on the controller.
A short description of the other motor parts is useful. The coils and the PCB/halls part are hold on what is called the "stator" (because it is "stationary" and not moving) while the outer core with the tire is moving. The outer core is holding a set of magnets that have their north/south poles set in alternance (see 2nd picture). This is something important as you will see in our test.
Step 4: Testing Device
The testing device is extremely simple. We will power the board with some low DC voltage (typically 5V). The positive wire will go to the red wire on the connector. The negative (ground) will go to the black wire. We will then add another wire (green in the picture) that will be used as a probe for the different hall sensors.
With a multimeter, we will check the voltage between the wire coming from one hall sensor and the ground. We will repeat the whole procedure for the two other hall sensors. Some crocodile clips may be handy as well as thin solid core wires. Set your multimeter to low voltage range (ex. 10V) as the readout will be rather low.
Step 5: Procedure and Working Hall Example
The testing procedure goes as follow:
- Align the hall sensor with one magnet
- Read the multimeter output
- Align the hall sensor with the next magnet
- Read the multimeter output
A working hall sensor will show you some voltage on the first magnet, and then a very low value (0 or a few millivolts) on the second magnet. You don't have to test all magnets but you will notice that if you continue to rotate the stator, your multimeter display will continue switching between a positive and near-zero voltage.
Note that this is a strong indication that your hall is working but it is not 100% guaranteed. The hall may fail when temperature is rising or may have other operational issues.
Step 6: Procedure and Faulty Hall Example
Here is an example of my faulty hall sensor (it was the yellow one) where aligning the hall on a magnet then to the next one did not show a significant change on the voltage displayed by my multimeter.
This failure has a direct impact on the way the motor is controlled. The controller has no way to know what is the position of the stator for the given phase (the yellow one) and will think that the stator did not move, while the other two phases are correctly powered. This will result in desynchronized operation of the motor and an erratic rotation.
Step 7: Solution
Hall sensors are sensitive to heat and if your motor was subject to high temperature, the hall sensors may fail. The only direct solution is to replace the faulty components with new ones. You can easily detach the PCB holding the halls from the coils and then unsolder the colored wires. Take a picture of your board before proceeding, this may be handy.
The Xiaomi M365 (classic) motor is using hall sensors, reference SS43F, that are widely available on most online shops. I recommend taking a batch of them (5 or 10), they can be useful.
Unsolder the old sensor, put some insulating thermal tubes around the pins (you can reuse the small insulation from the previous sensor) and resolder. Ensure length is adequate, orientation is correct and that the hall sensor is properly set. Be careful when removing the old component, it is likely that you will break the pins and it is recommended to have some ways to remove extra solder (copper braid or desoldering pump). If I would have to do it again, I would first put the sensors within their small notch on the stator, and then place the board appropriately before soldering anything.
Pay attention to the heat of your iron, the SS43F datasheet indicates that it should not exceed 260° during 3 seconds. I recommend checking that the red wire (VCC) is properly connected to the first pin of each sensor. Repeat the same double-check for the ground line (middle pin).
I did not have the same reference component available and picked a A3144 which has similar features. The pinout is the same. I decided to replace all sensors to avoid a mixed batch of components. It works perfectly well and did not notice any issue so far. I had also bought another reference, OH137, just in case but did not try it so I can't guarantee it will work though the specifications are similar as well. You need a unipolar hall sensor, the bipolar sensors are not suitable for the classic.
These components are not supposed to operate in temperatures higher than 85°C. You may want to switch to the version that supports up to 150°C but I would not recommend it as the halls act as a kindoff safety system. If your motor gets too hot, the halls will stop working and it will force you to let the motor cool down, otherwise you could potentially end up with burnt coils that are way more costly to replace (coils rewinding or simply a new motor).
For European readers: I bought them at https://mikroshop.ch, the site is in German but they are delivering in EU. French readers: https://www.gotronic.fr/art-capteur-a3144-21003.htm. You may also want to check Conrad or other local suppliers if shipping from China takes too long. These halls are very cheap, you are likely to pay more for the shipping.