mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-20 22:13:47 +00:00
Merge pull request #1316 from weebl2000/allow-negative-tx
Allow negative tx
This commit is contained in:
commit
10eacc4e95
141 changed files with 147 additions and 146 deletions
|
|
@ -838,7 +838,7 @@ void MyMesh::begin(bool has_display) {
|
|||
_prefs.bw = constrain(_prefs.bw, 7.8f, 500.0f);
|
||||
_prefs.sf = constrain(_prefs.sf, 5, 12);
|
||||
_prefs.cr = constrain(_prefs.cr, 5, 8);
|
||||
_prefs.tx_power_dbm = constrain(_prefs.tx_power_dbm, 1, MAX_LORA_TX_POWER);
|
||||
_prefs.tx_power_dbm = constrain(_prefs.tx_power_dbm, -9, MAX_LORA_TX_POWER);
|
||||
_prefs.gps_enabled = constrain(_prefs.gps_enabled, 0, 1); // Ensure boolean 0 or 1
|
||||
_prefs.gps_interval = constrain(_prefs.gps_interval, 0, 86400); // Max 24 hours
|
||||
|
||||
|
|
@ -1228,10 +1228,11 @@ void MyMesh::handleCmdFrame(size_t len) {
|
|||
writeErrFrame(ERR_CODE_ILLEGAL_ARG);
|
||||
}
|
||||
} else if (cmd_frame[0] == CMD_SET_RADIO_TX_POWER) {
|
||||
if (cmd_frame[1] > MAX_LORA_TX_POWER) {
|
||||
int8_t power = (int8_t)cmd_frame[1];
|
||||
if (power < -9 || power > MAX_LORA_TX_POWER) {
|
||||
writeErrFrame(ERR_CODE_ILLEGAL_ARG);
|
||||
} else {
|
||||
_prefs.tx_power_dbm = cmd_frame[1];
|
||||
_prefs.tx_power_dbm = power;
|
||||
savePrefs();
|
||||
radio_set_tx_power(_prefs.tx_power_dbm);
|
||||
writeOKFrame();
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ struct NodePrefs { // persisted to file
|
|||
uint8_t multi_acks;
|
||||
uint8_t manual_add_contacts;
|
||||
float bw;
|
||||
uint8_t tx_power_dbm;
|
||||
int8_t tx_power_dbm;
|
||||
uint8_t telemetry_mode_base;
|
||||
uint8_t telemetry_mode_loc;
|
||||
uint8_t telemetry_mode_env;
|
||||
|
|
|
|||
|
|
@ -899,7 +899,7 @@ void MyMesh::dumpLogFile() {
|
|||
}
|
||||
}
|
||||
|
||||
void MyMesh::setTxPower(uint8_t power_dbm) {
|
||||
void MyMesh::setTxPower(int8_t power_dbm) {
|
||||
radio_set_tx_power(power_dbm);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -198,7 +198,7 @@ public:
|
|||
}
|
||||
|
||||
void dumpLogFile() override;
|
||||
void setTxPower(uint8_t power_dbm) override;
|
||||
void setTxPower(int8_t power_dbm) override;
|
||||
void formatNeighborsReply(char *reply) override;
|
||||
void removeNeighbor(const uint8_t* pubkey, int key_len) override;
|
||||
void formatStatsReply(char *reply) override;
|
||||
|
|
|
|||
|
|
@ -719,7 +719,7 @@ void MyMesh::dumpLogFile() {
|
|||
}
|
||||
}
|
||||
|
||||
void MyMesh::setTxPower(uint8_t power_dbm) {
|
||||
void MyMesh::setTxPower(int8_t power_dbm) {
|
||||
radio_set_tx_power(power_dbm);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -188,7 +188,7 @@ public:
|
|||
}
|
||||
|
||||
void dumpLogFile() override;
|
||||
void setTxPower(uint8_t power_dbm) override;
|
||||
void setTxPower(int8_t power_dbm) override;
|
||||
|
||||
void formatNeighborsReply(char *reply) override {
|
||||
strcpy(reply, "not supported");
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ struct NodePrefs { // persisted to file
|
|||
char node_name[32];
|
||||
double node_lat, node_lon;
|
||||
float freq;
|
||||
uint8_t tx_power_dbm;
|
||||
int8_t tx_power_dbm;
|
||||
uint8_t unused[3];
|
||||
};
|
||||
|
||||
|
|
@ -290,7 +290,7 @@ public:
|
|||
}
|
||||
|
||||
float getFreqPref() const { return _prefs.freq; }
|
||||
uint8_t getTxPowerPref() const { return _prefs.tx_power_dbm; }
|
||||
int8_t getTxPowerPref() const { return _prefs.tx_power_dbm; }
|
||||
|
||||
void begin(FILESYSTEM& fs) {
|
||||
_fs = &fs;
|
||||
|
|
|
|||
|
|
@ -815,7 +815,7 @@ void SensorMesh::updateFloodAdvertTimer() {
|
|||
}
|
||||
}
|
||||
|
||||
void SensorMesh::setTxPower(uint8_t power_dbm) {
|
||||
void SensorMesh::setTxPower(int8_t power_dbm) {
|
||||
radio_set_tx_power(power_dbm);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public:
|
|||
void setLoggingOn(bool enable) override { }
|
||||
void eraseLogFile() override { }
|
||||
void dumpLogFile() override { }
|
||||
void setTxPower(uint8_t power_dbm) override;
|
||||
void setTxPower(int8_t power_dbm) override;
|
||||
void formatNeighborsReply(char *reply) override {
|
||||
strcpy(reply, "not supported");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue