Skip to content

bdilly/soletta-small-oses-samples

 
 

Repository files navigation

Soletta samples for Small OSes

Applications

Each application contains its sources inside a src/ sub-directory, a Makefile.application that configures the application, and optional 'config.$OS' directories where other per-application configuration files can be found. What these files are may depend on the target OS, such as Zephyr having a prj.conf file to configure the OS itself. Other configuration files can be:

  • sol.conf: Override Soletta Kconfig variables
  • sol-flow.json: For FBP based applications, configures Flow parameters

All these configuration files may be include the board name targetted too, for example:

  • sol_quark_se_devboard.conf
  • sol-flow_samr21-xpro.json
  • prj_qemux86.conf

Build instructions

Inside a sample directory:

make -C ../BUILD <os> BOARD=board_name [other targets]

Example:

make -C ../BUILD zephyr BOARD=quark_se_devboard flash
make -C ../BUILD riot BOARD=samr21-xpro debug

Supported OSes for the time being:

Building for RIOT requires the variable RIOTBASE set to the path where the RIOT sources can be found, and copying the libsoletta directory under RIOT to the pkg/ subdirectory in RIOT itself.

Building for Zephyr requires:

  • ZEPHYR_BASE pointing to the Zephyr sources
  • SOLETTA_BASE_DIR pointing to the Soletta sources
  • ZEPHYR_GCC_VARIANT set to the toolchain variant to use (usually, "zephyr")
  • ZEPHYR_SDK_INSTALL_DIR set to the path where Zephyr's SDK is installed

TODO

  • Make this README more instructive.
  • Less Makefiles, more scripts.
  • Handle dependencies better, so we don't rebuild things we don't need.
  • Add support for applications with custom node types.
  • Make plain C applications "configurable", as FBP ones are.
  • Try to detect which RIOT modules are needed based on Soletta's configuration, or at least make it per-application too.

About

Soletta samples for Small OSes

Resources

License

Apache-2.0, Unknown licenses found

Licenses found

Apache-2.0
LICENSE
Unknown
COPYING

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 81.6%
  • Makefile 18.4%