Notable Open Source Embedded Projects

Follow and star our public account for exciting content

Source | Technology Makes Dreams Greater

Learning embedded systems is relatively easy to start but challenging to master. This article recommends and summarizes some open-source projects that together form a complete embedded development ecosystem, from chip boot code to high-level application development. You can check the original links for more information.

Operating Systems

FreeRTOS: A popular real-time operating system (RTOS) for microcontrollers.

Repository: https://github.com/FreeRTOS/FreeRTOS

Zephyr Project: A scalable real-time operating system supporting various hardware architectures.

Repository: https://github.com/zephyrproject-rtos/zephyr

mbed OS: An open-source embedded operating system launched by ARM, designed for IoT devices.

Repository: https://github.com/ARMmbed/mbed-os

RT-Thread: An open-source real-time operating system from China, suitable for IoT applications.

Repository: https://github.com/RT-Thread/rt-thread

TinyOS: An open-source embedded operating system designed for low-power wireless devices.

Repository: https://github.com/tinyos/tinyos-main

Contiki-NG: An open-source, cross-platform embedded operating system designed for IoT.

Repository: https://github.com/contiki-ng/contiki-ng

OpenWrt: A Linux distribution for embedded devices, commonly used in routers.

Repository: https://github.com/openwrt/openwrt

Apache NuttX: A real-time operating system (RTOS) emphasizing standard compliance.

Repository: https://github.com/apache/nuttx

RIOT OS: A friendly embedded operating system supporting various hardware platforms.

Repository: https://github.com/RIOT-OS/RIOT

Linux Kernel: Although the Linux kernel itself is not specifically designed for embedded systems, it is widely used in the embedded field.

Repository: https://github.com/torvalds/linux

U-Boot: An open-source bootloader for embedded devices.

Repository: https://github.com/u-boot/u-boot

For beginners, studying the FreeRTOS source code can provide a deep understanding of real-time scheduling algorithms (such as priority scheduling and time-slicing), inter-task communication mechanisms, and memory management strategies. It also offers core functionalities like task management, message queues, semaphores, and software timers, making it a great learning resource.

Frameworks

ESP-IDF: The official IoT development framework from Espressif for the ESP32 series chips.

Repository: https://github.com/espressif/esp-idf

ESP8266 RTOS SDK: An RTOS development framework for the ESP8266.

Repository: https://github.com/espressif/ESP8266_RTOS_SDK

Arduino: An open-source electronics prototyping platform, including both hardware and software.

Repository: https://github.com/arduino/Arduino

Tools

PlatformIO: A cross-platform embedded development toolchain.

Repository: https://github.com/platformio/platformio-core

BusyBox: A single executable file that integrates multiple common Unix tools, often used in embedded Linux systems.

Repository: https://github.com/mirror/busybox

PJRC Teensy: Core libraries and tools for the Teensy development board.

Repository: https://github.com/PaulStoffregen/cores

Provides a CMake-based build system, supporting integration with IDEs like VSCode and Eclipse.

Projects and Libraries

WiringPi: A GPIO control library for Raspberry Pi (written in C).

Repository: https://github.com/WiringPi/WiringPi

MicroPython: A lean implementation of Python for microcontrollers and embedded systems.

Repository: https://github.com/micropython/micropython

The Things Network: An open-source project related to LoRaWAN for IoT communication.

Repository: https://github.com/TheThingsNetwork

These related URLs provide learners with comprehensive resources and practical opportunities, including operating systems, development frameworks, tools, and hardware support.

‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧  END  ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧


Follow my public account and reply "planet" to join the knowledge community, where all questions will be answered.


Click "Read the original text" to view details about the knowledge community. Feel free to share, bookmark, like, and view.



Leave a Comment