HeliQuad rudder 4th servo not mixing with the collective - acting as tail rudder

Bill in my world, I know the sticks/joysticks as gimbals as this is what I was always taught they were called, this was back in mid 1980’s but this was long before there was such a thing as 2.4GHz radios. Back them it was all FM I believe but my terminology may be all off for today’s lingo.

I understand what you mean now. Never heard the transmitter joysticks referred to as gimbals. Ok now I’m on the same page.

The short answer to your questions is yes. the software ties the left stick of the transmitter to the throttle as well as the collective pitch. HOWEVER, you can specify different ranges of the collective stick between acro and stabilize modes. the full range of the collective output as specified using H_COL_MIN and H_COL_MAX is controlled by the left stick using the acro mode. So you can set up your -11 to 11 deg collective output range and be able to command that full output range with the left stick in Acro mode. the output range of the collective in stabilize mode is controlled by the IM_STAB parameters which specify the percent *10 of the max range (COL_MIN to COL_MAX). So if you set up your output to be lets say -10 deg to 10 deg with COL_MIN and COL_MAX and you want your stabilize mode collective range to be -2 deg to 10 deg then your IM_STAB_COL_1 param would be 400 and your IM_STAB_COL_4 would be 1000. Thus when you put the aircraft into stabilize mode your left stick would now command the -2 deg to 10 deg collective pitch range. the IM_STAB_COL_2 and IM_STAB_COL_3 parameters allow you to set the collective that correspond to 40% and 60% points on your left stick. that way you can make the collective gradient a little more shallow at mid stick.

So like I said earlier the throttle is tied to the left stick but really it is tied to the collective output through the throttle curve when the channel 8 motor interlock is enabled (throttle hold off). the throttle curve uses a 5 point spline to map the collective to throttle at the 0, 25, 50, 75 and 100 % collective positions where 0 % is the collective at COL_MIN and 100 % is the collective at COL_MAX. You can watch Chris’ video here to learn more about it. watch the last video on throttle curve set up for piston and turbines.

As far as the transition from the channel 8 motor interlock off to on, that is handled by the H_RSC_RAMP_TIME parameter and the rotor speed controller. It takes the ramp time and linearly increases the throttle from the H_RSC_IDLE value to the throttle corresponding the the collective output (which is based on the position of your left stick and the flight mode) over the ramp time provided. I believe @ChrisOlson has some way of increasing that manually but i’m not completely sure.

Hopefully this answers your questions.

Bill THANK YOU! This is the piece I needed to know along with ‘its possible’, that was main issue, knowing if its possible or not. If not, then I would have found a way around it, but since it IS possible, I will do as you said, watch the videos and play around with IM_STAB_ and COL_ params. Thank you so much as always!

Just a quick heads up, I tested her this morning at 6AM, she lifted and flew but went into a side to side oscillation (when switching flight modes and doing slight 3D acrobatics), she seemed to lose level and over compensated then touched a blade to the frame so I ordered new blades (cooler colors anyways), the blades I had on there were new but I never planned to fly with them, only testing them so I am not all that upset. I learned 3 very important things from this test flight, 1, it flies, 2 fix the stabilization (lower the gyro stabilization on the roll) to remove the oscillation, 3 tame the motor, it was outputting way to much power. This is all I need to be able to fix and solve the flight issues for my next attempt. My real blades will be here in 2 days so I have that much time to fix my params and reset the blade rotor (the one that touched the frame). I only broke a servo control and a blade so its all good. I expected to have way more damage with the height and speed I was flying. All in a days learning :slight_smile: charging my 12S lipos now to head out to the field and fly my 700. That always calms me to fly my 700, no matter whats going wrong in the world, flying my helis always soothes the soul! I find no better way to relax and enjoy summer than inverting my heli or just flying. I cant wait to get my UAV CP in the air and stable to add that to my realm of flights!

You know the easy answer to all of this is using an ESC that has a built in governor. However if you are intent on using the throttle curve, Chris recently incorporated a governor that works with the throttle curve to govern the rotor speed but it requires an rotor speed sensor. You can read up on it here

