Open Sigfox Stack Reference Implementation - Library
Clone or download

README.md

librenard - Sigfox Protocol Library

ReadTheDocs CircleCI

librenard is a portable library written in the C programming language that implements Sigfox uplink and downlink frame encoding and decoding. It aims to be an open source replacement for Sigfox's proprietary device library. It can be used together with the CLI frontend renard and the SDR physical layer renard-phy or be embedded in custom applications.

It has been tested on Linux, macOS and Android (x86 and ARM), but should also be portable to other operating systems and various microcontroller platforms.

Installation and Compilation

  • Clone this repository:
git clone https://github.com/Jeija/librenard
  • librenard has no dependencies other than a working compiler and make. Compile using:
cd librenard
make
  • This generates the static library file librenard.a which can be linked to your application or the renard CLI frontend.

Embedding

librenard is designed to be statically linked with your own application, so that it can be embedded into microcontroller code or into other tools. For using librenard you will have to tell your compiler about the path to the librenard.a static library file and about the path to the header includes.

Most compilers (shown here: gcc) use the following options to specify library and header locations:

gcc -I librenard/src <your_C_sources> librenard/librenard.a -o out

See renard for an example of how to incorporate librenard into your application and build system. Please refer to the documentation for information on how to include the librenard headers in your source code and for information on how to use the librenard functions.

Documentation

Up-to-date documentation is always available online at Read the Docs.

You can build the documentation yourself by following these steps:

cd librenard/doc
make html
  • Open doc/_build/html/index.html in a web browser