Control surface servos won't work VTOL qaudplane

#1

Pixhawk 4 - can’t get the servos (control surfaces) to activate. I have a 6 channel Spektrum DX6 and proper flight modes are working on the three position switch. Transition out of multirotor works but no controls surfaces in forward flight mode.

I think I’m not understanding the “pass through” and how to set up aux channels. I have read through all the documentation, still can figure it out. Help please :slight_smile:

Thanks
Tim

#2

Could you specify the following:

  • Firmware version
  • Airframe type (SYS_AUTOSTART ?)
  • What flight modes have you setup?
  • Do you have/ you need a separate 5v BEC to power the servo rail? Unless one of your ESCs is providing it.
  • Generally, quad motor ESCs plug into MAIN1 - MAIN4 and control surfaces go into AUX1-AUX4 of the Pixhawk.

Perform the following steps to test on the bench. Make sure all props ARE REMOVED.

  • Plug in battery
  • Press the Safety Button; unless you’ve disable it (CBRK_IO_SAFETY)
  • Make sure you’re in Stabilize Flight Mode
  • Switch to (transition) FW Mode
  • Do the control surfaces respond to Tx input?
  • Bank the aircraft to the left: left Aileron should go down and right Aileron should go up and vice-versa
  • Pitch the nose down: Elevators go up and vice-versa.

Good luck.

#3

HI Rollys
Here is the info you requested.

Qground 3.5.2
Firmware version 1.9.0
Standard VTOL
Generic Quadplane VTOL
Hobbywing 4 in 1 40amp esc’s
(NOTE: I have been flying this aircraft in quadX mode (just the lifting motors) and it flies great. Wings are offset 30degrees to the motors, and in 30degree pitch forward the vehicle is flying fully on the wings with minimal thrust from the lifting motors. Now want to add control surfaces and forward thrust motors for the forward flight mode.)
Custom Boxwing… Ailerons on lower front wing(outboard sections) and Elevators rear wing (center)
IMG_5712 IMG_5713

IMG_5716
Three way switch 1 multirotor 2 transition forward flight
All flight modes are set as stabilize for now.
10amp BEC connected to the 8th set of pins on the AUX rail (pix attached)
Lifting motors are Main 1-4 on the Power Management Board
3 servos Aux 1-3 (havn’t installed the 2 thrust motors yet… wanted to get the control surfaces working first)

Tested: Armed - Stabilize flight mode switched to FW Flight Mode, receiver bound, no response to Tx inputs and no stabilized responses in pitch or roll. (airspeed is set to disabled… I have a digital airspeed but the Pixhawk won’t recognize it)

Some forums talk about servo parameters, some RC, some aux. If you could walk me through a line by line Parameter setup for the elevator, I could apply the same steps to the ailerons and thrust motor.

Thanks for the time you’re putting into helping me!!! Really appreciate it!!!
Tim

#4

I don’t own a Pixhawk 4 so I’ve not personally worked with one but the control surface servos, I would think, would connect to the I/O PWM OUT ports. I can’t see it on your pictures but is that where you have them connected?

Another option is to change your airframe to the Vertical Technologies DeltaQuad where all PWM devices connect to the MAIN ports (FMU PWM). The mixer/device connections are as follows:

MAIN1 : motor 1
MAIN2 : motor 2
MAIN3 : motor 3
MAIN4 : motor 4
MAIN5 : Right elevon
MAIN6 : Left elevon
MAIN7 : Pusher motor
MAIN8 : Pusher reverse channel (Optional)

Good luck.

#5

Hey I think from the picture you have the connections for the servos plugged in backwards.

#7

Thanks Rollys
I will switch to this if I can’t get the aux working.

T

#8

Thanks Nnomaeeht…You were correct! The servos now have power but still don’t respond to TX inputs… Is there a servo setup procedure for control surfaces??.. I would prefer to setup aux for control surfaces than use the remaining main 5-8, as I would like to eventually us 8 lifting motors.

Thanks for your help.

#9

Nnomaeeht
Question - could you walk me through the aux parameters for setting up the elevator servo. I can copy that format for the rest. The servo’s have power now but still won’t move.
Thanks
Tim

#10
  • Try changing SYS_AUTOSTART = 13005
  • Connections should be as follows:
    • MAIN1: motor 1
    • MAIN2: motor 2
    • MAIN3: motor 3
    • MAIN4: motor 4
    • AUX1: Aileron 1
    • AUX2: Aileron 2
    • AUX3: Elevator
    • AUX4: Rudder/Optional
    • AUX5: Throttle
  • Make sure all props are removed.
  • Follow the bench test procedure in Post# 2 above.

