This is a result of I term windup from the PID controller. It's completely expected and normal with props off, and will be fine when you put props on and go fly! Almost everyone new to RC multirotors asks this question on their first build, so don't feel bad!
The detailed answer to this question is related to how multirotors ...
The way the PID controller works is whenever the actual rate of rotation of the quadcopter does not equal the setpoint, or desired rate of rotation (which you set by moving the sticks), it sends a signal to the motors to compensate and bring the rate closer to the setpoint.
This signal is a sum of four terms: The P, I, D and FF. Since it's a sum, you can ...
Yes, you actually can! There are a couple of options for the Betaflight firmware which are mostly plug and play.
OpenTX Lua Scripts
Radios running OpenTX can use scripts written in Lua to control these parameters with the radio's scroll wheel and buttons. Please see @PaulKendall's answer for an explanation of how this method works.
If you ...
30,000 foot view of feedforward as a general concept
Feedforward: I hand you a closed box and you anticipate that it will be heavy, bracing yourself in preparation. Your control of the box is rapid and precise.
Feedforward failure: I hand you a box and it's much heavier than you anticipated. Your control of the box is sloppy until you recalibrate and ...
Among open-source options, Emuflight, INav & Ardupilot (different focus) Butterflight (mostly defunct), Raceflight (mostly defunct). There is still Cleanflight and Baseflight, which are the shared lineage for Betaflight, Emu, Butr, and others.
Of these, EMU has an EKF (Enhanced Kalman Filter) variant of filtering, and also in older releases captures a ...
This is a setting that is needed for RPM sensing and RPM filtering. An ESC can not sense the RPM of your motors directly, but can sense how often the magnets in the motor bell pass by the coils in its stator (this is called eRPM), and will report that number to the flight controller if you've got bidirectional DSHOT enabled. If your motor bell has x magnets (...
In order to access the 32kHz gyro sampling mode, the gyroscopes in question (e.g. ICM 20689) would be switched to an experimental mode where there is higher gyro data jitter, and that sampling at the lower 8kHz frequency made use of lower overall latency lowpass filtering built into the gyro.
Often to get usable gyro data from the 32kHz sampling rate, more ...
There are multiple ways to enable servos in BetaFlight, but since you need only one servo it is recommended to use SERVO_TILT.
For servo to work you need a free pin on your board and this pin must have timer function.
Go to Configuration tab in Betaflight Configurator and enable SERVO_TILT and hit "Save and Reboot"
Then setup the switch you want to use on ...
In Betaflight you can have your motors spinning either props out or props in. The default is props in (towards the body of the quad from the front and back). Be aware other flight control software such as FlightOne and Kiss have different defaults.
If you are running props out, make sure you flip ...
It’s called Airmode.
It keeps the motors in a constant idle state, even at zero throttle. This gives you pitch, roll and yaw authority even when you are upside down.
You can enable it in the configuration tab in Betaflight.
You will notice that your props may try to spool up even when your quad is just sitting armed on the floor, but this is called I term ...
OpenLager is one solution.
Tuning with auditory inputs is another (it's usually possible to hear oscillations caused by excessive P or D gains), but this is more challenging. This is made significantly more challenging because often props are poorly balanced, and this can imitate the same sorts of errors.
Unfortunately, trial & error tends to be the ...
The features add the yaw during rolls. If the camera is pointing straight forward a roll of the quad also looks like a roll in the camera. As soon as the camera is pointing up the roll of the quad moves the camera in a circle and the roll does not look like a roll in the camera. You have to add YAW inputs to correct the image.
This feature adds the ...
There are three ways you should know to enter DFU mode.
The first, as mentioned before, is to push down the bootloader button and power on your board.
The second method is to be used on boards that don’t have a bootloader button (which is increasingly rare). You will need to bridge two bootloader pads on your flight controller to enter DFU mode. Check the ...
I don't think that you can edit the throttle limit directly in the goggles, but you can change rateprofile in the betaflight OSD.
So what you can do is to set up a few different (up to six) rateprofiles in betaflight, and then change between those in the OSD. It won't be as granular as changing the limit directly, but it should be enough if you just want to ...
Turtle Mode, Flip Over After Crash in Betaflight, is a mode that allows your drone to flip over if it is upside down by reversing the prop direction and spinning up very rapidly in order to lift a side of the drone so it flips to the upright position.
This is a manual process - the drone doesn't do this automatically when it flips over (you need to enable ...
As is explained in this forum post, support for DSHOT1200 signaling was indeed removed from Betaflight due to its primary use case being devalued starting in version 4.1.
DShot1200 is officially removed from Betaflight 4.1:
Dshot1200 is only needed for 32khz looptime, and 32khz looptime isn't supported any more in Betaflight. The highest looptime ...
The camera angle setting in Betaflight is not commonly used but can be used to remix the controls into the axis of the camera. So roll would roll about the center of the camera view and yaw will keep the horizon flat. Essentially it would allow you to control the drone as if it were perfectly level while you are flying at the angle of the camera. Most people ...
Betaflight software is available from the Betaflight GitHub pages. These give the option of downloading pre-compiled binaries or the source code if you prefer to compile yourself.
Blackbox log viewer
I fixed it by re-uploading the font to the flight controller.
Some people report they need to power the quad with a LiPo for this to work. I did not need to.
Go to Betaflight's "OSD" tab
Click "Font Manager"
Click "Upload Font"
I'm now back with a normal crosshair.
As @3k pointed out,
The reason for this is that the character set has changed between ...
Airmode is a great feature if you race or fly freestyle. As you found out it spins up the motors at 0% throttle. You usually want this to be enabled since lowering the throttle to 0% would stop the motors and this results in a fast death roll of the quad.
But Airmode also helps during fast rolls when certain motors cannot spin faster or slower to get more ...
Serial ports are hardware based, and cannot be remapped. You can however remap software serial ports. Keep in mind not every pin supports softserial either, as an available hardware timer is required. Typically you can use:
UART TX & RX pins
PPM Input pins
Motor PWM output pins
If you have one of those free, proceed.
Enable softserial from ...
OpenTX LUA Scripts
Also available if you have an OpenTX radio and a smartport telemetry capable receiver are the Betaflight LUA script available from https://github.com/betaflight/betaflight-tx-lua-scripts/releases
These scripts allow you to change PIDs, Rates, Anti-gravity, D-Term Set point, Filters, PWM Settings, ESC protocol, Looptime, RX Settings and VTX ...
After making sure that you have the RX_Loss beeper disabled, the next port of call would be to check your DShot config.
It may not be the beeper that is making the noise - there is a DShot beacon configuration that allows you to set your ESCs to beep in the case of RX_Loss - Id recommend you make sure you have that setting correct.
Edit: from your Diff ...
Disclaimer: I don't know anything of the following for sure, so be careful. Be very, very careful.
The PID controller itself does not care whether it's a 5 or 10-inch quad. The PID gains, though, do care, and the Betaflight default preset numbers are for something around 5" size. For instance, for a tiny whoop-size quad the gains must typically be raised 3x ...
Multirotors are inherently a very noisy environment for sensors like the gyroscope which try to measure the actual motion of the drone. Mechanical vibrations and oscillations are present all over, primarily generated by the motors but also by parts in the frame. These vibrations manifest themselves as fluctuations in the gyroscope values.
The rpm filters in betaflightwill be off the correct frequency by about 14%, and the rpm reported in the motors tab will be incorrect also.
When the rpm notch filter centres are not exactly at the correct frequency, they won’t work as well, leading to increased noise in the motor signal, which may cause hot motors and limited thrust at high throttle.
Bi-directional DShot can help you here. After updating the BLHeli firmware on your BLHeli_32 ESCs to the latest version (support was added only recently) and the firmware on your flight controller to Betaflight >4.0 (PR on Github), you can go into the Betaflight Configurator app and enable Bi-directional DShot under the Configuration tab.
It must be said ...
A barometer and GPS are fairly low resolution (and noisy) methods for determining height and position respectively. As you've observed.
There are two other common methods for measuring height above the ground and position that, while they have limitations, give you much more precision. Sonar for height and optical flow for position. These are usually used in ...
Betaflight reverses the direction of two of your motors so you can flip over in a crash.
You can enable it as ‘flip over after crash’ in the Betaflight configurator.
And it will only work on drones where the firmware supports it or allows you to configure it.