← All Radxa Dragon Q8B fixes Fix Guide

How to Fix Wi-Fi / Bluetooth Module Not Detected on the Radxa Dragon Q8B

💻 Device: Radxa Dragon Q8B 🗓 Added

Causes

  • The M.2 E-Key slot is not wired the way other boards' slots are — The Dragon Q8B's M.2 E-Key 2230 slot is a PCIe Gen3 x1 interface, not an SDIO interface. Radxa confirmed in the community forum that the E-Key slot does not support SDIO-based wireless cards. If you install a Wi-Fi module that communicates over SDIO (common on older/cheaper combo cards), the Q8B simply never sees it — no amount of driver installation will help because the bus itself isn't there.
  • Kernel device-tree support for the E-Key connector was added after launch — Early Dragon Q8B kernel builds did not include a device-tree node for the M.2 E-Key connector, so even a correct PCIe-based module (like the Qualcomm NCM865A Wi-Fi 7 card) was not detected. Radxa's kernel fix (pull request #585, "Add M.2 E-key connector") added the connector node plus UART Bluetooth support for the NCM865A, and it was explicitly "Tested on Radxa Dragon Q8B." Boards running the factory image from the first weeks of the Q8B launch predate this support.
  • Wi-Fi 7 over the E-Key requires motherboard version V1.3 or later — The Q8B product page carries a specific hardware note: "Wi-Fi 7 support via the E Key interface requires motherboard version V1.3 or later." On earlier motherboard revisions the E-Key slot may only carry the PCIe lines without the additional signals Wi-Fi 7 modules need, so the card powers up but never associates, or isn't enumerated at all. The current reference hardware design (Component Placement / Schematic) is V1.30.
  • Missing or stale Qualcomm firmware/QUP firmware on the system — Radxa's kernel work also added QUP (Qualcomm Universal Peripheral) firmware for the Dragon Q8B (pull request #579). The Bluetooth side of a combo card depends on QUP serial firmware and the WLAN firmware loaded at boot. On older images where these firmware blobs are absent or mismatched with the kernel, the module shows up in lspci but Bluetooth fails to start and the Wi-Fi interface never appears.
  • Hardware-level issues: loose seating, damaged pins, or an incompatible card — A 2230 module that isn't fully seated in the E-Key slot, a card with a different keying (A+E vs E), a damaged connector, or a module that draws more power than the slot provides will all result in the card not being detected. Unlike a laptop, an SBC slot is easy to half-seat when installing the retaining screw first or when the module is inserted at an angle.

How to Fix

  1. Confirm the module is actually undetected at the bus level — Log in over Ethernet, USB-C, or serial (default credentials radxa / radxa) and check lspci for your card (the NCM865A appears as a Qualcomm/Netcomm wireless controller). Also run lsusb — the Bluetooth function of a combo card is typically a USB device — and ip link to list network interfaces. If the card doesn't appear in lspci at all, the slot is not enumerating it (see steps 2 and 4). If it appears in lspci but there's no wlan0 and no Bluetooth, it's a firmware/driver issue (steps 3 and 5).
  2. Verify the module type and seating — Power off and remove the card from the M.2 E-Key 2230 slot. Confirm the card is E-keyed (or A+E keyed) and PCIe-based — the Q8B slot does not support SDIO cards, which is the most common "module not detected" cause on this board. Reinsert the card fully, at a shallow angle, until the gold fingers are completely hidden, then secure it with the screw. Power on and re-run lspci.
  3. Update the kernel with rsetup — Run sudo rsetupSystem → System Update to pull the current Radxa kernel, which includes the M.2 E-Key connector device-tree node and QUP firmware support from the Dragon Q8B kernel patches (avoid bare apt update && apt upgrade, which Radxa warns can leave the system broken). Reboot, then check lspci / ip link again — this resolves detection for the NCM865A and other supported PCIe cards on boards that shipped with early images.
  4. Check the motherboard revision for Wi-Fi 7 — Inspect the silkscreen on the board for the hardware revision (the reference design is V1.30). If your board is older than V1.3 and you're using a Wi-Fi 7 module, the slot may not carry the required signals — try a Wi-Fi 6E module instead, which works over the same PCIe/USB lines and does not require the V1.3-specific wiring. If your board is V1.3+ and the Wi-Fi 7 card still isn't detected, move on to the firmware checks.
  5. Reinstall/update the wireless firmware blobs — If the card enumerates but has no working interface, refresh the firmware: sudo rsetupSystem → Update Bootloader (updates the bootloader/firmware set), and check that the WLAN and QUP firmware files are present under /lib/firmware/qcom/sc8280xp/. For the NCM865A specifically, make sure the kernel has the ath11k driver support and that the card's firmware files exist (dmesg | grep -i ath11k shows which file it's looking for). Reboot after any firmware change.
  6. Test the module in another system and the slot with another card — To isolate hardware from software: install the module in a laptop or another M.2 E-Key slot to confirm the card itself works, and try a different known-good E-Key PCIe card (e.g., a Wi-Fi 6E module) in the Q8B. If the card works elsewhere but not in the Q8B, or no card is detected in the Q8B's slot, the slot or its wiring is faulty.
  7. Contact Radxa support with bus-level diagnostics — If a correct PCIe module is fully seated, the kernel is current, and lspci still shows nothing, open a thread in the Dragon Q8B section of the Radxa forum (forum.radxa.com) with the output of lspci -nn, lsusb, dmesg | grep -iE "wifi|wlan|bluetooth|pcie", your board revision, and the module model. Radxa engineers triage Dragon-series reports actively and can confirm slot compatibility or arrange service for a faulty connector under warranty.