RP2040 Project Templates

The project template system simplifies the creation of new projects with the IDE, it also system makes it easy to create new projects with a text editor or script. All that needs to be specified is the project name, the support packages that the project is dependent on, the target processor and the source files you want to add to the project. For example, create a file called example.hzp with the following contents:

<!DOCTYPE CrossStudio_Project_File>
<solution Name="Example Solution">
  <project Name="Example Project" template_name="RP2040_EXE">
    <configuration Name="Common" package_dependencies="RP2040" Target="RP2040_M0_0" />
    <folder Name="Source Files">
      <file file_name="file1.c" />
      <file file_name="file2.c" />
    </folder>
  </project>
</solution>

You can also add any other property settings that the project requires such as preprocessor definitions or include paths using the property save name, for example:

<!DOCTYPE CrossStudio_Project_File>
<solution Name="Example Solution">
  <project Name="Example Project" template_name="RP2040_EXE">
    <configuration Name="Common" package_dependencies="RP2040" Target="RP2040_M0_0" c_preprocessor_definitions="MYDEF1=1;MYDEF2=TWO" c_user_include_directories="$(ProjectDir)/include1;$(ProjectDir)/include2" />
    <folder Name="Source Files">
      <file file_name="file1.c" />
      <file file_name="file2.c" />
    </folder>
  </project>
</solution>
Available RP2040 project templates
Template NameTemplate Description
RP2040_ASM_EXERP2040 Assembly Code Only Executable
RP2040_CTL_EXERP2040 CTL Executable
RP2040_EXERP2040 C/C++ Executable
RP2040_EXT_EXERP2040 Externally Built Executable
RP2040_LIBRP2040 Library