Generation of RTE_Components.h

Hi, I’m currently developping a some automated feature tests for a programm on the RSL15 board.
I need to do an automatic code compilation on linux, for this I’m using Cmake because I don’t have the IDE on it, everything works fine exept IDE generated RTE_Components.h file under the RTE folder, I would like to know if it is possible to generate it with command line.

@aleksandras

Please try this in your Linux project.

How to Include Existing Components

  1. Open .rteconfig file for the project.

  2. Check the boxes in front of any components under Strata as shown below.

image

  1. Once saved, the source files for included components, in this case cat9532.c will appear in RTE → Strata folder. These are symbolic links so the files do not actually exist in your project.

  2. Include the header file in str_ImplCommands.h

/**************************************** Defines *************************************/
 
#include "app.h"
#include "str_ImplCommands.h"
#include <str_PlatformInterface.h>
 
// Include any component drivers here
#include <cat9532.h>

How to Add Components to Strata CMSIS Pack

The Strata CMSIS pack built into the fw-applications-sec-rsl10 repo includes components that can be shared across all projects. The next steps illustrate how to add new components for shared usage.

  1. Create new component header and source files
    a. fw-applications-sec-rsl10/strata/components/my-new-component/include/my-new-component.h
    b. fw-applications-sec-rsl10/strata/components/my-new-component/source/my-new-component.c

  2. Edit fw-applications-sec-rsl10\ONSemiconductor.HelloStrataRSL10.pdsc to include new component. The “condition” variable can force other components to be included such as “common” for generic I2C read/write.

<component Cclass="Strata" Cgroup="Components" Csub="my-new-component" Cversion="1.0.0" condition="add required components here">
    <description>My New Component</description>
    <files>
        <file category="doc" name="https://www.onsemi.com/products/url/to/my-new-component"/>
        <file category="header" name="strata/components/my-new-component/include/my-new-component.h"/>
        <file category="source" name="strata/components/my-new-component/source/my-new-component.c"/>
    </files>
</component>
  1. Restart Eclipse (maybe there is a way to refresh the CMSIS pack, not sure)

  2. Add new components by editing the .rteconfig file, my-new-component can now be included in multiple project

image

  1. The header and source files can now be edited in the my-new-firmware-project Eclipse project. These are symbolic links to the component files configured in the .pdsc file. If the files are edited in one project this will reflect in any other project that includes that component.

How to Add New Files/Folders to the Project

Firmware files and directories specific to your project can be added manually to your project. These files/directories are for your project only. Add them to the Strata CMSIS pack discussed before this if you want to share these files between other Strata projects.

  1. Right click on the project in project explorer and select New → Folder. This will add a new folder to the project.

  1. To add a Source File or Header File to the new folder, follow same steps as before just right click on the new folder and then New → Header File / Source File. Remember to add file extension when New Header/Source File dialog appears. For example abc.h or abc.c.
  2. Add the path to the new folder in project settings, open project properties by right clicking on the project name in Project Explorer and select Properties.
  3. Add the path to the new folder under Paths and Symbols for both Language settings Assembly and GNU C.

  1. Find example below of newly added files and a folder.

image

  1. Adding directory path is required for successful compilation of newly added files.

Hi,
I actually don’t want to add a new Component, and I don’t have the Strata category, I just want to automatically generate the file in the picture under ( RTE_Components.h ) , without using the IDE, because I will need to do it through github actions.
Capture

@aleksandras

As we do no support Linux , please refer to these files at Open-CMSIS-Pack / devtools .

Thank you for using our community forum!