1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-12 19:10:27 +03:00

extend msp_override_mask to 32bits / channels (#10891)

* extend msp_override_mask to 32bits / channels
* update other override 16bit variables
This commit is contained in:
Jonathan Hudson 2025-06-03 15:54:45 +01:00 committed by GitHub
parent 498526bdd0
commit c60abeaca8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 6 additions and 6 deletions

View file

@ -3038,7 +3038,7 @@ Mask of RX channels that may be overridden by MSP `SET_RAW_RC`. Note that this r
| Default | Min | Max |
| --- | --- | --- |
| 0 | 0 | 65535 |
| 0 | 0 | 4294967295 |
---

View file

@ -775,7 +775,7 @@ groups:
field: mspOverrideChannels
condition: USE_MSP_RC_OVERRIDE
min: 0
max: 65535
max: UINT32_MAX
- name: PG_BLACKBOX_CONFIG
type: blackboxConfig_t

View file

@ -59,7 +59,7 @@ static timeMs_t validRxDataFailedAt = 0;
static timeUs_t rxNextUpdateAtUs = 0;
static timeUs_t needRxSignalBefore = 0;
static uint16_t mspOverrideCtrlChannels = 0; // bitmask representing which channels are used to control MSP override
static uint32_t mspOverrideCtrlChannels = 0; // bitmask representing which channels are used to control MSP override
static rcChannel_t mspRcChannels[MAX_SUPPORTED_RC_CHANNEL_COUNT];
static rxRuntimeConfig_t rxRuntimeConfigMSP;
@ -215,7 +215,7 @@ bool mspOverrideCalculateChannels(timeUs_t currentTimeUs)
void mspOverrideChannels(rcChannel_t *rcChannels)
{
for (uint16_t channel = 0, channelMask = 1; channel < rxRuntimeConfigMSP.channelCount; ++channel, channelMask <<= 1) {
for (uint32_t channel = 0, channelMask = 1; channel < rxRuntimeConfigMSP.channelCount; ++channel, channelMask <<= 1) {
if (rxConfig()->mspOverrideChannels & ~mspOverrideCtrlChannels & channelMask) {
rcChannels[channel].raw = rcChannels[channel].data = mspRcChannels[channel].data;
}

View file

@ -98,7 +98,7 @@ rxLinkStatistics_t rxLinkStatistics;
rxRuntimeConfig_t rxRuntimeConfig;
static uint8_t rcSampleIndex = 0;
PG_REGISTER_WITH_RESET_TEMPLATE(rxConfig_t, rxConfig, PG_RX_CONFIG, 12);
PG_REGISTER_WITH_RESET_TEMPLATE(rxConfig_t, rxConfig, PG_RX_CONFIG, 13);
#ifndef SERIALRX_PROVIDER
#define SERIALRX_PROVIDER 0

View file

@ -126,7 +126,7 @@ typedef struct rxConfig_s {
uint8_t rcFilterFrequency; // RC filter cutoff frequency (smoothness vs response sharpness)
uint8_t autoSmooth; // auto smooth rx input (0 = off, 1 = on)
uint8_t autoSmoothFactor; // auto smooth rx input factor (1 = no smoothing, 100 = lots of smoothing)
uint16_t mspOverrideChannels; // Channels to override with MSP RC when BOXMSPRCOVERRIDE is active
uint32_t mspOverrideChannels; // Channels to override with MSP RC when BOXMSPRCOVERRIDE is active
uint8_t rssi_source;
#ifdef USE_SERIALRX_SRXL2
uint8_t srxl2_unit_id;