> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# WiFi and Bluetooth

The Qualcomm Dragonwing IQ-8275 EVK features integrated Wi-Fi and Bluetooth connectivity via the **NFA765A** module (WCN6856 NSP288 chip) over an M.2 interface.

## Specifications

### Wi-Fi

| Feature           | Specification                                  |
| ----------------- | ---------------------------------------------- |
| **Standard**      | Wi-Fi 6E (802.11ax)                            |
| **Bands**         | 2.4 GHz, 5 GHz, 6 GHz (tri-band)               |
| **Peak PHY Rate** | 2.9 Gbps with 1K QAM                           |
| **Operation**     | Dual Band Simultaneous (DBS), STA and AP modes |
| **Driver**        | ath11k                                         |

### Bluetooth

| Feature        | Specification                     |
| -------------- | --------------------------------- |
| **Standard**   | Bluetooth Core Specification v5.2 |
| **BLE Speed**  | Up to 2 Mbps                      |
| **Long Range** | 500 Kbps and 125 Kbps             |
| **Stack**      | BlueZ                             |

## Hardware Setup

<Steps>
  <Step title="Install Wi-Fi Module">
    Insert the NFA765A module into the M.2 slot at a 30-degree angle, press flat, and secure with the provided screw.
  </Step>

  <Step title="Connect Antennas">
    * **ANT0 (2.4G)** — shared between Wi-Fi and Bluetooth
    * **ANT1 (5G/6G)** — Wi-Fi 5 GHz and 6 GHz only
  </Step>

  <Step title="Connect UART Debug Cable">
    Connect the UART cable to the debug port and note the assigned COM port or `/dev/ttyUSB` device.
  </Step>

  <Step title="Connect Power and Boot">
    Power on and observe the boot sequence via UART console. Default login: `ubuntu` / `ubuntu`.
  </Step>
</Steps>

## Verify Components

### Wi-Fi

```bash theme={null}
lsmod | grep ath11k
iw dev
ls -la /lib/firmware/ath11k/
```

### Bluetooth

```bash theme={null}
sudo lsmod | grep bt
hciconfig
ls -la /lib/firmware/qca/
systemctl status bluetooth
```

## Wi-Fi Configuration

### Station Mode

```bash theme={null}
nmcli dev wifi list
nmcli dev wifi connect <SSID> password <password>
nmcli general status
ifconfig wlp1s0
ping 8.8.8.8
```

### Set MAC Address (Optional)

<Warning>
  The manually set MAC address persists only until the next reboot, then reverts to the factory OTP address.
</Warning>

```bash theme={null}
ifconfig wlp1s0 down
ifconfig wlp1s0 hw ether XX:XX:XX:XX:XX:XX
ifconfig wlp1s0 up
```

### Hotspot Mode

<Steps>
  <Step title="Add SoftAP interface">
    ```bash theme={null}
    iw dev wlp1s0 interface add wlp1s0 type managed
    ```
  </Step>

  <Step title="Configure and start hostapd">
    ```bash theme={null}
    hostapd -B /etc/hostapd.conf
    ```
  </Step>

  <Step title="Start DHCP server">
    ```bash theme={null}
    brctl addbr br0
    brctl addif br0 wlp1s0
    ifconfig br0 192.168.225.1 netmask 255.255.255.0 up
    dnsmasq --conf-file=/etc/dnsmasq.conf \
      --dhcp-range=br0,192.168.225.20,192.168.225.60,255.255.255.0,43200
    ```
  </Step>
</Steps>

**Stop hotspot:**

```bash theme={null}
killall hostapd
ifconfig wlp1s0 down
rm -rf /var/run/hostapd/wlp1s0
```

## Bluetooth Configuration

### Set Bluetooth MAC Address (Optional)

<Warning>
  A manually set Bluetooth MAC address does not persist across reboots.
</Warning>

```bash theme={null}
hciconfig hci0 down
btmgmt public-addr 22:22:9B:2C:79:1E
hciconfig
```

### GAP Operations

```bash theme={null}
bluetoothctl
power on
scan on
pair F8:7D:76:9D:9B:6B
devices
discoverable on
power off
```

### Supported Bluetooth Profiles

| Profile | Role                   | Version |
| ------- | ---------------------- | ------- |
| GAP     | Central and Peripheral | —       |
| SPP     | Client and Server      | v1.2    |
| GATT    | Central and Peripheral | —       |
| OPP     | Client and Server      | v1.2    |
| FTP     | Client and Server      | v1.2    |
| PBAP    | Client and Server      | v1.1    |
| MAP     | Client and Server      | v1.2    |

<Note>
  A2DP, AVRCP, and HFP are supported on WCN6750/WCN6856.
</Note>

## Debugging

```bash theme={null}
# Wi-Fi
echo "module ath11k +p" > /sys/kernel/debug/dynamic_debug/control
dmesg > /tmp/dmesg.txt

# Bluetooth
echo "module bluetooth +p" > /sys/kernel/debug/dynamic_debug/control
echo "module btqca +p" > /sys/kernel/debug/dynamic_debug/control
dmesg > /tmp/bt_dmesg.txt
```

## Troubleshooting

<AccordionGroup>
  <Accordion title="wlp1s0 Interface Not Found">
    ```bash theme={null}
    dmesg | grep ath11k
    ls /lib/firmware/ath11k/
    ```
  </Accordion>

  <Accordion title="Cannot Connect to AP">
    Verify SSID and password; check AP security settings.
  </Accordion>

  <Accordion title="Bluetooth Not Powering On">
    ```bash theme={null}
    dmesg | grep -i bluetooth
    ls /lib/firmware/qca/
    ```
  </Accordion>

  <Accordion title="Pairing Fails">
    Ensure both devices confirm the same passkey; retry pairing.
  </Accordion>

  <Accordion title="Audio Profile Not Working">
    A2DP and HFP require WCN6750/WCN6856 — verify profile support.
  </Accordion>
</AccordionGroup>

## Resources

* [Wi-Fi Alliance](https://www.wi-fi.org/certification)
* [Bluetooth SIG](https://www.bluetooth.com/specifications/)
* [Linux Wireless](https://wireless.wiki.kernel.org/)
* [ath11k](https://wireless.wiki.kernel.org/en/users/drivers/ath11k)
* [hostapd Documentation](https://w1.fi/cgit/hostap/plain/hostapd/README)