AWESOME! I will review! Thank you as always, once I can get her to fly stable and acrobatically (without any weird issues), I will video her and start the wiki write-up on how to do this end to end. I will write the doc with pictures and guides and have you and anyone that would like to preview it then we can decide if it should go in the wiki to help others. I am waiting for a few successful flights before writing it up so I can work out all the details and steps needed to fine tune the params to prevent any issues like I had this morning.

Bill just a head’s up on the status, I fixed the minor issues and waiting on the permanent blades to arrive (day or so), in the meantime, I stripped down the bird to the pixhawk, then ran through a complete refresh and calibration (outside of the bird). This gave me green in the compass and normal for the other sensors, I then installed it back into the frame and redid all the wiring. I did this for 2 reasons, 1 to fix the oscillation and to better calibrate the pixhawk not being mounted in the bird as this makes it so much more difficult to hit the angles at 90degrees (the oscillation that brought me down yesterday was due to extremely high tuning which was my fault I forgot) and 2, to set the CG better. This should solve all the issues and prep for flight when my blades come.

For reference, this is what I meant by the knob → throttle (vary RPM in flight):

"So in both cases of RSC Mode 1 and 2, the systems is looking for a signal on Input Channel 8.

In Mode 1, after arming, Arducopter will pass-through the Ch8 signal to the RSC. I’m currently using this on all my ESC’s with YEP ESC’s (YGE clones). I allows me to have Ch8 on a knob so that I can vary the RPM in-flight. I also have a switch setup on my radio which operates like a Throttle Hold switch. When it is “down”, it cuts the Ch8 signal to minimum. When it is “up”, it sends a Ch8 signal according to my knob position.

So, the operation is simple. Arm the heli with the Throttle Hold switch “off”. Then flip the TH switch up, and the motor achieves the target speed using the governor mode. When I’m done flying, you simply flip the TH to off, and wait for the blades to wind down, then disarm."

Also to note, I edited the RCS_RAMP_TIME and RCS_RUNUP_TIME and played around with both of those, this worked perfectly, I can now ramp up the main motor in a nice and graceful manner (not a zero spin to full RPM spin with the toggle/arming). This would work for me, and I could use this for flight without any needs for the knobs to throttle if I can figure out how to decrease the max RPM’s pumped out.

What I mean by this is to know if there is a MAX RPM setting I can tweak to lower the max output to the motor (I.E less RPM’s at max ramp up). I played with critical and governor params to test but that didnt do it so if someone can simply tell me how to limit the maximum output to the motor (using channel 8 toggle just like now), I would have enough and could no longer care nor worry about the throttle behavior. This would be enough (RAMP times) plus having the max power lowered would give me exactly what I am looking for. You can forget the post about the toggle knob to RPM speed if I can figure out how to set the max RPM’s. That would be enough for what I need to do (and I researched this everywhere before asking you guys here), this way I can ramp up the motor at a nice and graceful speed, then have the high-end RPM’s limited (just lowered for now so I can test fly it under lower speeds) so I can keep the power down to minimal and use just the collective pitching for thrust and control then as I fine tune it, I will raise the max RPM’s back to normal and fly. For right now though, I must get the max RPMs in check before I can fly it so I dont end up crashing again due to some other issues I wouldnt know about yet (bench testing only goes so far, true flight tells the rest).

Does this make sense? I can forget about tuning the knob to RPM (previous post) IF I can figure out how to lower the max output to the motor (RPM), like a motor power ceiling param is what I am looking for. Then I could lower that setting, which in turn would lower the maximum power supplied to the motor and lower the max output (RPM), once I have this, I can leisurely test fly and fine tune the params then once I am satisfied, turn the power back to full and fly 3D.

ARGHHH!!! I AM SUCH an idiot at times! I found and fixed my issue, my throttle NOW controls the RPM output with the safety check (channel 8 on/off). For some reason, no matter how many times I set it, the channel 8 (on/off) wasnt firing the motor with the T-Curve (it would arm, motor would move but not spin, by move I mean a tick so I know it was getting power) but not spinning to the T-Curve. SOOO, I re-flashed the firmware again, then reset the params and sensors, this time setting it to Throttle Curve and channel 8 on/off (this was my issue, channel 8 wasnt staying ON with my T-Curve), now it is! BINGO, fixed! This gave me the safety check for throttle (wont fire without channel 8 on) BUT once armed and ON (channel 8) my throttle now raises and lowers with the stick :frowning:

All good! Ignore my stupidity and go about your day, ignore my previous two posts for help, I figured it out thanks to your guys help! This specific issue was due to my lack of knowing the params correctly and nothing wrong with my radio or PIXHAWK!

You don’t want to do the accel calibration and the compass calibration with the pixhawk not installed on the airframe. First, the accel calibration will result in the 0 deg pitch and 0 deg roll values not matching the frame ( unless you perfectly mounted the pixhawk on the frame). Second, your compass cal could be affected by equipment on your vehicle (like motors) and cause the compass to be wrong. So always, always calibrate the accels and compass with the pixhawk installed.

Damnit, but ok, makes sense, I’ll redo the calibration of sensors. I wondered about that very issue but then I read everywhere it’s more accurate to do it outside of the frame. All good, thank you SO MUCH for your help so far. It has been a monumental help in understanding the PIXHAWK!

You mean to say the throttle raises and lowers according to your throttle curve. In your case, you have 3D collective pitch settings meaning that your H_COL_MIN corresponds to -11 deg of collective pitch in acro mode. So you will want a throttle curve that is more shaped like a “V” rounded at the bottom. the settings you use for the throttle curve set your max RPMs. Unfortunately you can’t determine what that is until you fly and see how the rpm changes under load. In ArduCopter, we don’t offer any way to change that with a knob on your transmitter but you can do it with mission planner or QGC by changing the value of the throttle curve parameters.

So to recap, you arm your heliquad. at that point, the throttle goes to the value set by H_RSC_IDLE which in your case should be zero. I guess you could have it at some small value if you want to know that your heliquad is armed. But then you flip throttle hold off and the RSC ramps in your throttle from zero to the throttle curve value in the time specified by H_RSC_RAMP_TIME. At that point your left stick is hooked to both the collective and throttle based on the mode and throttle curve. Hopefully this is the way you perceived it and the way you have it set up. the governor that Chris designed is the next step but I have not set that up. So you will have to learn from his thread or ask him directly.

Bill its all set its working exactly as I need to (Throttle Curve) which follows the placement of my throttle stick, I have it exactly how I need it for regular and inverted flight (negative pitch). When I get this in the air, I will write-up the “do’s” and “dont’s” with PIXHAWK coming (strictly coming from a heli world). Throttle and pitch curves mean something entirely different in the heli world so this was part of my issue trying to understand what you were telling me.

All good though, I have it reacting 100% how I wanted to work, thanks to you!

Bill can I ask you one more question? More of an advice type question. On the bench (motor engaged but not spinning, no throttle yet), I have it exactly perfect, all servos respond to the right pitches at the right times, all 4 blades go 0 pitch at mid-stick, motor fires and ramps up perfectly now using the Throttle Curve :slight_smile: -but remember this is before the issue/question happens because no motor spinning yet, what I am saying is, at this point, before the motor spins, everything is solidly perfect. Then one thing stood out as I bench tested it and I wanted to run it by you before taking her up in the air tomorrow.

Here is the situation, before firing the motor as stated above, its flawless, everything works as expected. Now, I arm and prepare the motor, while ramping up the motor to power the blades, at about 50/60% throttle, my bottom right servo and top left servo start to move on their own slightly, or they dont respond to the input, then catches up. I slow down the motor and they still remain “off” (best way to describe it as they are not reacting as the other 2 are and should be). They do not return to normal until I stop the motor and disarm, then all 4 are back in perfect sync. Then all 4 servos are perfect again until I ramp up the motor, then it happens all over again.

My question is, do you think this is normal for bench tests (as the gyros are trying to compensate possibly being on the bench and it cant)? I know this happens in all of my tail gyros in Heading Hold, half the time it doesnt move on the bench, then in flight its perfect. OR do you think this is electrical servo interference? OR do you think it could be vibration on the bench? OR do you think this is caused by cheaper servos (they are all 4 brand new but I didnt go HV, expensive Savox servos like I do on my helis), but they also are not the bottom of the shelf, they are tactic TS-20 mini’s. I read decent reviews on them so I chose them for cost and in case I crash, replacement servos (wont break the wallet).

Let me know your thoughts and sorry for the zillion questions, you have been a tremendous help!! If you need a log, let me know, I am trying to read them myself but I cant find anything for RC OUT (but I am new to reading these logs so its probably a newb issue).

