# 280 SDK Development Environment Setup
## STMicroelectronics Development Tools
List of STMicroelectronics Tools and versions required:
|Tool Name|Version|Description|
|-|-|-|
|STM32CubeIDE|1.18.1| Integrated Development Environment|
|GNU Tools for STM32|13.3.rel|GNU Toolchain/Compiler for ST-SDK|
|STM32CubeMX|6.14.1|Graphical tool for microcontrollers & libraries configuration|
|STM32CubeProgrammer|>2.19.0|Software tool for programming STM32 products|
|ST-LINK Utility|2.1.1-2|Utility connecting to the STM32 microcontroller via an ST-LINK debugger|
|TouchGFX|4.25|Graphical user interface (GUI) software for STM32 microcontrollers.
**Note:** Only required for 280 ST-SDK version|
|Qt for MCU|2.11|Qt Graphical user interface (GUI) software for microcontrollers (including the STM32H7).
**Note:** Only required for 280 Qt-SDK version|
---
## STM32CubeIDE (Integration Development Enviroment)
The STM32CubeIDE provides an integrated development environment combining code editing, configuration, compilation, and debugging tools, streamlining the development workflow for embedded engineers.
### 1. Download STM32CubeIDE
v1.18.1 Installation and Toolchain Setup (Windows)
1. Visit the STM32CubeIDE download page
1. Log in or create an ST account
1. Select **Windows** as your operating system
1. Choose version **1.18.1** from the version dropdown
1. Download the **.exe** installer
### 2. Install STM32CubeIDE
1. Run the downloaded **.exe** installer as Administrator
1. Accept the license agreement
1. Choose a short installation path (e.g., **C:\ST\STM32CubeIDE**) to avoid Windows path length issues
1. Select optional components (e.g., ST-Link Server, GDB Server)
1. Click **Install**, then **Next**, and finally **Finish**
### 3. Install GNU Tools for STM32
The GNU Tools for STM32 toolchain ensures compatibility with open-source standards and offers flexibility for cross-platform development; these are commonly used for STM32 microcontrollers, though the generic ARM toolchain can also be used.
#### 3.1. Toolchain for 280 ST-SDK
**Only required for 280 ST-SDK version**
1. Open STM32CubeIDE
1. Navigate to: **Window > Preferences > STM32Cube > Toolchain Manager**
1. The tool will automatically fetch a 'Toolchain List', wait to complete (network connection speed dependent)
1. Select GNU Tools for STM32 (13.3.rel1)
1. Set it as the default toolchain by selecting it and clicking **Set as Default**
1. For each project:
1. Right-click the project > **Properties**
1. Go to **C/C++ Build > Settings**
1. Under **Toolchain Version**, select **Fixed** and choose the newly added toolchain
#### 3.2. Toolchain for 280 Qt-SDK
**Only required for 280 Qt-SDK version**
1. Visit the following ARM GNU Toolchain page: arm-gnu-toolchain
1. Find and expand section **12.3.Rel1 July 28, 2023**, and download and install: **arm-gnu-toolchain-12.3.rel1-mingw-w64-i686-arm-none-eabi.exe** for Windows.
1. This ARM GNU Toolchain installation should be available at the followign path: **C:\Program Files (x86)\Arm GNU Toolchain arm-none-eabi\12.3 rel1\bin**, copy this path, will be needed in a later step.
1. Open STM32CubeIDE and navigate to: **Window > Preferences > STM32Cube > Toolchain Manager**.
1. The tool will automatically start fetching a 'Toolchain List', no need to wait, just select 'Add Local'.
1. Name it **arm_gcc_12.3.1**, keep the prefix and in **Location**, paste the copied path from step 3, and finish.
1. The Local Compiler will be added to the list in Toolchain Manager, set it as **"Default"**, **Apply and Close**.
### 4. STM32CubeIDE User Manual
For detailed guidance on using STM32CubeIDE, including project setup, debugging, and integration with STM32CubeMX, please consult the official user manual provided by STMicroelectronics:
>- STM32CubeIDE User Manual (UM2609)
This manual offers comprehensive instructions and illustrations to support each development step.
---
## Installing STMicrolectronic Utilities
*Optional*
### 1. Download STM32CubeMX
1. Go to the STM32CubeMX official page
1. Log in or create an ST account
1. Click **Get Software**
1. Select version **6.14.1** from the list of available versions
1. Download the Windows installer (e.g., **SetupSTM32CubeMX-6.14.1.exe**)
#### 1.1. Install STM32CubeMX
1. Run the installer **.exe** file
1. If Java is not installed, the installer will prompt an error
1. After confirming Java is installed:
1. Click **Next**
1. Accept the license agreement
1. Choose installation options (e.g., shortcut, user experience program)
1. Select installation path (e.g., **C:\ST\STM32CubeMX**)
1. Click **Install**
1. After installation, launch STM32CubeMX from the Start Menu or desktop shortcut
#### 1.2. Install HAL Libraries for STM32H743
1. Open STM32CubeMX
1. Navigate to: **Help > Manage embedded software packages**
1. Click **Refresh** to update the package list
1. Under the **STMicroelectronics** tab, locate **STM32H7 Series**
1. Expand the node and find **STM32H743**
1. Check the box for **STM32H743 HAL Drivers**
1. Click **Install Now** and accept the license agreement
### 2. Install STM32CubeProgrammer
1. Download from the STM32CubeProgrammer page
1. Extract the **.zip** file
1. Run the **.exe** installer
1. Install to the default location:
- ```
C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer
```
### 3. Install ST-LINK Utility
1. Download from the ST-LINK Utility page
1. Run the **.exe** installer
1. Install to the default location:
- ```
C:\Program Files (x86)\STMicroelectronics\STM32 ST-LINK Utility
```
---
## TouchGFX GUI Framework
*Only required for 280 ST-SDK version*
TouchGFX, ST's dedicated GUI framework, enables the creation of modern, touch-enabled interfaces optimized for STM32 MCUs. With its hardware acceleration support and efficient memory management, TouchGFX allows developers to build visually appealing and responsive UIs tailored to the rugged and functional needs of Off-Highway equipment.
### 1. Prerequisites
Before installing TouchGFX Designer, ensure the following tools are installed:
1. **STM32CubeIDE v1.18.1**
1. **STM32CubeMX**
1. **STM32CubeProgrammer**
1. **ST-LINK Utility**
These tools are required for GUI development, MCU configuration, and flashing firmware to STM32 boards.
### 2. Download TouchGFX 4.25
1. Visit the TouchGFX Documentation Installation Page
1. Alternatively, download the **X-CUBE-TOUCHGFX** package directly from ST’s website or via STM32CubeMX:
1. Open STM32CubeMX
1. Go to **Help > Manage Embedded Software Packages** (or press **Alt + U**)
1. Click **Refresh**
1. Under the **STMicroelectronics** tab, find and expand **X-CUBE-TOUCHGFX**
1. Check **TouchGFX Generator** and click **Install Now**
1. Accept the license agreement and click **Finish**, the package will be installed at the following location:
- ```
C:\Users\STM32Cube\Repository\Packs\STMicroelectronics\X-CUBE-TOUCHGFX\4.25.0\
```
### 3. Install TouchGFX Designer
1. Navigate to the following path:
- ```
C:\Users\STM32Cube\Repository\Packs\STMicroelectronics\X-CUBE-TOUCHGFX\4.25.0\Utilities\PC_Software\TouchGFXDesigner
```
1. Double-click the **.msi** installer file
1. Follow the setup wizard:
1. Accept the license agreement
1. Choose the installation directory
1. Complete the installation
### 4. Verify Installation
1. Launch **TouchGFX Designer**
1. Confirm version **4.25.0** is displayed
1. Ensure STM32CubeProgrammer and ST-LINK Utility are detected under settings
### 5. TouchGFX Documentation Hub
For comprehensive information on using TouchGFX, including GUI development, widget configuration, and integration with STM32CubeIDE, please consult the official documentation provided by STMicroelectronics:
1. TouchGFX Documentation Hub
1. TouchGFX Technical Introduction (PDF Manual)
This resource includes detailed guides, tutorials, and technical references to support each step of your graphical interface development.
You're now ready to start developing with the **280 ST-SDK**.
---
## Qt for MCUs 2.11
*Only required for 280 Qt-SDK version*
Qt for MCUs is a commercial-only framework that enables developers to build modern, touch-enabled graphical user interfaces (GUIs) on microcontrollers. It brings the power of Qt Quick (QML) to constrained environments by using a custom rendering engine that does not require a full OS or GPU.
### 1. Prerequisites
1. Qt Account
1. Qt for MCUs License (commercial or trial)
1. GNU Arm Embedded Toolchain 12.3.Rel1 (Jul 28, 2023)
- Arm GNU Toolchain Downloads
1. Qt Online Installer
### 2. Install Qt for MCUs
1. Launch Qt Online Installer
1. Log in with your Qt account
1. Select Qt for MCUs 2.11.1 and STM32H743 target
1. Complete installation
### 3. Configure Qt Creator
1. Open Qt Creator
1. Go to **Edit > Preferences > Devices > MCU**
1. If missing, enable **McuSupport** plugin via **Help > About Plugins**
1. Set Qt for MCUs path and target board
1. Create or auto-generate kits
### 4. Set Environment Variables
1. set QUL_ROOT=C:\Qt\QtMCUs\2.11.1
1. set QUL_TOOLS=C:\Qt\Tools\QtMCUs
### 5. Verify Installation
1. Open Qt Creator
1. Go to Help > About Plugins
1. Ensure McuSupport plugin is enabled
1. Restart Qt Creator if you made changes
1. Go to Edit > Preferences > Kits
1. Confirm a kit exists for
1. Qt for MCUs 2.1
1. STM32H743-based boar
1. GNU Arm Embedded Toolchain 12.3.
You're now ready to start developing with the **280 Qt-SDK**.