System

System library contains tools and utilities that make RIOT an actual operating system. More...

Detailed Description

System library contains tools and utilities that make RIOT an actual operating system.

Modules

 5x5 Font 'Mineplex'
 The Mineplex font for containing 5x5 pixel ASCII characters.
 
 A minimal, non-destructive URI parser
 A minimal, non-destructive parser for URI references.
 
 A terminal progress bar
 Manage a progress bar on the standard output.
 
 Analog data conversion utilities
 Utility functions for converting analog data samples.
 
 Arduino
 Arduino in RIOT.
 
 Auto-initialization
 Auto initialize modules.
 
 Benchmark
 Framework for running simple runtime benchmarks.
 
 Binary coded decimal
 Library to de- and encode binary coded decimals.
 
 Bitfields
 Bitfields of arbitrary length.
 
 Bloom filter
 Bloom filter library.
 
 Board reset via USB CDC ACM
 Trigger a board reset via USB CDC ACM.
 
 C++ compatibility with C11 atomics
 C++ compatibility of default C11 atomics types.
 
 C++ constructor guards for static instances
 C++ constructor guards for thread-safe initialization of static instances.
 
 C++11 wrapper for RIOT
 drop in replacement to enable C++11-like thread, mutex and condition_variable
 
 C25519 cryptographic library
 Curve25519 and Ed25519 for low-memory systems.
 
 Callback multiplexer
 cb_mux provides utilities for storing, retrieving, and managing callback information in a singly linked list.
 
 Color
 The color sys module supports handling RGB and HSV color.
 
 Colored log module
 This module implements a logging module with colored output.
 
 Crypto
 RIOT provides a collection of block cipher ciphers, different operation modes and cryptographic hash algorithms.
 
 ECC
 A collection of error correction code (ECC) algorithms.
 
 EEPROM registration
 eepreg provides a facility to easily manage the locations of data stored in EEPROM via a meta-data registry.
 
 Event Queue
 Provides an Event loop.
 
 FUZZING utilities
 Various utilities for fuzzing network applications.
 
 File systems
 File system libraries.
 
 Fractional integer operations
 
 Hashes
 A collection of hash algorithms. RIOT supports some checksum hash algorithms, keyed and unkeyed cryptographic hash algorithms and non cryptographic hash algorithms.
 
 Helpers for pointer tagging
 
 Helpers to manipulate partitions (slots) on internal flash
 
 ISR Pipe
 ISR -> userspace pipe.
 
 Layered PM Infrastructure
 
 Lightweight Morse encoder
 Provides slim Morse encoding functionality.
 
 Lightweight compression library
 Provides a lightweight compression library to RIOT.
 
 Locally Unique ID Generator
 Generate system wide (locally) unique IDs.
 
 Math libraries and utilities
 Provides math libraries and utilities for RIOT.
 
 Memory management
 Provides memory management implementations and utilities.
 
 Millisecond interval event timers
 Provides timers for events up to $2^{32}$ milliseconds in the future.
 
 NanoCBOR library
 CBOR encoder and decoder library for tiny devices.
 
 Object dump
 Allows to print out data dumps of memory regions in hexadecimal or/and ASCII representation.
 
 POSIX wrapper for RIOT
 POSIX header files.
 
 PS
 Show list with all threads.
 
 Phydat
 Generic data container for physical data and utility functions.
 
 Pipe IPC
 Generic pipe implementation.
 
 Platform-independent access to architecture
 details
 
 Pointer Compression
 Provides 32bit -> 16bit pointer compression.
 
 RFC 4122 compliant UUID's
 Provides RFC 4122 compliant UUID's.
 
 RIOT header helpers and tools
 
 Random
 Pseudo Random Number Generator (PRNG)
 
 SAUL registry
 Global sensor/actuator registry for SAUL devices.
 
 SRAM PUF
 SRAM based physically unclonable function (PUF)
 
 STDIO abstraction
 Simple standard input/output (STDIO) abstraction for RIOT.
 
 STDIO over SEGGER RTT
 STDIO mapping for running the STDIO over SEGGER's RTT interface.
 
 STDIO over Semihosting
 Standard input/output backend using ARM Semihosting.
 
 STDIO over UART
 Standard input/output backend using UART.
 
 SUIT secure firmware OTA upgrade infrastructure
 SUIT manifest handling.
 
 Schedstatistics
 When including this module scheduler statistics (schedstat_t) for a thread will be updated on every sched_run().
 
 Semaphores
 Lightweight semaphore implementation.
 
 Serialization
 Utilities for data serialization.
 
 Shell
 Simple shell interpreter.
 
 Shell commands
 
 Stack Smashing Protector
 Stack Smashing protector.
 
 String formatting (fmt)
 Provides simple string formatting functions.
 
 Test interactive synchronization
 Utility function for synchronizing before a test.
 
 Thread safe ringbuffer
 Thread-safe ringbuffer implementation.
 
 Timers
 Provides a high level timer module to register timers, get current system time, and let a thread sleep for a certain amount of time.
 
 Timex
 Timestamp representation, computation, and conversion.
 
 Trickle Timer
 Implementation of a generic Trickle Algorithm (RFC 6206)
 
 TweetNaCl high-security cryptographic library
 Provides the TweetNaCl high-security cryptographic library.
 
 USB
 Configuration defines for USB peripheral devices.
 
 Ultra-lightweight Javascript for Internet Of Things
 Provides Javascript support for RIOT.
 
 Unittests
 RIOT Unittests based on the EmbUnit Framework.
 
 Universal Address Container
 universal address container
 
 Utility functions for atomic access
 
 Virtual File System (VFS) layer
 Provides an interface for accessing files and directories from different devices and file systems.
 
 
 expect() utility function
 
 iolist scatter / gather IO
 Provides linked-list scatter / gather IO.
 
 puts log module
 This module implements an example logging module.
 
 qDSA
 Small and Secure Digital Signatures with Curve-based Diffie-Hellman Key Pairs.
 
 riotboot flash writer
 
 small Protocol Buffers library
 Provides a protocol buffers library to RIOT.
 
 unaligned memory access methods
 Provides functions for safe unaligned memory accesses.
 
 utlist
 Basic linked list operation definitions.
 
 ztimer high level timer abstraction layer
 High level timer abstraction layer.
 

Files

file  byteorder.h
 Functions to work with different byte orders.
 
file  frac.h
 
file  trace.h
 Trace program flows.