Skip to content

qualcomm/qcom-test-automation-controller

Qualcomm Test Automation Controller (QTAC)

CMake Build

Table of Contents

Introduction

QTAC is a software suite that enables users to control Qualcomm devices remotely via a Qualcomm approved debug board connected to a host.

What You Get

Application Description
Test Automation Controller (TAC) Control Qualcomm devices remotely using UI
TAC Configuration Editor Design configurable TAC UI based on GPIO use-cases
Device Catalog Program debug board and view supported Qualcomm platforms
Command-line utilities DevList, FTDICheck, LITEProgrammer, PSOCProgrammer, TACDump, UpdateDeviceList

QTAC UI Overview

Hardware Requirements

Required Hardware:

  • Qualcomm approved debug board (FTDI, Cypress PSoC5LP or Microchip PIC32CX SG41-based)
  • Qualcomm device to be controlled
  • USB Cables: Type B Micro-USB (Board to Host) & Type-C (Device to Host)

Setup: Connect the device to the debug board (directly or via cable strip) and both to the host.

Important

PSOC debug boards must be factory-programmed with firmware. If the board isn't recognized, it likely lacks programming.

QTAC Hardware Software Setup

Common Prerequisites

Development Tools

Category Software Minimum Version
OS Windows / Debian Windows 10+ / Ubuntu 22.04+
Compiler MSVC 2022 / GCC MSVC 2022 / GCC-11, G++-11, GLIBC-2.35
UI Framework Qt Open-source 6.9.0+

Note

Review license terms for Visual Studio and Qt. MSVC 2022 is linked as Qt doesn't support MSVC 2026 yet.

Drivers

Note

FTDI libraries are installed automatically during the cmake configuration step when building from source.

Optional Software

QTAC allows you to view streaming device logs as you transition the device between different states. The debug logs are streamed over USB serial interface(s).

To view these logs, you may install Putty or similar terminal software. QTAC does not depend on or use this software.

Clone Repository

git clone https://github.com/qualcomm/qcom-test-automation-controller.git

Windows Guide

Configuration

  1. Visual Studio: Install Desktop development with C++ and .NET desktop development. Desktop development with C++
  2. Qt: Install Qt 6.9+ for MSVC 2022 64-bit, Qt Serial Port and Qt Multimedia components.

Note

Installation using Qt Online Installer will require users to create a Qt account.

  1. Environment Variable:
    setx QTBIN C:\Qt\<version>\msvc2022_64\bin

Build & Usage

Execute build.bat to generate executables:

build.bat

Build output:

  • Debug: __Builds\x64\Debug
  • Release: __Builds\x64\Release

Usage:

__Builds\x64\Release\QTAC.exe

Linux Guide

Configuration

Important

  • Installation using Qt Online Installer will require users to create a Qt account.
  • If you're frequently working with Qt on Linux, consider adding the environment variables to .bashrc.
  • Using sudo apt install <package> will update setup packages. Review command usage to prevent issues with other applications.
  1. Qt Installation (choose one):

    Option A: Qt Online Installer

    Option B: Quick Installation via apt

    sudo apt install qt6-base-dev qt6-serialport-dev
  2. Runtime Dependencies:

    sudo apt install libxcb-cursor0 libpcre2-16-0 libxkbcommon-x11-0 libxcb-xkb1 libxcb-icccm4 libxcb-shape0 libxcb-keysyms1 libgl1 libegl-dev libxcb-xinerama0 libpulse-dev
  3. Environment Variable:

    export QTBIN=/path/to/Qt/directory/<version>/gcc_64/bin

Build & Usage

Execute build.sh to generate executables:

./build.sh

Build output:

  • Debug: __Builds/x64/Debug
  • Release: __Builds/x64/Release

Note

Ensure that make is available in your environment before building.

Usage:

./__Builds/x64/Release/QTAC

Repository Structure

Directory Content
.github CI/CD build pipelines
configurations Platform-specific pin configurations
docs Documentation and guides
examples Device-control automation scripts
interfaces APIs for C++, Python, C#, and Java
src Source files (Applications & Libraries)
third-party External dependency scripts

Application Dependency Architecture

App dependency

Advanced Topics

Support & Contributing

About

Perform power off, power on, EDL, UEFI and more on Qualcomm devices remotely using debug board

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors