Samples

The Atmosic OpenAir SDK provides applications and samples targeting Atmosic devices, demonstrating how to implement typical use cases using Atmosic libraries and drivers.

Samples that showcase individual features—such as BLE functionality or device peripheral demonstrations—are located in the openair/samples/ directory. Additionally, the SDK integrates selected Zephyr samples into this directory. These samples, verified by Atmosic, are based on their counterparts found in the zephyr/samples/ folder.

Applications are built using a variety of libraries to support specific use cases and functionalities.

In the Atmosic OpenAir SDK, both applications and samples and Sysbuild target configurations are organized at the same hierarchy level within the build system.

  • Applications and Samples : Defines the main application logic, typically located under paths like openair/samples/bluetooth/beacon. This includes source code and configuration files required to build and run the sample.

  • Sysbuild Target Configuration (-T option in west build): Specifies the build configuration for Sysbuild, including how multiple firmware images (e.g., secure and non-secure) are built and integrated. For example, samples.bluetooth.beacon.atm corresponds to a Sysbuild target configuration associated with the beacon sample.

These two components work together during the build process: the application provides the source code, while the Sysbuild configuration defines how that code is built and linked for Atmosic platforms.

Build command:

west build -p always -b <BOARD>//ns <APP> --sysbuild -T <test_item>
  • BOARD Selects the Atmosic device, with //ns (see board)

  • APP Sample folder path relative to the Zephyr project root. (e.g. openair/samples/bluetooth/beacon)

  • test_item Test item defined in sample.yaml. (e.g. samples.bluetooth.beacon.atm)

Note

  • -p always Ensures a pristine build directory is used.

  • --sysbuild Enables the use of Zephyr’s Sysbuild system for building multiple images.

Flash command:

west flash --skip-rebuild --device <DEVICE_ID> --jlink --fast_load [--erase_flash]
  • DEVICE_ID Specifies the serial number or identifier of the device to which the sample will be flashed. (see DEVICE_ID)

Note

  • --skip-rebuild Skips rebuilding the sample before flashing. This is useful when you want to flash without recompiling if no changes were made to the sample code.

  • --jlink Specifies that J-Link to be used for flashing the device.

  • --fast_load Support the fast load feature.

  • --erase_flash Erase the entire RRAM and flash on the device.

  • Use the --erase_flash option cautiously, as it may erase critical data on the device.

Subpages: