.. _samples: 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: .. code-block:: bash west build -p always -b //ns --sysbuild -T - ``BOARD`` Selects the Atmosic device, with ``//ns`` (see :ref:`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: .. code-block:: bash west flash --skip-rebuild --device --jlink --fast_load [--erase_flash] - ``DEVICE_ID`` Specifies the serial number or identifier of the device to which the sample will be flashed. (see :ref:`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:** .. toctree:: :maxdepth: 1 ../openair/samples/bluetooth/beacon/README.rst ../openair/samples/bluetooth/broadcaster/README.rst ../openair/samples/bluetooth/broadcaster_multiple/README.rst ../openair/samples/bluetooth/extended_adv/advertiser/README.rst ../openair/samples/bluetooth/extended_adv/scanner/README.rst ../openair/samples/bluetooth/hci_uart/README.rst ../openair/samples/bluetooth/hci_vendor/README.rst ../openair/samples/bluetooth/periodic_adv/README.rst ../openair/samples/bluetooth/peripheral/README.rst ../openair/samples/bluetooth/peripheral_accept_list/README.rst ../openair/samples/drivers/i2s/output/README.rst ../openair/samples/drivers/uart/uart_passthrough/README.rst ../openair/samples/hello_world/README.rst ../openair/samples/nsc_hello_world/README.rst ../openair/samples/spe/README.rst ../openair/samples/sensor/adt7420/README.rst ../openair/samples/sensor/lis2dh/README.rst ../openair/samples/subsys/mgmt/mcumgr/smp_svr/README.rst ../openair/samples/subsys/settings/README.rst ../openair/samples/sysbuild/hello_world/README.rst