Pixwhawk -> ESC -> Motors Don't spin enough for Takeoff

Hello,

I am using a Pixhawk 6X Pro running PX4 with a Standard VTOL configuration.

In the Actuators tab, the motors do spin, but not fast enough to achieve a real takeoff. During manual flight, the thrust produced by the motors is insufficient, and the aircraft is unable to take off.

In the log files I see that the signal of “1999” is sent from the pixhawk to the ESC, but it never really transfers into high RPM. I tried DSHOT 150, 300 and 600, no difference. Here my actuator outputs logs:

NuttShell (NSH) NuttX-11.0.0

nsh> listener actuator_outputs

TOPIC: actuator_outputs 5 instances

Instance 0:

actuator_outputs

timestamp: 10492336431 (0.001871 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 1290.00000, 1690.00000, 1500.00000, 1500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 1:

actuator_outputs

timestamp: 10492361459 (0.001511 seconds ago)

noutputs: 9

output: \[0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 2:

actuator_outputs

timestamp: 1165385 (10491.221680 seconds ago)

noutputs: 9

output: \[1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 3:

actuator_outputs

timestamp: 1308445 (10491.101563 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 4:

actuator_outputs

timestamp: 1308506 (10491.124023 seconds ago)

noutputs: 8

output: \[500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

nsh> listener actuator_outputs

TOPIC: actuator_outputs 5 instances

Instance 0:

actuator_outputs

timestamp: 10562657095 (0.002648 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 1300.00000, 1700.00000, 1500.00000, 1500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 1:

actuator_outputs

timestamp: 10562679580 (0.002069 seconds ago)

noutputs: 9

output: \[109.00000, 109.00000, 109.00000, 109.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 2:

actuator_outputs

timestamp: 1165385 (10561.535156 seconds ago)

noutputs: 9

output: \[1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 3:

actuator_outputs

timestamp: 1308445 (10561.415039 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 4:

actuator_outputs

timestamp: 1308506 (10561.441406 seconds ago)

noutputs: 8

output: \[500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

nsh> listener actuator_outputs

TOPIC: actuator_outputs 5 instances

Instance 0:

actuator_outputs

timestamp: 10566021136 (0.001716 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 1300.00000, 1700.00000, 1500.00000, 1500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 1:

actuator_outputs

timestamp: 10566041089 (0.005449 seconds ago)

noutputs: 9

output: \[1999.00000, 109.00000, 1758.00000, 350.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 2:

actuator_outputs

timestamp: 1165385 (10564.900391 seconds ago)

noutputs: 9

output: \[1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 1000.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 3:

actuator_outputs

timestamp: 1308445 (10564.779297 seconds ago)

noutputs: 8

output: \[0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

Instance 4:

actuator_outputs

timestamp: 1308506 (10564.802734 seconds ago)

noutputs: 8

output: \[500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 500.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000\]

nsh>

I have searched extensively—using ChatGPT, reading forum discussions, and reviewing the official documentation—but I have not been able to find a solution to this issue. Is there anyone knowledgeable who could help me troubleshoot this problem? I have been trying to resolve it for five days without success, and any assistance would be greatly appreciated.

Best regards,

Which ESCs are you using? Did you configure the KV and Poles? Hook up the TELEM signal from ESC to free UART RX on the FC (DSHOT_TEL_CFG) and check the reported RPM.

Dear Dakejahl,

first of all, thank you for replying.

I have 4x HAKRC BLHeli-32 35A ESC (https://www.getfpv.com/hakrc-blheli-32-bit-35a-2-5s-esc.html?srsltid=AfmBOorpVnVpFW0M-viu_AnDO9Vci0hmK2kacCDfpcEX9F4-dab5AxRZ) for the VTOL part.

The motor is T-Motor MN3510-13 Multirotor Fixed Wing UAV Motor KV700

The Mot_poles value is correct, the mot_kv value does not exist. When I try via mavlink console to set it to 700, it does also not work.

nsh> param set MOT_KV 700
ERROR [param] Parameter MOT_KV not found.
nsh>

param show MOT_KV
Symbols: x = used, + = saved, * = unsaved

1430/1913 parameters used.
nsh> #

It is a bit hard to “Hook up the TELEM signal from ESC to free UART RX on the FC (DSHOT_TEL_CFG) and check the reported RPM.” Because I have 4 separate ESCs.

However, when I start to fly, this is my ESC listener output which has RPM when I put full throttle up to launch (right joystick to the top):

nsh> listener esc_status

TOPIC: esc_status
esc_status
timestamp: 1127742867 (0.003749 seconds ago)
counter: 51490
esc_count: 4
esc_connectiontype: 5
esc_online_flags: 15 (0b1111)
esc_armed_flags: 15 (0b1111)

esc[0] (esc_report):
timestamp: 1127742868 (0.020886 seconds ago)
esc_errorcount: 0
esc_rpm: 1128
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 101
esc_power: 0

esc[1] (esc_report):
timestamp: 1127742868 (0.044765 seconds ago)
esc_errorcount: 0
esc_rpm: 1128
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 102
esc_power: 0

esc[2] (esc_report):
timestamp: 1127742868 (0.066681 seconds ago)
esc_errorcount: 0
esc_rpm: 1042
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 103
esc_power: 0

esc[3] (esc_report):
timestamp: 1127742868 (0.087625 seconds ago)
esc_errorcount: 0
esc_rpm: 1128
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 104
esc_power: 0

esc[4] (esc_report):
timestamp: 0
esc_errorcount: 0
esc_rpm: 0
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 0
esc_power: 0

esc[5] (esc_report):
timestamp: 0
esc_errorcount: 0
esc_rpm: 0
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 0
esc_power: 0

esc[6] (esc_report):
timestamp: 0
esc_errorcount: 0
esc_rpm: 0
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 0
esc_power: 0

esc[7] (esc_report):
timestamp: 0
esc_errorcount: 0
esc_rpm: 0
esc_voltage: 0.00000
esc_current: 0.00000
esc_temperature: 0.00000
failures: 0
esc_address: 0
esc_cmdcount: 0
esc_state: 0
actuator_function: 0
esc_power: 0

nsh>

Can you please help me with troubleshooting? Thank you in advance!

To follow up:

I have purchased a “LINKER” device, and could not connect to the ESC at all. I have now purchased differend ESCs, and now it works for manual flights and power. Skystars Jupiter 35A 3-6S AM32 | Rotorama

The problem was def. the firmware of the ESCs.

Nevertheless, if someone ever has successfully flashed the firmware of the HAKRC BLHeli-32 35A ESC (https://www.getfpv.com/hakrc-blheli-32-bit-35a-2-5s-esc.html?srsltid=AfmBOorpVnVpFW0M-viu_AnDO9Vci0hmK2kacCDfpcEX9F4-dab5AxRZ), please let me know! It would be a pity to throw them away or not use them for another project…

Best