Tandem Bicopter transit into Cessna

Tandem Bicopter transit into Cessna

Hi all,

There is what I want to do:

1.Adapt the Bicopter code to creat Tandem Bicopter.

2.Pitch the Tilt Motor Front(41) for transition.

3.Reduce speed of the Rear Motor all the way to 0 for transition.

Some pictures for correct cognition of my Project: White Knight

Testbed for Tandem Bicopter

Therefore, I need a master to tell me which parts of the codes need to be adapt to achieve these 3 goals!

My plan is to make use of Pixhawk6X(or 5X) + Ardupilot4.2.2(or upcoming stable version)! As a result, the solution offered by Peter @iampete @iampete for “Goal 1” no longer works. New solution is needed.

Video clip: using Peter’s old solution with old Pixhawk 1

Unexpected Left sideward flight was never fixed

1 Like

Hello Peter,

a really interesting project. With our “Reverse Tricopter VTOL” solution, I wouldn’t know how to help here on the bicopter.

Have you ever tried to hover the Cessna bicopter outdoors ? In the video it is noticeable that it bumps against something on the left and therefore can not work properly.

All this time and nobody questioned if a VTOL like this can even work?
There are three main types of bicopters. COG above the COT, COG below the COT and oblique angle bicopters.
A tandem bicopter can only be one of the first two. If you put the COG and the COT too close together, it will never be able to stabilize itself. If you then add large aerodynamic surfaces (wings) that counteract the free movement of the fuselage it gets even worse. I doubt it will ever work. But please proof me wrong!


Hi Rolf,

I haven’t fly White Knight outdoor yet due to the Unexpected Left sideward flight was never fixed. The control signal output is correct but the drone can not self-balancing itself during hover it always flies Left sideward that I need to use one of my finger to push back to keep it hover stable. I believe it is caused by my pore coding skill! I hope you can help me on this by pointing out which codes need to be changed!

Here are the only codes I changed to build Tandem Bicopter(Ap motor tailsitter.cpp)

Can you point out the problems for me?

Although I am an Aerospace college student and inventing VTOL craft is my habit, there is a lot of things I need to learn from you guys especially my professors have no idea about coding and building drone. Please fill free to point out my mistake.

According to this reply if I understand correctly you never try to change the motor matrix. Is that correct?

Another question here according to my project should I switch pitch and roll in PID?

I am having some problems with the new Pixhawk 6X but I guess I can fix them to perform a V-22-like Bicopter hover test flight with the new welded“Testbed for Tandem Bicopter”(which is welded perfectly symmetric) tomorrow.

Hi Sebastian,

Good to see you again! White Knight has its COG below the COT. And I plan to add some counterweight on the fixed landing gear to lower COG even more. Is this solution going to work?

Is there any to minimize the negative impact of adding large aerodynamic surfaces?

Although I am an Aerospace college student and inventing VTOL craft is my habit, there is a lot of things I need to learn from you guys especially my professors have no idea about coding and building drone. Please fill free to point out my mistake.

I am convinced that your coding skills are better than mine (mine are almost zero, unfortunately). Sorry I can’t help you there.

But you should distinguish between the coding and what is possible or reasonable in terms of physik and regulation.

Like Sebastian @count74, I also have doubts whether the tandem-bi you have devised can hover stably at all. The torque forces during the transition, when the front motor tlts forward, are then missing for the yaw control. This will certainly not be a stable thing. Sorry if I say so, I would like to be convinced of the opposite.
I have built so far Tri-VTOLs, Bi - Vectored (Bellysitter) and Quads 4-1. I have kept my distance from the tandems, because there are too many physical instabilities. In my opinion, a V-22 needs a cyclic blade adjustment on the tiltable motors in order to be flown prototypically and not rocking and swinging through the air :wink:


1 Like

I recall this being stated several times before on the forum…

1 Like

Hi Rolf and Dave,
I made a double check. V22 uses cyclic blade to control thrust because it is using engine. We don’t need that with electric motors because electric motor can accelerate and decelerate fast enough. You can check this video

Today I tried to do

On left/right Bicopter with Pixhawk6X + Ardupilot4.2.2
By Q_TILT_MASK=1(only Left Motor is tiltable)
Q_TILT_TYPE=0(this is according to what Peter Hall @iampete told me

Q_TRANSITITION_MS=1(turn off Right Motor immediately after entered FBWA mode)

But it is not working Please check “Test 3 Q_TILT_MASK:1 Q_TILT_TYPE:0”
Here is the parameter of Test 3
6X_TEST3_bicopter.param (20.3 KB)

I first thought this might be caused by ARSPD_FBW_MIN and Q_ASSIST_SPEED blocking the transition to complete but after the tests below I don’t think that is the reason.






I hope someone can help me on this!!!

Sorry, but You are confusing cyclic blade with collective blade control :wink:


Key description here:
With the nacelles pointing straight up in conversion mode at 90° the flight computers command it to fly like a helicopter, cyclic forces being applied to a conventional swashplate at the rotor hub.

Hi all, I’m trying to shut down the rear Motor for fully forward flight! Can someone PLEASE tell me where is the output of ThrottleRight(74) for fully forward flight in the firmware? THANKS!
@iampete @tridge I hope you have answers for this

The rest of the tasks are done already

[quote=“Peter_Stone, post:1, topic:88561”]
1.Adapt the Bicopter code to creat Tandem Bicopter.

2.Pitch the Tilt Motor Front(41) for transition.

Its mostly done here:

However its also done in a bunch of other places depending on mode and arming status. Because breaking into such code its always complex we do have a example to do this from scripting, it uses PWM override with a timeout. You will have to mess with the script a little to use the left and right motor outputs rather than the numbered motors.

1 Like

Hi @iampete , thanks a lot for your help! Can you please tell me which file does “local” represent in this .lua file? Where is the “example” you mentioned? Besides, I adapted the servos.cpp file and Ardupilot seems working as same as I wanted. What is supposed to go wrong if I don’t adapt “forward_flight_motor_shutdown.lua”?

local is just a lua namespace thing. If its not local then its a global variable.

Nothing will go wrong if you do it in the cpp, there are just several places that output throttle and you need to check them all, scripting has the power to do a global override, and there is that nice example which slews up and down the motor that it is disabling rather than a hard on/off.

1 Like

Hi @iampete , How can I get Yaw control of Bicopter during Q_stablize transit to FBWA?
The Rudder does not perform well during low speed!
Besides, The Drone auto transit in to 45 degree when switch into Q_Loiter. How can I fix this?
Please considering my Bicopter is a Tandem Bicopter!!
Thank you!