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.
- Clone this repository:
git clone https://github.com/Jeija/librenard
librenard
has no dependencies other than a working compiler andmake
. Compile using:
cd librenard
make
- This generates the static library file
librenard.a
which can be linked to your application or therenard
CLI frontend.
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.
Up-to-date documentation is always available online at Read the Docs.
You can build the documentation yourself by following these steps:
- Clone the
librenard
if you have not already (see Installation and Compilation) librenard
uses sphinx, doxygen and breathe for documentation. You will need to install these dependencies.- Generate HTML documentation files:
cd librenard/doc
make html
- Open
doc/_build/html/index.html
in a web browser