The following video details the steps you would perform to switch from the Lite runtime to using RTExec within Storyboard to enable the use of additional plugins often utilized with larger embedded projects.
Steps for Updating the Projects to support RTExec
You will require the RTExecutive runtime package to complete this guide, if you haven’t already downloaded this please reach out to sales@cranksoftware.com.
Once you’ve downloaded this archive install it to your system (for example installing within the standard Storyboard directory will keep everything contained <storyboard install path>/RTOS/1060). To upgrade the capabilities of your Storyboard project downloaded from NXP’s MCUXpresso import the Crank Software Hello World example. This will ensure that the upgrade is based on a clean project.
File > New > Import SDK Example
Select board (1060 or 1050) > Next > crank_storyboard_examples >crank_storyboard_helloworld
Open your project and expand the Crank software directory you will see the following folders.
Go to your RTExecutive installation directory and copy the following contents respectively:
<install directory>/freertos-mcuxpresso-cortexm7-swrender-DFP-obj/include/* to Crank_Software/cortexM7/include/
<install directory>/freertos-mcuxpresso-cortexm7-swrender-DFP-obj/lib/* to Crank_Software/cortexM7/lib/gcc/
<install directory>/freertos-mcuxpresso-cortexm7-swrender-DFP-obj/plugins/* to Crank_Software/cortexM7/plugins/gcc/
Next, you will need to update the list of libraries and plugins which get linked to the project. Right-click on the project and select Properties > C/C++ Build > Settings > Tool Settings > MCU Linker > Libraries.
The current project is configured for a memory reduced footprint and will need to have some plugins replaced and added. Remove font-plugin-sbfont plugin and replace it with font-plugin-freetype. The hello world application uses bitmap fonts, it’s likely that you will want to leverage the FreeType font engine as it will give you more flexibility and allow you to export ttf and otf format fonts.
We would also like to leverage LUA scripting so you will add the LUA plugin and lua scripting library.
Add gre-plugin-lua
Add sblua
Finally, we can drop in an animated screen path transition for some more effects.
Add gre-plugin-screen-path
NOTE: The demo video's finalized list looks like the following, however, note that Lua will require the greio library to be included within it.
Modify the command line pattern:
Project->Properties->C/C++ Build->Settings->Tool Settings->MCU Linker->Command line pattern:
${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} -Wl,--whole-archive ${INPUTS} -Wl,--no-whole-archive
You will now need to initialize any plugins you've linked to your project in the sbengine_plugins.h file found under source. The full list of plugins can be found in the RT1060 integration documentation.