If your FPV drone is too powerful, you can scale down throttle and reduce its power, it’s like putting a cap on the throttle. This can be useful for flying tiny whoops and other quads indoor, or racing in very technical tracks that requires slower speed and more precise control.
There are 4 ways to apply throttle cap in an FPV drone:
- Super Simple: Reduce Mixer Weight in OpenTX
- Use a knob/slider to change max throttle using Mixer Multiplex
- Use a knob/slider to change max throttle using Global Variables
- Super Simple: Betaflight CLI Command
You can also use throttle curve in OpenTX, which I covered in another post.
Table of Contents
Reducing Mixer Weight in EdgeTX
This is the simplest method. The downside however, is that if you want to change the throttle cap value (e.g. from 80% to 90%), you would have to go into the Mixer page and change it manually. Of course, that’s not a huge problem if you don’t change it often.
Go to Mixer, find the Throttle channel, hold down the Enter button and select Edit.
The default value for Weight is 100, which means 100%. Reduce it to whatever percentage you like. You will notice the bar on the right shrinks on both sides as you reduce Weight.
In Offset you need to lower it until the bar hits -100 again, that’s 0 throttle as the full range of throttle goes from -100 to 100. The Offset value you need should be minus whatever value you took away in Weight, in this case -20.
And that’s it!
If you want to easily change max throttle with a knob or slider on your radio, you can too.
Why you want to do that? Well, for tiny whoop pilots (especially the new 2S/3S whoops), you might want to fly slower indoor and faster outdoor. Pro racing pilots can choose different max throttle depending on the different tracks. The possibility is endless.
Using Slider/Knob to Change Max Throttle (Mixer Multiplex)
Here is how to use the knob (potentiometer) on your radio to adjust the max throttle. I prefer to set it up in a way so that the maximum throttle changes from 50% to 100% as you turn the knob from 0% to 100%.
You can make max throttle to go from 0% to 100% too… But in my opinion, we never fly with 0% max throttle right? so it’s pretty useless to have max throttle that low. 50% to 100% should be good enough for most situations, and it gives you better resolution with the knob for setting a more precise max throttle value.
This method is inspired by Joshua Bardwell’s video.
In the Mixer Page, find your throttle channel.
Insert a line after it. To do this, select the throttle channel, hold down the Enter button, and select “Insert After”.
Edit this line, choose a knob or slider as the source, I will use S2 in this example. Set Weight to 25, Offset to 75.
Scroll down in the same page and set Multiplex to “Multiply”.
Now add another line under the one we just created. Again, select the same knob/slider as the source (S2 in our example), and set Weight to 25 and Offset to -25.
But this time you want to select “Add” in the Multiplex setting.
And you should end up with this:
This should be working now!
Finally you can setup a switch to enable/disable this feature. Simply add a switch position in these two lines, so the max throttle remains at 100% and unaffected by the knob when the switch is not active. Do this for both *= and += lines.
To set different maximum throttle range, like 0% to 100% instead of 50% to 100%, you only need to play around with the Weight and Offset of the two lines under throttle. Here are two examples, 50% to 100% and 0% to 100%.
50% to 100% Max Throttle
- *= S2 Weight 25, Offset 75
- += S2 Weigh 25, Offset -25
0% to 100% Max Throttle
- *= S2 Weight 50, Offset 50
- += S2 Weight 50, Offset -50
Setup Slider/Knob to Lower Max Throttle (Global Variable)
This is a more complex way and it achieves the exact same thing as the previous method using Multiplex. But I want to show you the possibility and it might inspire you to use this for something else in the future, because “Global Variable” is a truly powerful tool in OpenTX.
Go to Inputs.
Create two new inputs. Use the same slider or knob of your choice as the Source. We will use S2 in our example.
We will use the values of these inputs as the Weight and Offset of the our throttle, therefore I name these inputs TWgt (Throttle Weight) and TOfs (Throttle Offset) respectively.
It might sound a bit confusing now, no worries, just keep following what I am doing here, it doesn’t matter what you call them as long as you know which is which.
And set the Weight and Offsets values according to the diagrams below. These values will allow the throttle cap to change from 50% to 100% as we turn the slider from 0% to 100%.
You should end up with 2 new inputs like this.
Now go to the Special Function page.
Create two “ON” functions to adjust GV1 and GV2 base on the inputs we previously created. What these basically do is to turn the slider value into “global variables” so we can access it in the program freely;
TWgt = GV1, and TOfs = GV2.
Don’t forget to enable these functions by checking the boxes at the right.
Here is the final step. Go to the Mixer page, and edit the Throttle channel.
Use GV1 as the Weight of the Throttle channel, and GV2 as the Offset. You can actually do this in the Inputs Page too, either way is fine.
That’s it! It should be working now.
If you wish, you can assign a switch to enable/disable this feature. Go to Special Functions.
Assign two functions to a spare switch you want to enable/disable this feature, and use “Adjust GV1 100”, and “Adjust GV2 0”. This is basically setting the throttle channel weight and offset in the mixer back to the default values.
To use different max throttle range, simply play around with Weight and Offsets in the two slider inputs. Here are some examples:
50% to 100% Max Throttle
- TWgt (Weight 25, Offset 75)
- TOfs (Weight 25, Offset -25)
0% to 100% Max Throttle
- TWgt (Weight 50, Offset 50)
- TOfs (Weight 50, Offset -50)
Betaflight CLI Command For Throttle Scaling
If you can’t put a limit on throttle on the radio, or you simply find it too complicated, fear not! You can do it in Betaflight too and it’s quite simple!
Go to CLI in Betaflight Configurator, and type
Set throttle_limit_type = scale Set throttle_limit_percent = 80 Save
And that’s it.
You can change the throttle limit value in the command, the example assumes you want to use 80% power.
The cool thing about this, is that you can have it set up differently on different rate profiles. There are three profiles in Betaflight, and you can switch between them easily in Betaflight OSD, or with a switch on your radio (setup via Adjustment tab).
There is another parameter you can use for “throttle_limit_type”: clip.
set throttle_limit_type = clip set throttle_limit_percent = 80 save
“clip” will simply chop the top of the throttle curve off. The good thing is it won’t change where the hover point is, but you are wasting throttle stick resolution and so it might feel less precise. Scale is a more popular option and would feel more natural.
To disable this feature, simply type
set throttle_limit_percent = 100 set throttle_limit_type = off save
That’s it! Hope that was useful!
20 comments
Hi Oscar,
Can you please update this tutorial on the last version of edgetx? 2.9
There are a lot of difference since 2009.
Thanks you.
Hi Oscar,
What if i setup my throttle dual rates in the radio to 80 % instead ?
Also, want to ask a question if with 25,000 KV motors which 31 mm props will be suitable : 3 blade / 4 blade ?
Thanks for your great informative writeups as always !
Most brilliant article !
is it possible to do same for yaw/roll/pitch? I am trying different values, can not get it right :(
for yaw roll and pitch, you’d have to do it inside the radio settings, just set a maximum output value for these channels in the mixer’s page.
I have a DJI FPV Controller. Anyway to change Roll/Pitch in BetaFlight?
Wondering if you have a guide on setting the motor limit, or if you could point me to the correct betaflight setting. I recently bought a set of motors that are too high a kv and need to try and tame them.
Love your blog… its much easier to read your blog for 2min vrs watching a 20min youtube vid.
One thing to mention: if you set up throttle limit in the TX like this and set the throttle mid-point in betaflight, your throttle curve will be wrong because betaflight sets the curve based upon the value that is set in the flight controller (usually 100%). Either set both the throttle limit and mid-point in the TX, or set the throttle limit and Mid-point in betaflight.
The problem is this uses throttle limit rather than motor limit. When you wind up in a situation where the gyro demands full authority of the motors it will spin the motors at full throttle which could be bad, especially if you’re using this to tame 6S…
If you use the appropriate motor KV then it shouldn’t’ be a problem
Hi, i’ve just tried the option with mixer multiplex and as a result my taranis xq7 reduces row to 75 % not the throttle, ho to fix that ?
Regards,
Jan
Great article. I am in the process of putting together a quad where the ESCs are 25A, while the motors can draw close to 30A. I figure that scaling this in the FC to about 80% will contribute to keeping the ESC a bit safer from overheating.
Oscar,
Which method would limit the usable power by the controller? AFAIK using the scale in Betaflight still allows the FC to use full power when it needs (like during a flip recovery or whatnot}. I recently purchased some motors that turned out to be much higher Kv than I expected and I need to make sure that when I scale the throttle the FC will not attempt to use more than that even during such events in order to keep within ESC current specs.
Setting it on the FC would limit the max motor output. Setting it on the radio only limit the signal sent from the radio, the quad can still use 100% power.
Hi Oscar,
Thanks for sharing this, it is really helpful for new fliers like me, BUT i really couldn’t do it. In a (Using Slider/Knob to Change Maximum Throttle (Using Mixer Multiplex)), i tried to do it step by step, everything was very clear until you said :Now add another line under… i thougt about it few times until i got you and did it, then it went well until you said: This should be working now! BUT after that i was totally lost and still don’t know what and how you mean!!!!! Could you please add some more words, screen shots and tell us how to add switch and how to do the rest of the work please
yea that way is quite complicated. Just stick with “Using Mixer Multiplex” for now, the results are the same.
Thanks for the article very easy to follow & works like a charm.
I can confirm the mixer method works great. I’m going to experiment with different throttle limits to extend flight times and increase distance flown….
If you are using openTX, you can also limit the throttle simply using curves without sacrificing throttle stick resolution.
Same using the weight/offset method I shown in the post.
Like I said, there are a million ways to achieve the same thing :D