Reversing of Motors from software

Hi everyone,

I’m using a T-Motor F55 Pro 4-in-1 ESC with T-Motor MN4006 motors, connected to a Cube Orange flight controller running ArduCopter.

The ESC and motors are working normally during flight — however, I am unable to access the ESC settings to reverse motor direction via software.


What I Need to Do

I want to reverse the direction of two motors using software (BLHeliSuite or AM32 Configurator) instead of swapping motor wires.


What I Have Already Done

  • ESC is fully powered with LiPo during configuration attempts.
  • Cube Orange is connected to PC via USB.
  • ArduPilot firmware is running normally.
  • Motor output protocol set to DShot:
MOT_PWM_TYPE = 6 (DShot600)
  • ESC telemetry wire is currently not used (but motors spin correctly).
  • Tried BLHeliSuite32 passthrough → Result: No ESCs detected
  • Tried AM32 Configurator → Result: No connection / no device found

So at the moment:

Flight = OK
But ESC Configuration = Not Available

Main Questions

  1. Which firmware does the F55 Pro 4-in-1 ship with by default?
    BLHeli_32 or AM32?
  2. Does this ESC officially support BLHeli passthrough with Cube Orange (ArduPilot)?
  3. If the ESC uses AM32, what is the correct method or tool to configure or reverse motor direction?
  4. Is there a recommended procedure to reverse motor direction for this ESC without rewiring?

Hardware Setup

Component Model
Flight Controller Cube Orange
Firmware ArduCopter
ESC T-Motor F55 Pro 4-in-1
Motors T-Motor MN4006
Output Protocol DShot600

Goal

Just need a safe and supported way to reverse motor direction in software.

Any guidance or documentation link would be greatly appreciated.
Thanks in advance!

You figure that out you bought it and in the mean time post your parameter file.

WAEHOUSE.param (18.6 KB)

Before I assure you that you are not running Dshot, after connecting to Mission Planner and in the Messages screen what do you see for this message? Post a screen capture.

RCout

Looks like this huh?
RCout pwm

Looks like second one.. same message

image

Have you try shifting the ports connection?

Have you try using 1?

SERVO_DSHOT_ESC,1

A few methods, one of the method.

F55a, right? Or an older version?

It solved :slight_smile:

  1. Move the motors to AUX outputs where DShot is supported.
  • AM32 Configurator only communicates when DShot protocol is active.
  1. Connect via AM32 Configurator again.
  2. Set the correct Motor KV value (very important).
  3. Write settings & power-cycle the ESC.

After doing this:

  • Motor direction could be set in the configurator
  • Throttle response became smooth and linear
  • RPM increased normally across full throttle range

Conclusion

For AM32 ESCs, always use DShot-capable AUX outputs so the configurator can communicate properly.
And make sure to set the correct motor KV — otherwise the ESC will limit low-RPM power.
I have a question regarding motor poles configuration in AM32 ESC firmware.

My motor datasheet shows:

  • n = 18 (stator slots)
  • p = 24 (magnet poles)

I am currently configuring the ESC via AM32 Configurator.
By default, the Motor Poles value was not matching the motor datasheet.

Question:
Do I need to set the Motor Poles value in AM32 to 24 (based on p)?
Or should I leave the default value?

I recommend also shift to bdshot Arducopter firmware. It will helps you a lot on Harmonic Notch filter settings without additional hardware change, noise and vibrations reduction. Take note, Aux port 2 onwards on Cubepilot support bdshot.

The main outputs are Dshot capable if configured properly.
What do you see here?
Dshot main

Count the number of magnets on the bell. Set Motor Poles to that number. It needs to be correct, especially if you want to use telemetry for filters.

If that was true at some point I don’t think it is any longer.
HWDEF:
PE14 TIM1_CH4 TIM1 PWM(1) GPIO(50) BIDIR
PE13 TIM1_CH3 TIM1 PWM(2) GPIO(51) # this will automatically be shared with TIM1_CH4
PE11 TIM1_CH2 TIM1 PWM(3) GPIO(52) BIDIR
PE9 TIM1_CH1 TIM1 PWM(4) GPIO(53) # this will automatically be shared with TIM1_CH1
PD13 TIM4_CH2 TIM4 PWM(5) GPIO(54) BIDIR
PD14 TIM4_CH3 TIM4 PWM(6) GPIO(55) BIDIR

BRD_IO_DSHOT,0  # His value is 0

The issue seems to be still open.

I know it’s zero, that’s why I posted they are Dshot capable if configured properly. It was not configured properly. You have just re-stated the obvious.

It should not be because AUX 1 works fine on a CubeOrange for Bdshot. I have tested it, ESC Telemetry working.

No problem here nor in the log

with DroneCAN, things are easier :wink:

Vimdrones needs a 4-in-1 DronCAN ESC!

1 Like