Merge pull request from matthias-bs/master

[SX127x] added setCrcFiltering()
This commit is contained in:
Jan Gromeš 2022-05-24 11:05:10 +02:00 committed by GitHub
commit fe893cdb60
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 0 deletions
src/modules/SX127x

View file

@ -1045,6 +1045,16 @@ int16_t SX127x::variablePacketLengthMode(uint8_t maxLen) {
return(SX127x::setPacketMode(RADIOLIB_SX127X_PACKET_VARIABLE, maxLen)); return(SX127x::setPacketMode(RADIOLIB_SX127X_PACKET_VARIABLE, maxLen));
} }
int16_t SX127x::setCrcFiltering(bool crcOn) {
_crcOn = crcOn;
if (crcOn == true) {
return(_mod->SPIsetRegValue(RADIOLIB_SX127X_REG_PACKET_CONFIG_1, RADIOLIB_SX127X_CRC_ON, 4, 4));
} else {
return(_mod->SPIsetRegValue(RADIOLIB_SX127X_REG_PACKET_CONFIG_1, RADIOLIB_SX127X_CRC_OFF, 4, 4));
}
}
int16_t SX127x::setRSSIConfig(uint8_t smoothingSamples, int8_t offset) { int16_t SX127x::setRSSIConfig(uint8_t smoothingSamples, int8_t offset) {
// check active modem // check active modem
if(getActiveModem() != RADIOLIB_SX127X_FSK_OOK) { if(getActiveModem() != RADIOLIB_SX127X_FSK_OOK) {

View file

@ -980,6 +980,15 @@ class SX127x: public PhysicalLayer {
*/ */
int16_t variablePacketLengthMode(uint8_t maxLen = RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK); int16_t variablePacketLengthMode(uint8_t maxLen = RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK);
/*!
\brief Enable CRC filtering and generation.
\param crcOn Set or unset CRC filtering and generation.
\returns \ref status_codes
*/
int16_t setCrcFiltering(bool crcOn = true);
/*! /*!
\brief Sets RSSI measurement configuration in FSK mode. \brief Sets RSSI measurement configuration in FSK mode.
@ -1117,6 +1126,7 @@ class SX127x: public PhysicalLayer {
float _br = 0; float _br = 0;
bool _ook = false; bool _ook = false;
bool _crcEnabled = false; bool _crcEnabled = false;
bool _crcOn = true; // default value used in FSK mode
size_t _packetLength = 0; size_t _packetLength = 0;
int16_t setFrequencyRaw(float newFreq); int16_t setFrequencyRaw(float newFreq);