espressif/cbor

uploaded 3 days ago
CBOR: Concise Binary Object Representation Library

readme

Concise Binary Object Representation (CBOR) Library

To build TinyCBOR:

make

If you want to change the compiler or pass extra compiler flags:

make CC=clang CFLAGS="-m32 -Oz" LDFLAGS="-m32"

Documentation: https://intel.github.io/tinycbor/current/

readme of cbor example

CBOR Example

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.)

Links:

Supports all targets

License: MIT

To add this component to your project, run:

idf.py add-dependency "espressif/cbor^0.6.0~1"

or download archive

Dependencies

  • ESP-IDF >=4.3
  • Examples:

    Badge

    espressif/cbor version: 0.6.0~1