• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

src/04-Jan-2025-11665

CMakeLists.txtD04-Jan-2025481 2014

KconfigD04-Jan-2025415 2014

README.rstD04-Jan-20251,014 4430

prj.confD04-Jan-202516 21

sample.yamlD04-Jan-2025370 2019

README.rst

1.. zephyr:code-sample:: nanopb
2   :name: Nanopb
3
4   Serialize and deserialize structured data using the nanopb module.
5
6Overview
7********
8
9A simple protocol buffer sample using :ref:`nanopb_reference` for serializing structured data
10to platform independent raw buffers or streams.
11
12The structured data to encode/decode is presented as follows:
13
14.. code-block:: proto
15
16   syntax = "proto3";
17
18   message SimpleMessage {
19       int32 lucky_number = 1;
20       bytes buffer = 2;
21       int32 unlucky_number = 3;
22   }
23
24Configuration
25*************
26
27This sample uses two configuration options to modify the behavior.
28
29* :kconfig:option:`CONFIG_SAMPLE_BUFFER_SIZE` sets the ``buffer`` field's size
30* :kconfig:option:`CONFIG_SAMPLE_UNLUCKY_NUMBER` either enables or disables the ``unlucky_number``
31  field.
32
33Building and Running
34********************
35
36This application can be built as follows:
37
38.. zephyr-app-commands::
39   :zephyr-app: samples/modules/nanopb
40   :host-os: unix
41   :board: qemu_x86
42   :goals: run
43   :compact:
44