返回排行榜

RIOT-OS/RIOT

Criot-os.org

RIOT - The friendly OS for IoT

ciotosinternetofthingsmicrocontrollersrtosriot-osriotosinternetinternet-of-thingshacktoberfest
Star 增长趋势
Star
5.8k
Forks
2.1k
周增长
Issues
408
2k4k
2023年1月2024年3月2025年5月2026年7月
README

Nightly CI status master GitHub release License API docs Getting Started Guide Mastodon Matrix

RIOT Logo

RIOT OS: The friendly Operating System for IoT

RIOT is an open-source microcontroller operating system, designed to match the requirements of Internet of Things (IoT) devices and other embedded devices. It supports a range of devices that are typically found in the Internet of Things (IoT): 8-bit, 16-bit and 32-bit microcontrollers.

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).

RIOT is developed by an international open source community which is independent of specific vendors (e.g. similarly to the Linux community). RIOT is licensed with LGPLv2.1, a copyleft license which fosters indirect business models around the free open-source software platform provided by RIOT, e.g. it is possible to link closed-source code with the LGPL code.

Getting Started

Features

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
    • 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

Community

You can ask for help on the Forum or on Matrix. Please send bug reports and feature requests to our GitHub issue tracker

  • The 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 on the Matrix chat network.

Governance

For how our community is structured and governed, please see our governance document.

How to Ask

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.

Collaboration

RIOT closely collaborates with and inspires other open source projects, e.g., Ariel OS, an IoT OS written in Rust. We are more than happy to collaborate with those who share our vision.

Getting RIOT

The most convenient way to get RIOT is to clone it via Git

git clone https://github.com/RIOT-OS/RIOT

this will ensure that you get all the newest features and bug fixes with the caveat of an ever changing work environment.

If you prefer things more stable, you can download the source code of one of our quarter annual releases via Github as ZIP file or tarball. You can also checkout a release in a cloned Git repository using

git pull --tags
git checkout <YYYY.MM>

For more details on our release cycle, check our documentation.

Contribute

To contribute something to RIOT, please refer to our contributing document.

Mailing Lists

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.

All code files contain licensing information.

For more information, see the RIOT website.

相关仓库
Genymobile/scrcpy

Display and control your Android device

CApache License 2.0androidc
146.1k13.5k
neovim/neovim

Vim-fork focused on extensibility and usability

Vim ScriptOtherneovimc
neovim.io
101.3k7k
obsproject/obs-studio

OBS Studio - Free and open source software for live streaming and screen recording

CGNU General Public License v2.0cc-plus-plus
obsproject.com
74k9.4k
fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

MIT Licensecppcppcon
fffaraz.github.io/awesome-cpp/
72.4k8.3k
FFmpeg/FFmpeg

Mirror of https://git.ffmpeg.org/ffmpeg.git

COtherffmpegvideo
ffmpeg.org
62.3k14k
git/git

Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documentation/SubmittingPatches procedure for any of your improvements.

COthercshell
62.1k28.2k
serhii-londar/open-source-mac-os-apps

🚀 Awesome list of open source applications for macOS. https://t.me/s/opensourcemacosapps

Creative Commons Zero v1.0 Universalmacosmac
49.7k2.6k
curl/curl

A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, MQTTS, POP3, POP3S, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features

COtherhttphttps
curl.se
42.4k7.3k
vim/vim

The official Vim repository

Vim ScriptVim Licensevimc
vim.org
40.7k6.1k
huihut/interview

📚 C/C++ 技术面试基础知识总结,包括语言、程序库、数据结构、算法、系统、网络、链接装载库等知识及面试经验、招聘、内推等信息。This repository is a summary of the basic knowledge of recruiting job seekers and beginners in the direction of C/C++ technology, including language, program library, data structure, algorithm, system, network, link loading library, interview experience, recruitment, recommendation, etc.

C++Otherinterviewinterview-questions
interview.huihut.com
38.1k8.1k
mpv-player/mpv

🎥 Command line media player

COthermpvmplayer
mpv.io
36.1k3.4k
kovidgoyal/kitty

If you live in the terminal, kitty is made for you! Cross-platform, fast, feature-rich, GPU based.

PythonPyPIGNU General Public License v3.0terminal-emulatorsopengl
sw.kovidgoyal.net/kitty/
34k1.4k