Add error handling for SPI command failures in LR11x0, RF95, and SX128x interfaces

This commit is contained in:
Ben Meadors
2026-01-27 06:04:30 -06:00
parent 8894a0b711
commit ef8f90f8b1
3 changed files with 17 additions and 1 deletions

View File

@@ -69,6 +69,8 @@ template <typename T> bool SX128xInterface<T>::init()
int res = lora.begin(getFreq(), bw, sf, cr, syncWord, power, preambleLength);
// \todo Display actual typename of the adapter, not just `SX128x`
LOG_INFO("SX128x init result %d", res);
if (res == RADIOLIB_ERR_CHIP_NOT_FOUND || res == RADIOLIB_ERR_SPI_CMD_FAILED)
return false;
if ((config.lora.region != meshtastic_Config_LoRaConfig_RegionCode_LORA_24) && (res == RADIOLIB_ERR_INVALID_FREQUENCY)) {
LOG_WARN("Radio only supports 2.4GHz LoRa. Adjusting Region and rebooting");