Good luck.

VTOL control surface Servos not working
#11

Thanks Rollys
Tried changing the autostart to 13005 and followed the post #2 procedures. No luck no activities on the servos.

What should the parameter settings be for the servos? The documentation refers to Servo Function… but servo function is no longer in the parameter lists?

Thanks
Tim

#12

I’m presuming that you rebooted after the change and then tried, right?

The PWM settings for the servos are determined according the airframe you choose. In VTOL, except for DeltaQuad, quad motors ESCs plug in to MAIN ports and control surfaces like ailerons and elevators plugin to the AUX ports of the Pixhawk.

In taking a closer look at your photos, specifically this one, where the arrow is pointed; is that where your control surface servos are plugged in? If it is, and if I’m reading the label on the board correctly, I believe that’s the wrong place. That label says FMU PWM Out, which is the MAIN ports for the quad motor ESCs. Servos should be connected to the I/O PWM Out which correspond to the AUX ports.

Good luck.

#13

Hi Rollys
Yes the arrow is pointing to the ports where the servos are plugged into the FMU (since this picture was taken I reversed the plugs… had the signal on the ground and vice versa… now getting power to the servos but not action.) From the Pixhawk 4 documentation, the I/O ports are “Main” and used for the motor controls, and FMU is for AUX channels. I’m hoping to save the remaining 4 Motor controls for 4 additional lifting motors (M5-M8), and use the AUX channels for the control surfaces.

In the parameters list for autostart 13005, which group of parameters are the control surfaces (what is their file name specifically.)?

#14

Hi Tim
Yes I/O is MAIN, FMU connects to AUX, so your wiring should be correct. The multicopter motors are running as they should, right?
The parameters corresponding to the aileron servo ports are named PWM_AUX_XXX1 and PWM_AUX_XXX2, where XXX stands for MIN, MAX, DIS, FAIL, TRIM, so the min, max, disarmed, failsafe and trim PWM output on the specific port. Normally they should run with the default values and it’s not necessary to change them.

Have you tried to arm your aircraft in MANUAL Fixed-wing mode already?

#15

Hi Sfuhrer
Yes the multicopter works great! When I flick the transition switch the main motors slow and stop as they should… just no servo control.

Tried it in manual mode… still no Servos. Here are some screen shots for you to see what’s going on… love to here your thoughts.

#16

Let’s check the pwm outputs. You can see what pwm values the controller currently sets by going to the Mavlink console (https://docs.qgroundcontrol.com/en/analyze_view/mavlink_console.html ) and enter “pwm info” there. Make sure you are in fixed-wing flight mode when you do it and share a printscreen of the console outputs.

A separate thing you could try is to actuate the servos manually: again in the mavlink console, enter
“pwm arm”
and then
“pwm test -c 78 -p 1200”
This should set channel 7 and 8 (being AUX1 and AUX2 I think) to a pwm of 1200. They then should move. Make sure to have your multicopter props removed while doing it.

Keep me posted of the results!

#17

Hi Sfuhrer
Here is the screen shot for the pwm info.
Also I am using a spektrum DX6 (not DX6i)… If the dx6 is the problem I will pick up a different TX with more channels. Let me know your thoughts from the screen shot info.
Thanks
Tim

#18

please paste a screenshot again after you entered:
pwm info -d /dev/pwm_output1

And this should get your flaps moving:
pwm arm
pwm test -d /dev/pwm_output1 -c 1234 -p 1200

The choice of TX shouldn’t be the problem here.

#19

Here are two screen shots.
Servos WORK now!!! So excited! I haven’t connected my two forward thrust motors yet, but will tonight. If I have any problems, I will reach out.
REALLY Appreciate the help!!!

#20

Cool to hear that we are one step further:)

Did the servos start working before you entered the second command or only after? And now they also work without entering any commands, so just after you plug in the battery for example?

About the transition timeout: thr transitions timeout because you of course don’t reach transition speed. You can bypass yhst by setting CBRK_AIRSPD_CHK to 162128. It’s not recommended to fly like that though:
https://docs.px4.io/en/config_vtol/vtol_without_airspeed_sensor.html

#21

The servos began working only after the second command… but now I can shut everything down and the servos work normally as they should every time.

Transition working properly now as well!!! Adjusted the time and disabled the airspeed.

Question: Because I’m not going to use the AUX4 for a rudder, can I change that AUX 4 channel and remap it to be a second forward thrust motor… having AUX 4 and 5 both operations the throttle on the Tx?