set implicit params with extra SPI call where required

pull/103/head
Callan Bryant 2020-01-10 14:11:28 +00:00
rodzic 870a135b15
commit 07429986c2
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: C31FA9DF3ACBFFAA
1 zmienionych plików z 16 dodań i 0 usunięć

Wyświetl plik

@ -290,6 +290,14 @@ int16_t SX126x::receive(uint8_t* data, size_t len) {
float symbolLength = (float)(uint32_t(1) << _sf) / (float)_bwKhz;
timeout = (uint32_t)(symbolLength * 100.0 * 1000.0);
// set implicit mode and expected len if applicable
if (_headerType == SX126X_LORA_HEADER_IMPLICIT) {
state = setPacketParams(_preambleLength, _crcType, _implicitLen, _headerType);
if(state != ERR_NONE) {
return(state);
}
}
} else if(modem == SX126X_PACKET_TYPE_GFSK) {
// calculate timeout (500 % of expected time-one-air)
size_t maxLen = len;
@ -600,6 +608,14 @@ int16_t SX126x::startReceiveCommon() {
// clear interrupt flags
state = clearIrqStatus();
// set implicit mode and expected len if applicable
if (_headerType == SX126X_LORA_HEADER_IMPLICIT && getPacketType() == SX126X_PACKET_TYPE_LORA) {
state = setPacketParams(_preambleLength, _crcType, _implicitLen, _headerType);
if(state != ERR_NONE) {
return(state);
}
}
return(state);
}