# 280 SDK Platform Services The **280 ST/QT-SDK** includes configurable **280 Platform Services** designed to support the target application. These services form part of the SDK’s middle layer, positioned above the MCAL layer, as shown in the diagram below: ![SDK Platform Services](/content/images/SDK_PlatformServices.png) --- ## Configuration Overview All *Platform Services* configuration options are defined in the *280_Config.h* header file, located under the *user_modify_files* folder within the SDK project structure: ``` 280_st/qt_sdk_xxx ¦ +---Core ¦ +---Drivers ¦ +---Middlewares ¦ +---tools ¦ +---TouchGFX ¦ +---user_modify_files ¦ ¦ 280_Config.h <------ 280 Platform Services configurations ¦ ¦ CANOPENData_Layer.h ¦ ¦ EE_PH_DB.h ¦ ¦ EE_User_define.h ¦ ¦ gen_define.h ¦ ¦ gen_pgn.c ¦ ¦ J1939Data_Layer.h ¦ ¦ j1939_datatype.h ¦ ¦ User_Define.h ¦ ¦ user_task.c ``` ### Purpose of the Configuration File The *280_Config.h* file allows developers to customize display-related settings for their specific application requirements. Examples of configurable parameters include: 1. Input selection and mapping 1. Display type and resolution 1. Sampling rate 1. Debouncing options These settings apply regardless of whether you are using 280 ST-SDK or 280 QT-SDK. >**Note**: *The configuration file only affects Platform Services. Customization of display screens, navigation, and overall look and feel should be performed using TouchGFX (for ST-SDK) or Qt Creator (for QT-SDK).* ### Applying Configuration Changes To apply updates to the Platform Services configuration: 1. Rebuild the SDK project using STM32CubeIDE. 1. Reprogram the target unit with the newly built firmware. --- ### Top Level Configuration Options The following table lists the primary **280 Platform Configuration** options: |Platform Configuration Name|Description| |-|-| |SDK_SERVICE_KEYPAD|Enables individual buttons-keys and overall keypad backlighting. Configures short-press timing with 10 ms resolution.| |SDK_SERVICE_RTC|Enables the battery-backed Real-Time Clock for date and time tracking.| |SDK_SERVICE_DIGITAL_OUTPUT|Configures each digital output as High-Side, Low-Side, or Open Driver. Also sets output update resolution in 100 ms increments.| |SDK_SERVICE_LED|Provides configuration for platform LEDs (Red and Amber), including blinking rate.| |SDK_SERVICE_CFG_INPUT|Enables and configures display analog inputs to read voltage, current, resistance, or frequency signals.| |SDK_SERVICE_LCD|Allows configuring TFT LCD backlight settings.| |SDK_SERVICE_PM|Power management and standby configuration.| |SDK_SERVICE_WATCHDOG|Watchdog timer configuration.| |SDK_SERVICE_POWER_MONITOR|Power monitoring configuration.| |SDK_SERVICE_EEPROM|Configures NVM data size and update rate.| |SDK_SERVICE_SWTIMER|Software timer configuration.| |SDK_SERVICE_CANOPEN|Enables and maps the CiA 301 CANopen protocol stack to the CAN channel.

**Note:** Only one CAN Protocol stack can be mapped to the CAN channel.| |SDK_SERVICE_J1939|Enables and maps the SAE J1939 protocol stack to the CAN channel.

**Note:** Only one CAN Protocol stack can be mapped to the CAN channel.| >**Note**: *Additional detailed configuration options, including dependencies on these top-level settings, are available in **280_Config.h**.*