A few months ago, I wrote a post about how to Create a Custom Board Support Package which demonstrated how to use batch files and some magic to make your very own board support packages. As you may remember, the process was far from straight forward but it got the job down. The latest e2 studio release now includes an export tool that is built into the development environment and dramatically simplifies creating a custom board package. Let’s look at how this new capability simplifies our lives.
Before getting started, remember that the SSP and the add-on software associated with the Renesas Synergy™ Platform are distributed in a pack format. The packs are a convenient way to collect and distribute software to developers. Packs are located within the installation directory located under \e2_studio\internal\projectgen\arm\Packs (or under \Synergy\SSC_vx_x_x_xxx\internal\projectgen\arm\Packs for developers using IAR Embedded Workbench for Synergy with the Synergy Software Configurator (SSC)). Developers creating their own board support packages, custom components and frameworks should distribute their code in the same manner.
To create a pack file, open the project that contains the configured board support package that the developer would like to export and distribute. In the project explorer, click on the project to make sure that it is the active project. If the project isn’t selected the export wizard may complain that the selected project is not a Synergy project (because no project is selected!). From the File menu, select Export. Figure 1 shows the dialog box that will be presented. Expand the General folder and select the Renesas Synergy User Pack option. To configure the Renesas Synergy User Pack, click next.
Figure 1 – Exporting to a Pack
The next dialog box that is displayed provides a developer will all the options that they will need in order to configure the pack as can be seen in Figure 2. First, a developer has the option to create a standard user pack or a board pack. A user pack contains CMSIS components and non-SSP components that already exist in the project. Developers can even use the export wizard to create new components to include in the standard pack. The board pack includes board support components and board settings and excludes any SSP components.
Next, a developer is required to enter the Vendor, Name and Version in order to satisfy the export wizards minimal requirements. Extra information such as a brief description about the pack, website location for additional pack information and even licensing information if necessary.
Figure 2 – Setting the Pack Information
Once those details have been filled in, the developer can now select the components, threads and messaging components that will be included in the standard user pack as shown in Figure 3. The green plus in the component selection box can be used to filter and review available components for export.
Figure 3 – Adding Components to Export
Once the components have been selected, select Finish to generate the pack. Once the pack has been generated, it can be directly distributed to Synergy users to add to their projects.
Developers who aren’t interested in distributing a standard user pack but instead a board user pack, can select the board pack option from Figure 2. The board pack setup looks slightly different than the user pack as seen in Figure 4. Developers will be forced to provide a Board Name such as MyWidget. Pin-outs, configurations and component files can then be added to the pack by pressing the add button located in the upper right hand corner.
Figure 4 – Configure Board Pack
Once the desired files have been added to the pack, a developer can select finish and voila!
Copy the pack and distribute it to developers. Developers can either copy the pack into their pack directory or from File->Import, they can select General->CMSIS Pack and select the user pack to import.
Creating a custom pack is now far simpler than running multiple scripts to copy, edit and lock a new BSP!
Live long and profit!
Hot Tip of the Week
If you are interested in learning about how to use the powerful Express Logic TraceX® tool to check thread states and objects of ThreadX® when developing applications with the Renesas Synergy™ Platform, look no further. This application note will show you, with some hands-on examples, how to debug even complex designs quickly and easily using TraceX. https://www.renesas.com/en-us/doc/products/renesas-synergy/apn/r20an0404ej0101-synergy-debugging-rtos-threadx.pdf
Is this article still valid under SSP 1.5.1 and e2studio 6.2'ish?