External libraries and applications. More...
External libraries and applications.
To add a package to the list of compiled modules you have to add it to the USEPKG
macro in your application's Makefile. If the package provides header files you might need to update the INCLUDE
macro, too:
When the package can be built out-of-source, the source code of external packages is fetched in a global location in:
When out-of-source build is not possible (for example because the package build system doesn't allow it), the source code is fetched in the build directory of the application under:
In this case, the source and the build directory are the same (currently, this applies to the micropython and openthread packages).
This module provides porting information for libraries and applications to use with RIOT (to build an external module). If you'd like to add a package to RIOT you need to add a directory with the name of your package to this directory. This directory should contain at least one file:
pkg/Makefile.git
and pkg/Makefile.http
.Patch files can be included in a patches
directory in the package dir. These are applied to the upstream package to make it build with RIOT.
Assuming your upstream library resides in a git repository, you can create the patch files as follows:
riot-port
)git commit
git format-patch -n riot-port
Modules | |
ATWINC15x0 WiFi Module Vendor Driver Package | |
ATWINC15x0 WiFi vendor driver from the Arduino WiFi101 library. | |
BLAKE2 hashing library | |
C library providing BLAKE2b, BLAKE2s, BLAKE2bp, BLAKE2sp. | |
C25519 cryptographic library | |
Curve25519 and Ed25519 for low-memory systems. | |
Cayenne Low Power Payload (LPP) | |
Provides a RIOT support for Cayenne LPP format. | |
Cifra cryptographic library | |
Provides the Cifra cryptographic library. | |
Color graphics library for embedded systems | |
Provides a color graphics library for OLED and LCD displays. | |
Cross platform fixed point maths library | |
Provides a cross platform fixed point maths library to RIOT. | |
Device driver model for the Decawave Impulse Radio-Ultra Wideband (IR-UWB) transceiver(s) | |
Hardware and architecture agnostic platform for IoT Location Based Services (LBS) | |
Driver implementation for the uwb-core driver for Decawave DW1000 transceiver | |
uwb-core driver for Decawave DW1000 transceiver | |
Driver package for I2C/SPI BME680 sensor | |
Provides the Bosch Sensortec's BME680 gas sensor API. | |
FAT file system | |
Provides FAT file system support. | |
FlatBuffers | |
FlatBuffers: Memory Efficient Serialization Library. | |
GEMM (General Matrix Multiplication) library | |
Provides support for GEMM library from Google. | |
GPS parser library | |
Provides a GPS parser library to RIOT. | |
HACL* High Assurance Cryptographic Library | |
Support for HACL* (High Assurance Cryptographic Library) | |
JSON parser library | |
Provides a JSON parser library to RIOT. | |
JSON parser library | |
C library for Bitcoin's base58 encoding. | |
LibHydrogen cryptographic library | |
A lightweight, secure, easy-to-use crypto library suitable for constrained environments. | |
Lightweight ASN.1 decoding/encoding library | |
Lightweight ASN.1 decoding/encoding library. | |
Lightweight Morse encoder | |
Provides slim Morse encoding functionality. | |
Lightweight compression library | |
Provides a lightweight compression library to RIOT. | |
LittlevGL - Open-Source Embedded GUI Library | |
LittlevGL package for RIOT. | |
Lora Serialization | |
Provides a RIOT support for Lora Serialization format. | |
Lua ported to RIOT | |
Provides a Lua interpreter for RIOT. | |
Micro-ECC for RIOT | |
Micro-ECC for RIOT. | |
MicroPython RIOT port | |
MicroPython - Python for microcontrollers. | |
Microchip CryptoAuthentication Library | |
Provides the library for Microchip CryptoAuth devices. | |
Monocypher cryptographic library | |
Provides the Monocypher cryptographic library. | |
NanoCBOR library | |
CBOR encoder and decoder library for tiny devices. | |
NimBLE | |
RIOT port of the NimBLE BLE stack. | |
OpenThread network stack | |
Provides a RIOT adaption of the OpenThread network stack. | |
OpenWSN network stack | |
Provides a RIOT adaption of the OpenWSN network stack. | |
PAHO MQTT framework | |
The Eclipse Paho project provides open-source client implementations of MQTT for embedded systems. | |
QCBOR for RIOT | |
Small footprint CBOR encoder/decoder. | |
Relic toolkit for RIOT | |
Provides the Relic cryptographic toolkit to RIOT. | |
SPI flash file system | |
Provides a file system for SPI NOR flash devices. | |
Semtech LoRaMAC implementation | |
Provides a RIOT adaption of Semtech LoRaMAC implementation. | |
TLSF-based malloc. | |
TLSF-based global memory allocator. | |
Talking LEDs - Arduino library for demonstration | |
Demonstrates the usage of Arduino libraries as packages. | |
TensorFlow Lite | |
Provides a RIOT support for TensorFlow Lite AI library. | |
TinyCBOR library | |
Provides the TinyCBOR (Concise Binary Object Representation) library. | |
TinyDTLS for RIOT | |
Provides the Eclipse TinyDTLS to RIOT. | |
TweetNaCl high-security cryptographic library | |
Provides the TweetNaCl high-security cryptographic library. | |
Two-Level Segregated Fit memory allocator | |
TLSF is a general purpose dynamic memory allocator specifically designed to meet real-time requirements: | |
U8G2 graphic library for monochome displays | |
Provides a monochrome graphics library for OLED and LCD displays. | |
Ultra-lightweight Javascript for Internet Of Things | |
Provides Javascript support for RIOT. | |
Vendor library for EFM/EFR/EZR32 MCUs | |
Vendor library for EFM/EFR/EZR32 targets by Silicon Labs. | |
Wakaama LwM2M implementation | |
Provides the Wakaama implementation of LwM2M. | |
WolfSSL Embedded SSL/TLS library | |
Provides the WolfSSL SSL/TLS solution. | |
Yxml XML parser | |
Provides an XML parser library. | |
cn-cbor | |
A constrained node implementation of CBOR in C. | |
emlearn | |
Machine Learning inference engine. | |
libcose for RIOT | |
Constrained node COSE library. | |
littlefs file system | |
A little fail-safe filesystem designed for embedded systems. | |
littlefs v2.x.y file system | |
A little fail-safe filesystem designed for embedded systems, v2.x.y release. | |
lwIP network stack | |
Provides the lwIP network stack. | |
qDSA | |
Small and Secure Digital Signatures with Curve-based Diffie-Hellman Key Pairs. | |
small Protocol Buffers library | |
Provides a protocol buffers library to RIOT. | |
tinycrypt crypto library | |
Memory optimized crypto library for embedded devices. | |
uBASIC interpreter | |
A really tiny BASIC interpreter. | |
uTensor | |
Provides a package for AI inference based on TensorFlow. | |