[SX128x] Merge pull request #1206 from Jorropo/fix-signed-ranging-result
fix getRangingResult to properly account for signed numbers
This commit is contained in:
commit
885a921ea3
1 changed files with 2 additions and 1 deletions
|
@ -176,7 +176,8 @@ float SX1280::getRangingResult() {
|
|||
RADIOLIB_ASSERT(state);
|
||||
|
||||
// calculate the real result
|
||||
uint32_t raw = ((uint32_t)data[0] << 16) | ((uint32_t)data[1] << 8) | data[2];
|
||||
uint32_t uraw = ((uint32_t)data[0] << 16) | ((uint32_t)data[1] << 8) | data[2];
|
||||
int32_t raw = (uraw & ((1<<23) - 1)) | (uraw >> 23 << 31);
|
||||
return((float)raw * 150.0 / (4.096 * this->bandwidthKhz));
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue