UART AT Commands w/ QCA4020 Dev Kit

Skill LevelArea of FocusOperating SystemPlatform/Hardware
BeginnerBluetooth, Education, Embedded, IoT, Smart HomeRTOSQCA 402x WiFi/BLE/ZigBee

This project is designed to get you familiar with the QCA4020 System-On-Chip (SoC) Product Development kit. The QCA4020 IoT solution offers Wi-Fi, Bluetooth low energy (BLE), and 802.15.4 capable radios in a single-chip package.

“QCLI_uart_at_demo” is a demo application that provides the AT commands for exercising the functionality of the board and provides the capability for a MCU with low memory foot print to use QCA402x modules over UART interface with standard AT commands defined for the modules.

The objective of this demo is to learn how AT commands can be used to communicate with the QCA402x chipset that is loaded with the AT Command firmware and connected to host via a serial interface. These commands are designed to provide access to the capabilities of the QCA402x chipset to an external host over a serial interface. This offloads BLE, Zigbee, WLAN & TCP/IP (in QCA4020) and network management overhead to the QCA402x chipset and facilitates a small embedded host, based on microcontrollers like 8051, PIC, MSP430, AVR, etc., that have a serial interface, to communicate with other hosts on the network using the available radio technologies. These serial hosts use a simple command interface to configure and create the wireless and network connections.

In the Box

Contents of the QCA4020 Development Kit

The contents of the QCA4020 Development kit, as seen above, include:

  • QCA4020 development board
  • USB to Micro USB cables
  • Power supply
  • Jumpers
  • Setup guide

If this is your first time using the QCA4020 Development kit, we recommend you install the software components and set up the development environment on your computer by following the detailed instructions listed in the “Hello World with QCA4020 Development Kit” project. Following instructions listed in the Hello World project will include these steps:

  1. Setup the development environment.
  2. Import sample “QCLI_uart_at_demo” application. Example: <path>/target/quartz/demo/QCLI_uart_at_demo
  3. Build the application.
  4. Flash the Application on the QCA4020 development board using JTAG and Eclipse.

Run the application in Autoboot mode

The Autoboot mode refers to the mode where the system boots up on a power cycle and no JTAG connectivity is required. Follow the below steps to run the application in Autoboot mode.

  1. Remove the jumper on J31.
    This was connected to flash the image on the board.
  2. Power cycle the system.

Once the board powers up, open a serial console on your host PC.

Connect it to the com port number assigned to the USB-serial connection with the following settings.

  1. Baud Rate: 115200
  2. Data Bits: 8
  3. Parity: None
  4. Stop bit: 1
  5. Flow Control: None

You will see the Console and the QCA4020 Board will be ready to accept AT Commands.

AT Commands menu for UART demo on QCA4020 Development Kit

Below are a few handy pointers to keep in mind while getting used to the AT Command Setup.

  • Wi-Fi related commands begin with the “ATW” prefix
  • Wireless P2P related commands begin with the “ATP2P” prefix
  • Network related commands begin with the “ATN” prefix
  • MQTT related commands begin with the “ATMQTT” prefix
  • OTA related commands begin with the “ATOTA” prefix
  • BLE related commands begin with the “ATBLE” prefix
  • Zigbee related commands begin with the “ATZB” prefix
  • Thread related commands begin with the “ATTH” prefix

Please refer to the QCA4020 Development Kit User’s Guide for full list of AT commands supported by the demo.