[SX126x] Fixed known binary receive length

This commit is contained in:
jgromes 2021-11-21 21:16:58 +01:00
parent 3047409b27
commit f3de4602e6
2 changed files with 6 additions and 4 deletions

View file

@ -563,9 +563,10 @@ int16_t SX126x::readData(uint8_t* data, size_t len) {
}
// get packet length
size_t length = len;
if(len == RADIOLIB_SX126X_MAX_PACKET_LENGTH) {
length = getPacketLength();
size_t length = getPacketLength();
if((len != 0) && (len < length)) {
// user requested less data than we got, only return what was requested
length = len;
}
// read packet data

View file

@ -550,7 +550,8 @@ class SX126x: public PhysicalLayer {
\param data Pointer to array to save the received binary data.
\param len Number of bytes that will be received. Must be known in advance for binary transmissions.
\param len Number of bytes that will be read. When set to 0, the packet length will be retreived automatically.
When more bytes than received are requested, only the number of bytes requested will be returned.
\returns \ref status_codes
*/