Here is the RC OUT, notice the craziness at the end, this is what I am worried about but cannot seem to get a handle on it. I have moved servo wires so they dont interfere, my ESC has the ring, and so on but it always seems to happen at 60% power or so.

And RC IN, this shows me testing the servo pitches (forward/back/roll/ETC) which doesnt correspond to the RC OUT seen above, any ideas?

Another one, in and out

Josh,
In these graphs that show RCIN, are you making inputs into the rc controller or are those inputs happening with out your input?

EDIT: one other thing I would ask that you do is review our section on tuning. Even though you have a heli quad, I think it is still applicable especially the section that describes the basic workings of this flight control system. It is WAY different than the 3 axis FBLs that are sold for heli’s. there are many knobs you can turn (so to speak) that set the behavior that the user wants. All the PIDs do is drive the vehicle to that target (desired) response. So once you flip the throttle hold switch off, there is a “ghost” aircraft that your joysticks control and the flight controller drives the actual aircraft to that “ghost” aircraft rate/attitude. so if you are on the ground making inputs, the ghost will move all about and the controller is trying to drive the aircraft to that attitude but can’t because it is on the ground. so you will see unrealistic inputs from the controller. Just keep this in mind as you do bench tests. You typically can’t trust what they are showing you.

I am moving the inputs on the RC in (to test the servos respond across all ranges and conditions - such as in flight with full running motor), yes this is on the bench and yes this is more extreme than any flight would ever be. If it doesnt respond (somewhat) normally on the bench then its possible to misbehave in flight so this is what I try to test. Notice the RC out doesn’t match the RC in around 3/4 of the graphs, this was at the highest motor RPM, that is when they lose control and shows erratic servo output behavior.

I will take your advice, and to be honest was what I hoped you would say, I realize the bench is never a true flight test but it does allow me to go through the motions of everything that will happen in flight while stable on the ground. This doesnt test the stabilization and often throws strange behavior so that’s what I was hoping to hear. I plan to test fly tomorrow but now that I have full throttle control to the motor, I can limit the RPM’s to see if I can get it to hover then fly (under a lower spinning motor which doesnt trigger the odd behavior with the servos), then once I know its stable in flight and everything works, I will open up the throttle (more output to the motor) and start to fly more aggressively. Prior to you helping me figure out the Throttle Curve and motor control, I only had channel 8 on/off which was off or full RPM max output so this was difficult to test-fly on not knowing how it will respond in flight under full power so I oscillated and tipped over. I just need to do as much prep testing as possible and do as much per-homework as possible to achieve the best outcome so I dont end up crashing. I bench test all of my helis for at least a week under all sorts of different patterns until I am satisfied output across all conditions are met with acceptable responses. The difference between my helis and UAV (this drone) is the gyros, on my helis, I only use a HH tail gyro but no FlyBar nor FBL controller so I can test more appropriately on the bench the swash and all 3 CPPM servos and how they respond to input under different loads. On my helis, I have full control of everything right from my radio (including my idle-up and throttle holds with what position to lock and hold the RPM).

And yes, I have been reviewing the tuning PID like crazy, this is what led me to fixing my issues and stabilizing the bird this time around. Last attempt never should have been attempted until I was better prepared with the tuning aspects. I know thats what caused the light crash, it was OVER compensating and led to a tip over.

I also reviewed the vibrations and they were acceptable across the board so this is good. I was worried about the vibes based on everything I have been reading.

I am wondering if I have bad hardware, the altitude keeps jumping in MP, this never happened before but is constant now. I also cannot stop the 2 servos from going haywire and I have re-wired it, changed servos, ETC. Is the altitude jumping normal or something to be concerned with? Also it continues to go duh duh duh (lower tone) then duh duh duh (higher tone) but it doesnt match what the beeps sound like. I am now wondering if my issues are with a faulty board:

Notice the -0.19 in the alt on the bottom middle? Then in the left side, it goes from 0 to .05 back and forth (and its not moving).

Doesn’t look like it is getting a GPS lock.

Do I need one? I will only fly it stable and acro so I pulled it out. The reason I didnt think so and why I decided to pull it was because the wiki page that shows the HeliQuad setup doesnt use one (which is how I want to use mine). I figured it was optional