Add the minimum time for a 'K' parameter.

This commit is contained in:
Jonathan Naylor 2020-04-13 15:54:37 +01:00
parent ef65268b45
commit c84d81d91c
3 changed files with 8 additions and 7 deletions

View file

@ -391,21 +391,22 @@ uint8_t CSerialPort::setFMParams1(const uint8_t* data, uint8_t length)
uint8_t CSerialPort::setFMParams2(const uint8_t* data, uint8_t length)
{
if (length < 4U)
if (length < 5U)
return 4U;
uint8_t speed = data[0U];
uint16_t frequency = data[1U] * 10U;
uint16_t delay = data[2U] * 10U;
uint8_t level = data[3U];
uint8_t minTime = data[2U];
uint16_t delay = data[3U] * 10U;
uint8_t level = data[4U];
char ack[50U];
uint8_t n = 0U;
for (uint8_t i = 4U; i < length; i++, n++)
for (uint8_t i = 5U; i < length; i++, n++)
ack[n] = data[i];
ack[n] = '\0';
fm.setAck(ack, speed, frequency, delay, level);
fm.setAck(ack, speed, frequency, minTime, delay, level);
return 0U;
}