Ensure DMA_RAM section is at start of RAM and the the region defining the shareable region is covered.
Enable USE_LEDSTRIP_CACHE_MGMT on NUCLEOH743 target
Add ability for pilots to log CRC errors, unknown frames, LQ, and RSSI.
Added macro to debug.h to simplify incrementing debug values without the need for local statics in client code.
Fix the issue described in Issue #10220, typos in serial drivers for F7, F3, G4, H7 platforms.
Before this change, the serial line is incorrectly pulled down for bidirectional comms, which may cause dropped packets (silently) with any Rx protocol that uses bidirectional comms on the Tx line (GHST, SRXL-2, FPORT)
Issue #10336
Fix Typo in Ghost driver
Update src/main/osd/osd.c
Co-authored-by: haslinghuis <mark@numloq.nl>
Update src/main/rx/ghst.c
Co-authored-by: haslinghuis <mark@numloq.nl>
Update src/main/rx/rx.c
Co-authored-by: haslinghuis <mark@numloq.nl>
Future-proof GHST driver, while adding RSSI and LQ support
Ensure that future packet types which contain 4 channels of data, plus auxiliary data, are correctly handled by BF releases that predate them.
Implement changes suggested by reviewers
Cosmetics
Prevent IRC tramp from briefly entering pitmode at startup.
Backout of PR #10166, ensuring pitmode can be correctly set from OSD and MSP.
Add CLI option to allow non-conforming tramp implementations to work with betaflight.
- all CLI parameters related to dynamic idle alone re-named with the `dyn_idle_` prefix
- when linear throttle scaling is active, the user's set idle value is now correct whether dynamic idle is on or off. Previously, the idle value fell when dynamic idle was activated at the same time as linear throttle scaling.
- enabling dynamic idle no longer causes a deadband at full throttle
- the setpoint throttle value sent to Blackbox does not include the dynamic idle offset
- the throttle value sent to the antigravity and dynamic lowpass code includes throttle scaling, but no other modifiers, to avoid false elevation of the apparent throttle position from dynamic idle and unnecessary transient changes in their filter cutoffs
- Dynamic Idle now uses a modified PI controller during active rpm control phase
- the D factor provides early detection of rapid falls in rpm, e.g. in hard chops. It is filtered heavily. Inadequate `dyn_idle_d_gain` may lead to a transient drop in rpm immediately after cutting throttle. Default is 50.
- the P factor provides fast control over rpm during the active control phase. Too much `dyn_idle_p_gain` may cause oscillation in that phase. Note enough and a slow drop in rpm will be inadequately corrected. Default is 50. Needs to be higher with heavier larger props.
- An integral element does most of the work. It prevents enduring offsets from the set rpm. The I gain is high when increasing responding to low rpm, and slow to release. The slow release makes a huge difference and avoids I oscillation. Not enough `dyn_idle_i_gain` and there may be wobble in rpm during the control phase, or the idle value may rise too slowly; too much may cause wobble. Default is 50. Needs to be higher with heavier larger props.
- The DYN_IDLE debug shows idle P, I and D in debugs 0, 1 and 2. minRps stays in debug 3.
- Interactions between throttle and thrust linear, dynamic idle, throttle scaling and throttle boost have been checked and work as they should.