You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

90 lines
4.2 KiB
Markdown

# :construction: A curated list of awesome sources and libs for Embedded Systems
There is my attempt to create list of software for Embedded Systems
URL: https://github.com/iDoka/awesome-embedded-software
## Contents
Under construct
## Common
* [embxx](https://github.com/arobenko/embxx) - Embedded C++ Library
* [embedded-libs](https://github.com/MaJerle/embedded-libs) - Libraries for embedded software (mainly for STM32)
* [RegExp](https://github.com/MaJerle/RegExp) - Regular expressions library for embedded systems
* [ETLCPP](https://github.com/ETLCPP/etl) - Embedded Template Library where the user can declare the size, or maximum size of any object upfront
* [eFLL](https://github.com/zerokol/eFLL) - Embedded Fuzzy Logic Library is a standard library for Embedded Systems
* [LwGPS](https://github.com/MaJerle/lwgps) - Lightweight GPS NMEA parser for embedded systems
* [LwESP](https://github.com/MaJerle/lwesp) - lightweight ESP AT commands parser library to communicate with ESP8266 or ESP32 Wi-Fi module using AT commands
* [LwGSM](https://github.com/MaJerle/lwgsm) - Library for SIMCOM GSM modules to communicate with AT commands and RTOS from host device
* [LwRB](https://github.com/MaJerle/lwrb) - Lightweight generic ring buffer manager library
* [lwprintf](https://github.com/MaJerle/lwprintf) - Lightweight printf library optimized for embedded systems
* [lwpkt](https://github.com/MaJerle/lwpkt) - Lightweight packet protocol structure for multi-device communication focused on RS-485
* [lwow](https://github.com/MaJerle/lwow) - Lightweight onewire protocol library optimized for UART hardware on embedded systems
* [lwmem](https://github.com/MaJerle/lwmem) - Lightweight dynamic memory manager library for embedded systems with memory constraints. It implements malloc, calloc, realloc and free functions
## Data processing
### Compression
* [heatshrink](https://github.com/atomicobject/heatshrink) - data compression library for embedded/real-time systems
### CV
* [Embedded SOD](https://github.com/symisc/sod) - an Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)
## WEB
* [uIP](https://github.com/adamdunkels/uip) - is a very small implementation of the TCP/IP stack that is written by Adam Dunkels
* [LwIP](http://savannah.nongnu.org/projects/lwip/) - a small independent implementation of the TCP/IP protocol suite that has been initially developed by Adam Dunkels. lwIP suitable for use in embedded systems with tens of kilobytes of free RAM and room for around 40 kilobytes of code ROM.
* [wolfSSH](https://www.wolfssl.com/products/wolfssh/) - a lightweight SSHv2 client and server library written in ANSI C and targeted for embedded, RTOS, and resource-constrained environments - primarily because of its small size, speed, and feature set
### web-server
* [mongoose](https://github.com/cesanta/mongoose) - Embedded Web Server Library. It is a multi-protocol embedded networking library with functions including TCP, HTTP client and server, WebSocket client and server, MQTT client and broker and much more.
* [libevhtp](https://github.com/criticalstack/libevhtp) - extremely-fast and secure embedded HTTP servers with ease
## GUI
* [lvgl](https://github.com/lvgl/lvgl) - Powerful and easy-to-use embedded GUI with many widgets, advanced visual effects (opacity, antialiasing, animations) and low memory requirements (16K RAM, 64K Flash)
* [EasyGUI](https://github.com/MaJerle/EasyGUI) - EasyGUI for embedded systems (highly optimized for STM32)
4 years ago
* [TouchGFX](https://www.touchgfx.com/product/overview/) - a user-friendly graphical C++ tool integrated as a free tool in the STM32 ecosystem
* [eGUI](https://github.com/NXPmicro/eGUI) - eGUI embedded graphic library
* [Embedded-graphics](https://github.com/embedded-graphics/embedded-graphics) - a 2D graphics library that is focused on memory constrained embedded devices
* [lv_gui_designer](https://github.com/kaiakz/lv_gui_designer) - a drag-and-drop, simple GUI designer built with LittlevGL
* [walv](https://github.com/kaiakz/walv) - Online, WYSIWYG GUI designer for LittlevGL. Cross-platform supported(Even Android and IOS)
## RTOS
* []()
* []()
* []()
## Uncategorized
* []()
* []()
* []()
* []()
* []()
## Tags
embedded
embedded-systems
rtos
stm32
cortex-m
risc-v