Fix remote LNA toggle bugs: correct register comparison, add missing implementations, wire up companion radio

getRxBoostedGain was returned true because both 0x94 (power saving) and
0x96 (boosted gain = 1) return true
This commit is contained in:
Wessel Nieboer
2026-02-24 23:49:06 +01:00
parent f4951d0895
commit 8bf63256b6
10 changed files with 32 additions and 15 deletions

View File

@@ -27,5 +27,3 @@ uint32_t radio_get_rng_seed();
void radio_set_params(float freq, float bw, uint8_t sf, uint8_t cr);
void radio_set_tx_power(int8_t dbm);
mesh::LocalIdentity radio_new_identity();
bool radio_get_rx_boosted_gain_mode();

View File

@@ -26,6 +26,4 @@ bool radio_init();
uint32_t radio_get_rng_seed();
void radio_set_params(float freq, float bw, uint8_t sf, uint8_t cr);
void radio_set_tx_power(int8_t dbm);
mesh::LocalIdentity radio_new_identity();
bool radio_get_rx_boosted_gain_mode();
mesh::LocalIdentity radio_new_identity();

View File

@@ -26,6 +26,4 @@ bool radio_init();
uint32_t radio_get_rng_seed();
void radio_set_params(float freq, float bw, uint8_t sf, uint8_t cr);
void radio_set_tx_power(int8_t dbm);
mesh::LocalIdentity radio_new_identity();
bool radio_get_rx_boosted_gain_mode();
mesh::LocalIdentity radio_new_identity();

View File

@@ -26,6 +26,4 @@ bool radio_init();
uint32_t radio_get_rng_seed();
void radio_set_params(float freq, float bw, uint8_t sf, uint8_t cr);
void radio_set_tx_power(int8_t dbm);
mesh::LocalIdentity radio_new_identity();
bool radio_get_rx_boosted_gain_mode();
mesh::LocalIdentity radio_new_identity();

View File

@@ -47,3 +47,13 @@ mesh::LocalIdentity radio_new_identity() {
RadioNoiseListener rng(radio);
return mesh::LocalIdentity(&rng); // create new random identity
}
#if defined(USE_SX1262) || defined(USE_SX1268)
void radio_set_rx_boosted_gain_mode(bool rxbgm) {
radio.setRxBoostedGainMode(rxbgm);
}
bool radio_get_rx_boosted_gain_mode() {
return radio.getRxBoostedGainMode();
}
#endif