Fix RSSI miscalculation and TX power not being set correctly
This commit is contained in:
parent
98ee2f6d32
commit
c21d8dcb2b
4
LoRa.cpp
4
LoRa.cpp
|
@ -775,7 +775,7 @@ int ISR_VECT LoRaClass::packetRssi() {
|
|||
// may need more calculations here
|
||||
uint8_t buf[3] = {0};
|
||||
executeOpcodeRead(OP_PACKET_STATUS, buf, 3);
|
||||
int pkt_rssi = -(int(buf[2])) / 2;
|
||||
int pkt_rssi = -buf[0] / 2;
|
||||
return pkt_rssi;
|
||||
#endif
|
||||
}
|
||||
|
@ -796,7 +796,7 @@ float ISR_VECT LoRaClass::packetSnr() {
|
|||
#elif MODEM == SX1262
|
||||
uint8_t buf[3] = {0};
|
||||
executeOpcodeRead(OP_PACKET_STATUS, buf, 3);
|
||||
return float(buf[1]) / 4.0;
|
||||
return float(buf[1]) * 0.25;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -620,7 +620,7 @@ void serialCallback(uint8_t sbyte) {
|
|||
kiss_indicate_txpower();
|
||||
} else {
|
||||
int txp = sbyte;
|
||||
if (txp > 17) txp = 17;
|
||||
if (txp > 22) txp = 22;
|
||||
|
||||
lora_txp = txp;
|
||||
if (op_mode == MODE_HOST) setTXPower();
|
||||
|
|
|
@ -658,7 +658,7 @@ void kiss_indicate_stat_rssi() {
|
|||
#if MODEM == SX1276 || MODEM == SX1278
|
||||
uint8_t packet_rssi_val = (uint8_t)(last_rssi+rssi_offset);
|
||||
#elif MODEM == SX1262
|
||||
uint8_t packet_rssi_val = (uint8_t)(last_rssi);
|
||||
int8_t packet_rssi_val = (int8_t)(last_rssi+rssi_offset);
|
||||
#endif
|
||||
serial_write(FEND);
|
||||
serial_write(CMD_STAT_RSSI);
|
||||
|
|
Loading…
Reference in New Issue