Broken in e44f75b4a7.
Problem caused by not checking both of the bits after masking.
Prior to this commit the code would incorrectly attempt to use GYRO1
when only GYRO2 was detected resulting in a segfault.
Captures packet quality statistics per motor to provide a platform for troubleshooting and in-flight alarms or warnings.
Continuously monitors and captures packet stats over the past second to be used to determine DSHOT telemetry link quality.
Update the CLI to move the DSHOT telemetry data/stats out of the `status` command and into a dedicated `dshot_telemetry_info` command. Reformatted the motor data to include the invalid packet percentages. Will aid in debugging by identifying ESC's that may be misconfigured (not supplying data), or those with problems generating high invalid packet percentages.
Data can later be used to generate OSD and beeper-based warnings if invalid packet percentages exceed thresholds.
Included a blackbox logging debug mode (`set debug_mode = DSHOT_RPM_ERRORS`) to record the per-motor invalid packet percentages in hundredths of a percent (so 123 is 1.23%).
Will dynamically determine the number of active OSD stats lines that are being displayed (accounting for user selections and #define logic) and maximize the number of stats that can be displayed based on the current video format (13 for NTSC, 16 for PAL).
If the number of stats is equal to or greater than the available display lines, the heading will be suppressed and used instead for an extra stats line.
The entire stats page will be centered vertically based on the screen size determined by the video format.
fix some comments
some requested fixes
initialLandingAltitude converted in meters
removed landing altitude setting from msp, added missing comma
re-added gps_rescue_landing_alt in settings.c
made target landing distance configurable, renamed descentDistance
added slow down distance and improved return speed
changed newSpeed formula
moved newSpeed variable in gps rescue inizialization phase
newSpeed declared as int32_t
modified slow down distance to constant
added some comments
fix type-casting bug
removed extra space
changed slow down distance for better landing
changed default targetLandingAltitudeM to 5 meters