Abnormal Motor Behavior in Flight Modes Other than Manual

Hello All,

I am trying to build a VTOL plane and have stuck at some point. The problem is that, when I arm the plane in manual flight mode, the motors response to the throttle stick appropriately. When I switch to QSTABILAZE, QLOITER or other Q modes, the motors start twitching. I am attaching a log screenshot. The RPM plot shows the mentioned twitching like a noise in the graph.

Relevant Hardware:
Cube Orange+
T-Motor F35A BLHeli_32 ESCs (x2)
SunnySky V4014-9 400KV Motors (x2)

Software:
ArduPlane V4.5.4
ChibiOS: 6a85082c

ESCs are running in DShot150 mode.
Telemetry connection is established between the ESCs and the FC.

Your support would be greatly appreciated.

Thanks,


params.param (22.8 KB)

Edit: Log File [1980-01-06 01-59-42.bin - Google Drive](Google Drive Link)

Does changing the value of parameter Q_M_SPIN_ARM affect this behavior?

1 Like

Hi Mark,

Thanks for the prompt reply.

I had tried various values but no change at all. If I set SERVO 11 and 12 MIN to a value like 1050 or 1100, motors slowly spin, without any observable problem.

Regards,

Maybe something to do with your ESC parameters?
I’ve no experience with that ESC though, so can’t comment further.

1 Like

Thought same thing but I can’t logically imagine a scenario. Anyway, I am going to play with the ESC parameters.

The other thing; the motors suppose to start spinning slowly when I arm the plane, right? Why RCOU seems flat all the time unless I switch to MANUAL and utilize the throttle stick?

I’ve never configured a VTOL, so excuse my potential ignorance. But since there’s been little response - I think you may have things misconfigured. I don’t think MANUAL mode throttle should affect the vertical motors at all (only Q-modes). Perhaps you have the incorrect output functions assigned.

3 Likes

Manual is only a fixed-wing mode, so it will only drive the horizontal flight motor(s). The vertical motors will only work in a Q mode.

https://ardupilot.org/plane/docs/quadplane-setup.html

You also can’t run dshot and PWM servos on the same group. So you’ll need to move the servos to the main outputs (1-8) and put the motors on the “aux” (9-14) outputs.

What kind of plane is this because the configuration seems to be missing things?

1 Like

Correct me if I’m wrong, but this appears to be a tilt rotor setup, so shouldn’t Motor1 and Motor2 (33 and 34) be the assigned motor servo functions? Currently, they are ThrottleLeft and ThrottleRight (73 and 74), which doesn’t seem applicable.

If it is a tilt rotor, I understand the confusion about motor output and flight mode here, but I think the config is incorrect for desired behavior.

2 Likes

Yup, you’re on the right track. I just looked at the params for my T1 (wanted to check before I shot off my mouth). The front two tilt motors are 33,34. The rear motor is 36. Then there are the tilt servos, 75,76. Plus the airplane stuff.

2 Likes

Use of AUX3 and AUX4 is fine, then, with respect to timer groups - they just need to be assigned functions 33 and 34 (and double checked for motor order and direction via Motor Test).

2 Likes

@msyx You have set servo 11 and 12 to 1000 and 2000 µs respectively, then you should also set Q_M_PWM_MAX to 2000 instead of 1960 and Q_M_PWM_MIN to 1000 instead of 1040.

Are you sure about SERVO_DSHOT_ESC 3 ?

You have 2 ESCs, but 4 instances are logged. I can’t say anything about this because I don’t use bidirectional BD_SHOT firmware, it’s just strange.

Are you sure that the motors have 24 poles? SERVO_BLH_POLES,24

Rolf

1 Like

Dear All,

Thank you very much for the great assistance.

If I set them as 33 and 34, Servo Output view (in the Mission Planner) shows 0 output (instead of 1000 with my previous configuration as 73 and 74). ESCs keep beeping because there is no signal from the FC. I also lose ESC telemetry. No voltage and temperature readings from the ESCs. I am trying to figure out why.

I have fixed it. But I am having the same problem.

Oh, thanks a lot. I forgot to reverse that to 1. No effect on the problem.

It is from the manufacturer’s page: SunnySky V4014 High Efficiency Brushless Motors – SunnySky USA

ESC11 and ESC12 are showing the RPM info from DShot interface. ESC3 and ESC4 are the same ESCs, they show the same RPM information in addition to the Voltage and Temperature information coming from the physical telemetry line.

So, I tried to start fresh. I re-flashed the Plane FW (first Copter 4.5.5, than Plane 4.5.5).
Set Q_ENABLE → 1
Reboot FC.

Servo Output looks like this now:

Set Q_FRAME_CLASS → 10 (Single/Dual)
Reboot FC.

Motor 1, 2, 3 and 4 now gone from the Servo Output screen. When I try to set them and restart the FC, outputs are zero:

Do I really need to choose Motor 1 and Motor 2 or ThrottleRight and ThrottleLeft was right in the first place?

Edit:
tiltrotor.cpp Line 112 has the following comment:

bicopter tiltrotors use throttle left and right as tilting motors, so they don’t count in that case.

I have zero experience with the ArduPilot code but looking through it.
Please assist me if you know what should I do.

Throttle left/right are for fixedwing dual motors. For the vertical lift motors they need to be motor 1,etc. It’s all in the wiki.

It would help if you told us what kind of VTOL you’re trying set up. There are many different configurations.

1 Like

Thank you for the reply.

It is my bad; I didn’t specify clearly. I am trying to build a tiltrotor VTOL. Two tiltable motors on the wing tips. Both are for hovering and for forward fly.

Is there a motor on the tail as well or are you trying to do everything with just two motors?

Just two motors. That’s all.

You need to follow the instructions as a vectored tail sitter (even though it’s belly landing).

Here’s reading for you:

https://ardupilot.org/plane/docs/guide-tilt-rotor.html#bicopter-tilt-rotor

https://ardupilot.org/plane/docs/quadplane-tips.html#tilt-rotor-setup

https://ardupilot.org/plane/docs/guide-tailsitter.html#guide-tailsitter

2 Likes

Here’s one more for you

https://ardupilot.org/plane/docs/guide-tailsitter.html#single-dual-motor-tailsitter

https://ardupilot.org/plane/docs/guide-tailsitter.html#vectored-thrust

1 Like

That’s a good catch, and it appears that your initial instinct was potentially correct. I apologize that I don’t have enough expertise to guide the configuration further.

Here’s a somewhat recent post confirming as much in a longstanding topic by the dev who wrote much of the tiltrotor code:

What I can say for certain is that manual mode often results in red herring results. Users from pure RC flying backgrounds configure manual mode as they would without an autopilot and quickly get themselves into trouble because inputs and outputs are reversed in the wrong fashion (i.e., manual modes work, but the autopilot has no idea which way is “up” with respect to control surfaces or motor direction).

2 Likes