zephyr/samples/modules/nanopb
Alberto Escolar Piedras 05f1b2c207 samples misc: Use hwmv2 native targets identifiers
For the 64 bit targets, change identifiers to the new hwmv2 ones.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-15 16:13:12 +01:00
..
src
CMakeLists.txt
Kconfig
README.rst doc: services: serialization: Add Nanopb entry 2024-03-01 10:21:34 +00:00
prj.conf
sample.yaml samples misc: Use hwmv2 native targets identifiers 2024-03-15 16:13:12 +01:00

README.rst

.. _nanopb_sample:

Nanopb sample
#############

Overview
********

A simple protocol buffer sample using :ref:`nanopb_reference` for serializing structured data
to platform independent raw buffers or streams.

The structured data to encode/decode is presented as follows:

.. code-block:: proto

   syntax = "proto3";

   message SimpleMessage {
       int32 lucky_number = 1;
       bytes buffer = 2;
       int32 unlucky_number = 3;
   }

Configuration
*************

This sample uses two configuration options to modify the behavior.

* :kconfig:option:`CONFIG_SAMPLE_BUFFER_SIZE` sets the ``buffer`` field's size
* :kconfig:option:`CONFIG_SAMPLE_UNLUCKY_NUMBER` either enables or disables the ``unlucky_number``
  field.

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

This application can be built as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/modules/nanopb
   :host-os: unix
   :board: qemu_x86
   :goals: run
   :compact: