Also known as Real Time Operating System for Internet of Things
operating system
[![Nightly CI status master][ci-badge]][ci-link] [![GitHub release][release-badge]][release-link] [![License][license-badge]][license-link] [![API docs][api-badge]][api-link] [![Getting Started Guide][guide-badge]][guide-link] [![Mastodon][mastodon-badge]][mastodon-link] [![Matrix][matrix-badge]][matrix-link] RIOT is based on the following design principles: energy-efficiency, real-time capabilities, small memory footprint, modularity, and uniform API access, independent of the underlying hardware (this API offers partial POSIX compliance). [ci-badge]: [ci-link]: [release-badge]: [release-link]: [license-badge]: doc/resources/badge-license.svg [license-link]: [api-badge]: doc/resources/badge-api.svg [api-link]: [guide-badge]: doc/resources/badge-guide.svg [guide-link]: [mastodon-badge]: doc/resources/badge-mastodon.svg [mastodon-link]: [matrix-badge]: doc/resources/badge-matrix.svg [matrix-link]: RIOT provides features including, but not limited to: Platforms Supported 200+ boards based on AVR, MSP430, ESP8266, ESP32, RISC-V, ARM7, and ARM Cortex-M The native port allows to run RIOT as-is on Linux and BSD. Multiple instances of RIOT running on a single machine can also be interconnected via a simple virtual Ethernet bridge or via a simulated IEEE 802.15.4 network (ZEP). Programming Environment Write native code in C, C++, or Rust Rely upon POSIX APIs, user friendly hardware abstractions and standard embedded Rust interfaces Integrate dynamic runtimes such as MicroPython, elm (JavaScript) and WASM Network Features and Protocols IPv6 IPv4 via lwIP 6LoWPAN (RFC4944, RFC6282, RFC6775 and RFC7668) UDP TCP RPL (storing mode, P2P mode) CoAP MQTT via paho-mqtt and MQTT-SN LwM2M Bluetooth (BLE) via [NimBLE][nimble] LoRaWAN UWB CAN CNN-Lite LwIP IEEE 802.15.4 Ethernet (also via USB) SLIP (or ethos networking via Serial) Dose (single pair ethernet like networking on serial interface UART) System Features a preemptive, tickless scheduler with priorities, optional periodic round robin within priorities flexible memory management high resolution, long-term timers MTD abstraction layer for memory devices File System integration Security Features OTA updates via SUIT PSA Cryptographic API DTLS, EDHOC Device Drivers SPI, I2C, UART, USB, CAN RTC, PWM, Timer ADC, DAC Various sensors: Environmental sensors, IMUs, magnetometers, particulate matter sensors Various actuators: Servos, motors, dimmers, switches, RGB LEDs Displays and touchscreens GNSS You can ask for help on the Forum or on Matrix. Please send bug reports and feature requests to our [GitHub issue tracker][issues] The [Forum][forum] is the default place to start asking for help. Our Forum provides an archive of prior questions and answers. For chat, we use [ riot-os:matrix.org][matrix-chat] on the [Matrix][matrix] chat network. For how our community is structured and governed, please see our [governance document][governance]. Please include as much detail as you can that is relevant to your question, not only "this isn't working". These details include: 1. What you want to achieve. 2. What have you tried so far (for example the commands you typed). 3. What happened so far. RIOT closely collaborates with and inspires other open source projects, e.g., [Ariel OS][ariel], an IoT OS written in Rust. We are more than happy to collaborate with those who share our [vision][vision]. this will ensure that you get all the newest features and bug fixes with the caveat of an ever changing work environment. License Most of the code developed by the RIOT community is licensed under the GNU Lesser General Public License (LGPL) version 2.1 as published by the Free Software Foundation. Some external sources, especially files developed by SICS are published under a separate license.
Excerpt from the source-code README · 7,331 chars · not written by Vinony
via Wikidata · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).