Odrive with DJI RM M3508 P19

Has anyone tried to use DJI RM M3508 P19 motor with odrive?

I want to create a 4 wheel drive rc with mecanum wheels, I’m not really sure if the odrive DUAL SHAFT MOTOR - D5065 270KV will be a good choice as it does not geared.

Final goal is to create a bigger version of a robomaster.

Haven’t seen it but it looks good! The trick will be figuring out what’s on the “7 pin connector”

Datasheet here (PDF)

The specs look like they’ll work well with ODrive, though

I’m hoping it’s an encoder with more power pins…
I’ll send an email to the support team and see if i can get that information.

Thinking again I bet a pair of connectors will be a thermistor, and the rest an encoder. Support refused to give me the pinout alleging it is confidential, I also got one of their ESC’s so I’ll just put a scope, logic analyzer on each pin and see what is going on.
I’ll update this thread when I get this information, as this motor seams really good for some robotic applications.


Check this out

A bigger robomaster chassis with N5065 i guess ? Just some hobby N5065s and HEDS-9731 1024 ppr encoder .

One big problem for using N5065 on robomaster is the total power (1.5kw max for one N5065) will be way bigger than the power limits by the rules, which is much smaller on DJI M3508.

Although N5065 have no gear box, it could reach 2 to 2.5 Nm torque at output shaft (270 KV at 70A , need some good cooling). Lots of E-skateboard are based on N5065, so torque may not be a big problem.

Beside, DJI products are expensive.:sweat_smile:


That hub style mechanum wheels is awesome! Do you have more info? Cad files?
I was only looking for the DJI motors because they had a compact design, bur placing the motor inside the wheel basically fixes all mounting and power transmission issues.

Hi Guys…
Wanna ask about the M3508 P19…
Since you guys have already figured out the sin/cos encoder mystery,
can you guys share the pin out for the 7-pin?

I emailed DJI and they said it is “confidential” stuff and refuse to provide further information.

1 x Hall sensor (I guess?)
1 x Sin Cos encoder (Tested by your guys)

But which wire is which wire???

I probed with a oscilloscope and it seems like

Pin 1 (Leftmost) -
Pin 2 -
Pin 3 - 1, 2, 3 I’m not sure yet, one of them is probably temperature (as the robomaster controller has temperature support) yet i have no idea what the other 2 could be
Pin 4 - Cos/Sin (0.3-1.8v)
Pin 5 - GND
Pin 6 - Sin/Cos (0.3-1.8v)
Pin 7 - 3.3V

4-7 should really be all you need to control the motor
Fair warning, I tried to use the Sin/Cos encoder mode in the VESC and its very hard to configure correctly, maybe its different in Odrive, ill try it later

Hi sir, nice to hear your process… finally something useful information! :slight_smile:

connecting the m3508 to vesc is exactly what I want to do!..
I was forced to buy robomaster’s c620 motor controller because DJI’s technical support also refuse to provide any information on pinout of the motor’s feedback…

C620 provides position and velocity feedback… however we can only control the current via can bus… therefore we need to DIY the position and velocity loop… which is something that the motor controlller should already handle!.. .

Anyway, sir, since you have already worked on m3508 with vesc,
may I ask what is the connection to vesc?

Yup we also DIYed the position and velocity loop, although I don’t so much mind that because it keeps the ESC protocol simple and allowed me to implement some more interesting dynamic control stuff that I needed

Also, feels wrong to talk about the VESC on here but anyway

I used the ADC_EXT and ADC_EXT2 pins on the standard VESC 6 board, those 2 plus 3.3v and GND are the only connections

To enable sin/cos encoders you need to compile and flash a custom firmware, just a few lines changed in hw_60.h (based on what hw_axiom.h does) as well as changing the min and max amplitude in encoder.c, i think this is because robomaster uses a 1.8 volt signal while the axiom was designed for full 3.3v? Idk i couldnt make it work without essentially disabling the min and max amplitude check. I kinda which the scale and offset could be automatically detected.

In the end i managed to get it working and way more powerful than the C620 lets me :)) 50 amps in that small motor feels wrong but so right