C

Getting Started on Infineon/Cypress

This topic helps you setup the development environment for Infineon/Cypress boards.

Qt for MCUs is an Infineon Certified HMI Tool.

Configure the in Qt Creator IDE

To develop for MCUs using the Qt Creator IDE, the MCU plugin is required. Qt Online Installer enables it by default when you install the Qt for MCUs SDK.

To enable or disable the plugin, follow these instructions:

  1. Select Help > About Plugins and choose the MCU Support plugin from the list.
  2. Restart Qt Creator to apply changes

To build and run your application on MCUs, you must create a kit:

  1. Select Edit > Preferences > Devices > MCU
  2. If not already set, provide the path to the Qt for MCUs installation directory.
  3. Select a Target supported by the Qt for MCUs SDK. For example, Qt for MCUs 2.5.4 - Desktop 32bpp.
  4. In the Requirements section, ensure that the platform-specific requirements are met.
  5. Select Automatically create kits for all available targets on start to create kits automatically.

    Note: You could also manually create/remove kits using Create Kit and Remove Kit.

  6. Click Apply and restart Qt Creator if you choose to create kits automatically.

Note: The Automatically create kits for all available targets on start option is available from Qt Creator v4.14 onwards. On older versions of Qt Creator, you have to explictly create or remove kits using Create kit or Remove kit.

You could also set up the development environment from the command prompt. See Command-line Setup for Infineon/Cypress Boards for more information.

Building applications with prebuilt Qt Quick Ultralite libraries

Open the CMake project file for the example you want to build and configure it with the kit you created earlier. Once the project is configured, select Run or press Ctrl+r on your keyboard to build and flash the binary to the target.

Note: Flashing using Qt Creator will only work with a MiniProg4 debug probe.

Debugging using GDB

For debugging, GHS probe, J-Link Ultra+ probe, and Miniprog4 are known to work and are recommended. Other debuggers might work, please check with Infineon or the tool vendor.

Note: The GDB backtrace might be inaccurate or incomplete when using the Green Hills compiler.

Requirements

Debugging with GDB requires the GNU Arm GCC 10.3-2021.10 Toolchain. It can be downloaded from GNU Arm Embedded Toolchain Downloads.

Compilation

Make sure to use -DCMAKE_BUILD_TYPE=Debug when configuring, in order for the built executable to get the necessary DWARF2 debug table.

Starting the GDB server

Set the INFINEON_AUTO_FLASH_UTILITY_DIR environment variable

Set INFINEON_AUTO_FLASH_UTILITY_DIR as shown below, with the path adjusted to the correct location for your machine:

set INFINEON_AUTO_FLASH_UTILITY_DIR="C:\Program Files (x86)\Infineon\Auto Flash Utility 1.2"

With the MiniProg4 probe:

With the MiniProg4 probe connected, execute the following command:

%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/kitprog3.cfg -c "transport select swd" -f target/traveo2_c2d_4m.cfg
%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/kitprog3.cfg -c "transport select swd" -f target/traveo2_6m.cfg

Connect the J-Link probe to the J-Tag socket on the board and execute the following command:

Cores available for debugging

OpenOCD is now connected to the MCU and is waiting for GDB connections. If you look into the terminal output, you will find several ports that you can connect to. The first is the CM0+ (Cortex-M0+) core, and the remaining are CM7 (Cortex-M7) cores (one on Traveo II 4M and two on Traveo II 6M). When you connect to the GDB server using GDB, choose the port corresponding to the core you want to debug.

Qt for MCUs by default uses CM0+ for the bootloader, and the first CM7 core for the application.

Connecting with GDB

Now you can connect to the GDB server and step through instructions.

Set the ARMGCC_DIR environment variable

Set ARMGCC_DIR as shown below, with the path adjusted to the correct location for your machine:

set ARMGCC_DIR="C:\Qt\Tools\QtMCUs\arm_gcc_10\bin"

With the MiniProg4 probe:

%ARMGCC_DIR%\arm-none-eabi-gdb.exe C:/path/to/binary/application.elf -ex "target remote localhost:3334"
(gdb) monitor reset
(gdb) continue

Note: As these boards are based on ARM big.LITTLE CPU architecture, make sure you use the monitor traveo2 reset_halt command to restart.

%ARMGCC_DIR%\arm-none-eabi-gdb.exe C:/path/to/binary/application.elf -ex "target remote localhost:3334"
(gdb) monitor traveo2 reset_halt sysresetreq
(gdb) continue

Board-specific information

HardwareBoardCompilerOperating System(s)
Traveo IITVIIC2D4M and TVIIC2D6MIAR Functional Safety Build Tools for Arm V8.22.3 and Green Hills MULTI Compiler for Embedded ARM 2019.5Bare Metal

Available under certain Qt licenses.
Find out more.