Communicating Between the Qualcomm® QCA4020/4024 Platform and Smart Home Devices

QCA4020 Development Board Application

The QCA4020/4024 Platform is capable of connecting to more than one device over BLE at a time. To demonstrate its potential, we provide a Home Control prototype consisting of a Home Automation Android Application that communicates with the QCA4020 Development Board Application running on the board. Together, the software and hardware can lock and unlock doors, detect smoke in the home and control electronic devices like light bulbs.

The QCA4020 Development Board Application connects the Home Automation Android Application (running on the mobile phone) to the board over BLE to control the devices. The smoke detector and smart lock are connected directly to the QCA402x board using GPIO for monitoring and control by the Home Automation Android Application.

  • The smoke detector monitors smoke and transmits sensor data to the board, which sends it to the mobile phone over BLE in a regular interval.
  • The smart lock is wirelessly controlled by the Home Automation Android Application to lock and unlock.
  • The BLE bulb is turned on and off by the application. It can also be controlled independently from the application.

How do the devices connect with the board?

During communication between the board and the mobile phone, the QCA402x board is acting as a Slave, advertising itself to get scanned by the phone. The Home Automation Android Application acts as a Master looking for a QCA402x board to connect to.

Similarly, the QCA402x board will be a Master and the BLE bulb is the slave. In the QCA4020 Development Board Application, the QCA402x board is programmed such that it is scanned for the BLE bulb; if the BLE bulb is available, then it will be connected to the board in the background. Once connected, the board turns on the bulb and the user sees that the connection has been made.


Flow of BLE communication among the Home Automation Android Application, the QCA402x board and the smart home devices

Implementation

On the board, separate characteristics are created for the devices to control them over BLE. The properties given to the devices are shown below according to function:

Smart Lock

This electromechanical device is designed to perform locking and unlocking operations on a door according to instructions from an authorized device using a wireless protocol (here, BLE).

BLE properties set: READ and WRITE.

  • READ property is for getting the status of the device.
  • WRITE property is for controlling the device.

Smoke Detector

This device senses smoke, typically as an indicator of fire.

BLE properties set: NOTIFY

  • NOTIFY property notifies about any smoke sensed at a regular interval.

The QCA4020 Development Board Application uses the values from the sensor to plot a graph over time for the user. (The Home Automation Android Application stores data from this smoke detector for the most recent hour.)

Smart Bulb

With the integration of Wi-Fi, Bluetooth, ZigBee or a proprietary connection for a home automation systems, smart bulbs can be controlled through a mobile app or a home/building automation hub. Individual bulbs can be programmed to change output in a specific manner.

BLE properties set: READ, WRITE and NOTIFY.

  • READ property reads the state of the bulb.
  • WRITE property is for the turning the bulb on and off.
  • NOTIFY property updates the Home Automation Android Application about the bulb state, should the bulb malfunction or become disconnected.