mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-26 09:45:33 +03:00
Fix midrc MSP min/max checks
This commit is contained in:
parent
d73c9db650
commit
aaed7bd9aa
3 changed files with 7 additions and 9 deletions
|
@ -1334,7 +1334,6 @@ static void mspFcDataFlashReadCommand(sbuf_t *dst, sbuf_t *src)
|
|||
static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
||||
{
|
||||
uint32_t i;
|
||||
uint16_t tmp;
|
||||
uint8_t rate;
|
||||
|
||||
const unsigned int dataSize = sbufBytesRemaining(src);
|
||||
|
@ -1518,9 +1517,7 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
|||
break;
|
||||
|
||||
case MSP_SET_MISC:
|
||||
tmp = sbufReadU16(src);
|
||||
if (tmp < 1600 && tmp > 1400)
|
||||
rxConfigMutable()->midrc = tmp;
|
||||
rxConfigMutable()->midrc = constrain(sbufReadU16(src), MIDRC_MIN, MIDRC_MAX);
|
||||
|
||||
motorConfigMutable()->minthrottle = sbufReadU16(src);
|
||||
motorConfigMutable()->maxthrottle = sbufReadU16(src);
|
||||
|
@ -1554,9 +1551,7 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
|
|||
break;
|
||||
|
||||
case MSP2_INAV_SET_MISC:
|
||||
tmp = sbufReadU16(src);
|
||||
if (tmp < 1600 && tmp > 1400)
|
||||
rxConfigMutable()->midrc = tmp;
|
||||
rxConfigMutable()->midrc = constrain(sbufReadU16(src), MIDRC_MIN, MIDRC_MAX);
|
||||
|
||||
motorConfigMutable()->minthrottle = sbufReadU16(src);
|
||||
motorConfigMutable()->maxthrottle = sbufReadU16(src);
|
||||
|
|
|
@ -302,8 +302,8 @@ groups:
|
|||
table: receiver_type
|
||||
- name: mid_rc
|
||||
field: midrc
|
||||
min: 1200
|
||||
max: 1700
|
||||
min: MIDRC_MIN
|
||||
max: MIDRC_MAX
|
||||
- name: min_check
|
||||
field: mincheck
|
||||
min: PWM_RANGE_ZERO
|
||||
|
|
|
@ -33,6 +33,9 @@
|
|||
#define PWM_PULSE_MIN 750 // minimum PWM pulse width which is considered valid
|
||||
#define PWM_PULSE_MAX 2250 // maximum PWM pulse width which is considered valid
|
||||
|
||||
#define MIDRC_MIN 1200
|
||||
#define MIDRC_MAX 1700
|
||||
|
||||
#define RXFAIL_STEP_TO_CHANNEL_VALUE(step) (PWM_PULSE_MIN + 25 * step)
|
||||
#define CHANNEL_VALUE_TO_RXFAIL_STEP(channelValue) ((constrain(channelValue, PWM_PULSE_MIN, PWM_PULSE_MAX) - PWM_PULSE_MIN) / 25)
|
||||
#define MAX_RXFAIL_RANGE_STEP ((PWM_PULSE_MAX - PWM_PULSE_MIN) / 25)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue