...This currently isn't working good though. The (DIGITAL_MOTOR_TILT) section works fine. It's stretched and centered good but the (DIGITAL_TILT_PITCH) section results in a servo that is pointing forward instead of at the desired 45 degree default position and doesn't seam to be stretched

I'm planning on this same approach with one of leadfeather's F-35 airframes. With pitch and roll handled in this manner, I'm not convinced I even need tailerons. This would definitely save some weight...

Thanks. I think your right about the talerons.

Feel free to use this code for ledfeathers F-35. Coding the tilt motors so they respond to TX commands but still smoothly transition to any flight mode position was one of the more difficult things to figure out. You are more than welcome to use it for his project. all of this code is basically a direct copy and paste from what I did with the AQ two years ago. The AeroQuad changed their code base to something I can no longer read so thankfully the MultiWii is an off shoot of one of the AeroQuad versions I was using. There is some irony in there somewhere that I had to leave the AeroQuad in order to finish my AeroQuad code You guys caught me just as I'm starting to port all of my AQ code over to the MultiWii so the timing is good. Hope it works out for him as it would save me from doing some flight testing.

Quote:

Originally Posted by cass3825

It sounds like the stretch bit hasn't been set for servo[2], here:

Code:

static uint8_t stretch = 0b00100100; // servo xx543210

hth,
Billy

Yep it's set.

Took a while but I tracked down and took out the constraint you had in this code block and now the servos work perfectly.

Good work you guys ... keep it up and I am going to have to have a multiwii board or two

We'll convince you to use one yet. Had a DuinoStamp and some more wii stuff in my parts box so I threw another controller together for the F35 build. This one has the wii gyros and accel put together which isn't bad at 20$ for all the parts.

A few weeks ago, I started following this thread. In the intervening time, I've been designing a flying-wing tricopter hybrid, somewhat inspired by RCvertt's idea. I'm keeping the tail servo and putting the two front motors on a single tilt rod as opposed to two. I may have to forgo the fancy manta wing in favor of a simple combat wing, but I'm pretty sure I'll stick with the current structures described in my model. No idea how I'll control the tilt angle, as the KK board only takes 4 channels. May need to do some deep code modification...

A few weeks ago, I started following this thread. In the intervening time, I've been designing a flying-wing tricopter hybrid, somewhat inspired by RCvertt's idea. I'm keeping the tail servo and putting the two front motors on a single tilt rod as opposed to two. I may have to forgo the fancy manta wing in favor of a simple combat wing, but I'm pretty sure I'll stick with the current structures described in my model. No idea how I'll control the tilt angle, as the KK board only takes 4 channels. May need to do some deep code modification...

It is basically a chart of every single VTOL configuration ever tried in the last 80 years, all in one image. According to the chart, the designs we've been trying to develop here are Lift + Lift/Cruise, or numbers 30 to 35.

Having a little trouble with the current ramp down code. I set it to wait until the motors are pointing straight forward before the rear motor starts to shut down. The problem is that while the rear motor is waiting it still needs to respond to throttle and pitch control like a regular tricopter, but it needs to do so while it's value it centered around it's last commanded value. Currently it just stays static at it's last commanded value while it waits using the below code...

1)In the video I switch to forward flight and the rear motor starts to decrease in value. This is good.
2)When the rear motor is almost shut off I switch to transition mode and the rear motor starts to increase in value. This is good.
3)While the rear motor is still increasing in transition mode, I switch to forward flight mode and the rear motor jumps up. This is bad. We need to center the pitch and throttle commands around what ever the last good rear motor value was before it jumps up.

The problem is while the back motor waits for the servo to be pointing straight forward, we are setting the rear motor value to exactly where the throttle and pitch TX sticks are telling it to be. This is not the correct value. It's too high. The rear motor is moving towards the (TX throttle+Pitch stick) position, but it's hasn't reached it yet.

It's what ever this intermediate motor value is that we need to center the TX throttle and pitch stick commands around while the rear motor waits for the tilt servos to be pointing forward again.

I now understand the problem. As the front motors tilt forward, their upward thrust diminishes by the sin of their angle (where 90deg is straight up and 0deg is straight forward). The throttle component of the rear motor needs to diminish at the same rate in order to maintain level flight. Perhaps <pseudo code>'motor[0] = rcCommand[THROTTLE] * sin(frontCalculatedMotorAngle) + pitchComponent' would be worth a try...

I now understand the problem. As the front motors tilt forward, their upward thrust diminishes by the sin of their angle (where 90deg is straight up and 0deg is straight forward). The throttle component of the rear motor needs to diminish at the same rate in order to maintain level flight. Perhaps <pseudo code>'motor[0] = rcCommand[THROTTLE] * sin(frontCalculatedMotorAngle) + pitchComponent' would be worth a try...

I'm not sure that's the same issue.

I did a similar but more hackish method of cutting the rear motors throttle range in half for transition mode, thinking that the 45 degree front motors were only using half their thrust to lift the aircraft so the rear motor should be sending a half power lifting component also.

I used the below code to cut the rear throttle range in half for transition mode...

The problem with my aircraft that I found is that it wants to pitch up a lot as soon as the switch from forward flight to transition mode is made. My plane needs the rear motor to stay near full power during the entire transition to counter act this. The single successful transition I had was when I held full down elevator on while making the transition.

So I agree that what you propose should work but if your aircraft is set up like mine with the CG near the rear motor and a huge circle cut out of the rear of the airframe which basically removed it's horizontal stabilizer, then the rear motor now has to act like that stabilizer for a little longer until sufficient airspeed is obtained. That's why I now delay the ramping down of the rear motor until the front motors are pointing straight forward. My guess is that if the motors are straight forward then the rear motor no longer has to counteract any gyroscopic forces from the front motors tilting and enough speed should be obtained so the rear prop doesn't have to act like the surface of the airframe that it replaced.

On an F-35 the elevators and almost the entire wing is behind the CG which puts a lot of surface area there to help dampen any unwanted pitching moments which I don't have. My aircraft has just the opposite with most of the surface area in front of the CG making it a little more inherently unstable during transitions.