zephyr/samples/drivers/mbox
Grzegorz Swiderski b4c18e8999 boards: nrf54h20dk: Merge iron variants into the base variants
This replaces the legacy SDFW compatible board configuration with the
IronSide SE compatible one, thus removing support for running samples
and tests on nRF54H20 devices with the old firmware.

All applications are expected to work on `nrf54h20dk/nrf54h20/cpuapp`
out of the box. For other board targets, all applications are expected
to boot, but may require additional peripheral configuration in UICR.
Build system support for the new UICR format is to be added separately.

Co-authored-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-24 16:57:45 +01:00
..
boards samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes 2025-07-24 16:57:45 +01:00
remote samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes 2025-07-24 16:57:45 +01:00
src
sysbuild samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes 2025-07-24 16:57:45 +01:00
CMakeLists.txt samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes 2025-07-24 16:57:45 +01:00
Kconfig
Kconfig.sysbuild samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes 2025-07-24 16:57:45 +01:00
prj.conf
README.rst
sample.yaml boards: nrf54h20dk: Merge iron variants into the base variants 2025-07-24 16:57:45 +01:00
sysbuild.cmake samples: drivers: mbox: Cleanup after nRF54LM20 rename 2025-07-21 07:51:19 -04:00

.. zephyr:code-sample:: mbox
   :name: MBOX
   :relevant-api: mbox_interface

   Perform inter-processor mailbox communication using the MBOX API.

Overview
********

This sample demonstrates how to use the :ref:`MBOX API <mbox_api>`.

Building and Running
********************

The sample can be built and executed on boards supporting MBOX.

Building the application for nrf5340dk/nrf5340/cpuapp
*****************************************************

.. zephyr-app-commands::
   :zephyr-app: samples/drivers/mbox/
   :board: nrf5340dk/nrf5340/cpuapp
   :goals: debug
   :west-args: --sysbuild

Open a serial terminal (minicom, putty, etc.) and connect the board with the
following settings:

- Speed: 115200
- Data: 8 bits
- Parity: None
- Stop bits: 1

Reset the board and the following message will appear on the corresponding
serial port, one is the application (APP) core another is the network (NET)
core:

.. code-block:: console

   *** Booting Zephyr OS build zephyr-v3.1.0-2383-g147aee22f273  ***
   Hello from APP
   Pong (on channel 0)
   Ping (on channel 1)
   Pong (on channel 0)
   Ping (on channel 1)
   Ping (on channel 1)
   Pong (on channel 0)
   Ping (on channel 1)
   Pong (on channel 0)
   Ping (on channel 1)
   ...


.. code-block:: console

   *** Booting Zephyr OS build zephyr-v3.1.0-2383-g147aee22f273  ***
   Hello from NET
   Ping (on channel 0)
   Pong (on channel 1)
   Ping (on channel 0)
   Pong (on channel 1)


Building the application for the simulated nrf5340bsim
******************************************************

.. zephyr-app-commands::
   :zephyr-app: samples/drivers/mbox/
   :host-os: unix
   :board: nrf5340bsim/nrf5340/cpuapp
   :goals: build
   :west-args: --sysbuild

Then you can execute your application using:

.. code-block:: console

   $ ./build/zephyr/zephyr.exe -nosim
   # Press Ctrl+C to exit

You can expect a similar output as in the real HW in the invoking console.