esp-idf/examples/protocols/cbor
2021-11-11 15:32:36 +01:00
..
main Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
CMakeLists.txt cbor: add tinycbor library and example 2019-08-22 17:44:29 +08:00
example_test.py Split example_tests with Example_WIFI tag group into Example_OTA and Example_Protocols 2021-04-15 04:00:06 +00:00
README.md cbor: add tinycbor library and example 2019-08-22 17:44:29 +08:00

CBOR Example

(See the README.md file in the upper level 'examples' directory for more information about examples.)

Overview

The CBOR(Concise Binary Object Representation) is a binary data serialization format which is similar to JSON but with smaller footprint. This example will illustrate how to encode and decode CBOR data using the APIs provided by tinycbor.

For detailed information about how CBOR encoding and decoding works, please refer to REF7049 or cbor.io;

How to use example

Hardware Required

This example should be able to run on any commonly available ESP32 development board.

Build and Flash

Run idf.py -p PORT flash monitor to build and flash the project.

(To exit the serial monitor, type Ctrl-].)

See the Getting Started Guide for full steps to configure and use ESP-IDF to build projects.

Example Output

I (320) example: encoded buffer size 67
I (320) example: convert CBOR to JSON
[{"chip":"esp32","unicore":false,"ip":[192,168,1,100]},3.1400001049041748,"simple(99)","2019-07-10 09:00:00+0000","undefined"]
I (340) example: decode CBOR manually
Array[
  Map{
    chip
    esp32
    unicore
    false
    ip
    Array[
      192
      168
      1
      100
    ]
  }
  3.14
  simple(99)
  2019-07-10 09:00:00+0000
  undefined
]

Troubleshooting

For more API usage, please refer to tinycbor API.

(For any technical queries, please open an issue on GitHub. We will get back to you as soon as possible.)