From b7c72fe5eede5d5601ab7196c75556402fcf388f Mon Sep 17 00:00:00 2001 From: liquidraver <504870+liquidraver@users.noreply.github.com> Date: Thu, 11 Jun 2026 13:58:08 +0200 Subject: [PATCH] route CAD_DONE/CAD_DETECTED to DIO1 so LR1110 LBT CAD completes (radio2 audit) --- .gitignore | 2 ++ .../patches/zephyr-new/drivers/lora/lr11xx/lr11xx_lora.c | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index a2f8706..f9a697b 100644 --- a/.gitignore +++ b/.gitignore @@ -108,3 +108,5 @@ usb_companion_probe.py CORE_MESH_AUDIT_INDEX.md UPLINK_AUDIT_INDEX.md GPS_AUDIT_INDEX.md +UI_AUDIT_INDEX.md +RADIO2_AUDIT_INDEX.md diff --git a/zephcore/patches/zephyr-new/drivers/lora/lr11xx/lr11xx_lora.c b/zephcore/patches/zephyr-new/drivers/lora/lr11xx/lr11xx_lora.c index 9f9f316..b6ba6c6 100644 --- a/zephcore/patches/zephyr-new/drivers/lora/lr11xx/lr11xx_lora.c +++ b/zephcore/patches/zephyr-new/drivers/lora/lr11xx/lr11xx_lora.c @@ -265,7 +265,14 @@ static void lr11xx_apply_modem_config(struct lr11xx_data *data, ctx, LR11XX_SYSTEM_IRQ_RX_DONE | LR11XX_SYSTEM_IRQ_TX_DONE | LR11XX_SYSTEM_IRQ_TIMEOUT | LR11XX_SYSTEM_IRQ_CRC_ERROR | - LR11XX_SYSTEM_IRQ_HEADER_ERROR, + LR11XX_SYSTEM_IRQ_HEADER_ERROR | + /* CAD_DONE/CAD_DETECTED MUST be redirected to DIO1 or the blocking + * LBT CAD (run before every TX, cad.mode=LBT) never completes — its + * semaphore is signaled from the DIO1 handler, so without this the + * CAD times out (~200ms) every TX and LBT is dead. The SDK redirects + * no IRQ to DIO by default; the SX126x driver keeps these in its mask + * too. CAD_DONE only sets during a CAD op, so it's inert during RX. */ + LR11XX_SYSTEM_IRQ_CAD_DONE | LR11XX_SYSTEM_IRQ_CAD_DETECTED, 0); }