MCPcopy Create free account
hub / github.com/PricelessToolkit/MailBoxGuard / packetFrequencyError

Method packetFrequencyError

Code/Arduino_libraries/LoRa/LoRa.cpp:274–291  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

272}
273
274long LoRaClass::packetFrequencyError()
275{
276 int32_t freqError = 0;
277 freqError = static_cast<int32_t>(readRegister(REG_FREQ_ERROR_MSB) & B111);
278 freqError <<= 8L;
279 freqError += static_cast<int32_t>(readRegister(REG_FREQ_ERROR_MID));
280 freqError <<= 8L;
281 freqError += static_cast<int32_t>(readRegister(REG_FREQ_ERROR_LSB));
282
283 if (readRegister(REG_FREQ_ERROR_MSB) & B1000) { // Sign bit is on
284 freqError -= 524288; // B1000'0000'0000'0000'0000
285 }
286
287 const float fXtal = 32E6; // FXOSC: crystal oscillator (XTAL) frequency (2.5. Chip Specification, p. 14)
288 const float fError = ((static_cast<float>(freqError) * (1L << 24)) / fXtal) * (getSignalBandwidth() / 500000.0f); // p. 37
289
290 return static_cast<long>(fError);
291}
292
293int LoRaClass::rssi()
294{

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected