Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
Awesome-Embedded
A curated list of awesome embedded programming.
https://github.com/nhivp/Awesome-Embedded
Last synced: 5 days ago
JSON representation
-
Interview
- Embedded Interview Questions
- Interview Questions Archive by Company
- coding-interview-university - A complete computer science study plan to become a software engineer.
- Coding Interview University - A complete computer science study plan to become a software engineer.
-
Embedded Software Skill
-
Common
- Integer size in C on 32-bit and 64-bit system
- TeraTerm - TTL command reference
- TeraTerm Scripts
- Linker Command File Primer
- The C build process
- Building Bare-Metal ARM Systems with GNU
- Toolchains
- What is an application binary interface (ABI)?
- ARM Cortex M4 Blink Example (Linker Script)
- A Sample Linker Script
- Linking and Loading
- Embedded Software _ Getting started
- How to convert from an armlink scatter file to a GNU ld linker script
- Using the GNU Linker
- A Sample Linker Script
- ELF – Executable and Linkable Format
-
MCU programming
-
Bare-metal programming (Don't need MCU)
- Simplest bare metal program for ARM - emulation/))
- Bare metal programming guide - a detailed guide for beginners
- Real-Time C++ - companion bare-metal code to Real-Time C++ book.
-
MSP430
- MSP430-GCC
- CS4101: Introduction to Embedded Systems - The course is designed around labs, using TI MSP430 LaunchPad and Arduino Uno to discuss concepts such as basic I/O, timing and clocking, interupt handling, serial communication, embedded operating systems, synchronization, etc.
- msp430-template - A template for MSP430 firmware.
- MSP430 reference
-
TM4C123
- EmbeddedSystems.Playground
- Macros in TivaWare
- Analog to Digital Conversion, Data Acquisition and Control
- Embedded Systems - Shape The World
- HowTo: Develop on the TI Tiva LaunchPad using Linux
- The complete tutorial for Stellaris LaunchPad development with GNU/Linux (I)
- Getting Started with the TI Stellaris LaunchPad on Linux
- Embedded Systems with TM4C123 @Valvano
- Create FreeRTOS Demo Project using the GCC Compiler
- Serial bootloader on TM4C12x Microcontroller
- Tivaware bootloader
- Diagnosing Common Development Problems and Tips & Info for TM4C Devices
- FreeRTOS-GCC-tm4c123glx - A port of FreeRTOS to the Texas Instruments Tiva TM4C123GLX Launchpad.
- Stellaris_TM4C123G_GCC_Template - Texas Instruments template project for the TM4C123 series using GNU toolchain.
- Drivers and examples - Drivers for internal peripherals and external modules for Tiva C, examples of FreeRTOS features under development/FreeRTOS
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
- Tivaware bootloader
-
STM32
- STM32 bootloader
- Open source flash program for STM32 using the ST serial bootloader
- stm32l1xx-template - A template for building firmware for the STM32L1xx.
- stm32f4xx with Rust at the HAL - A series of tutorials for building STM32F4xx applications with Rust.
-
STM32F7
-
-
Raspberry
-
ESP8266
- Raspberry Pi Bare Metal
- ChibiOS/RT on the Raspberry Pi
- Open Projects: Raspberry, Beaglebone BSP
- A Real-Time Operating System on the Raspberry Pi
- FreeRTOS Sucessfully Ported
- Exploring AArch64 assembler - Raspberry
- Bare Metal Raspberry Pi
- Bare Metal Programming in C
- Search for 'Raspberry' topic on Github
- elinux: Raspberry Pi Programming
- Computer Systems
- 64 bit Bare Metal Programming on RPI-3
- Raspberry Pi 3 Bare Metal
- Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux {book}
- Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux {website}
- Baking Pi – Operating Systems Development
- FreeRTOS Sucessfully Ported
- Stanford CS104e - An Experimental Course on Operating Systems
-
-
Beaglebone
-
ESP8266
- BeagleBone Black I2C References
- Learning BeagleBone Python Programming
- Windows Embedded Compact BSP for TI's Beaglebone
- Running a Baremetal Beaglebone Black - a-baremetal-beaglebone-black-part-2/)
- Bare Metal on the BeagleBone (Black and Green)
- A tutorial on bare-metal [OS
- bare metal c project for beaglebone, ti sitara am335x
- Bare Metal Applications on OSD335x using U-Boot
- Beaglebone - Getting started with JTAG and CCS
- BeagleBoardJTAG
-
-
Linux kernel and device driver development
-
ESP8266
- Writing device drivers in Linux
- YOLINUX Tutorials
- Linux driver programming
- Free training materials and conference presentations
- eBook: Linux Drivers
- OpenEmbedded
- Start linux kernel module development!
- Yocto Project - Create custom Linux-based systems regardless of the hardware architecture.
- Buildroot - Simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation.
-
-
Assembly
-
RTOS
-
ESP8266
- List of open source real-time operating systems
- ROS
- FreeRTOS
- FreeRTOS - Explaination
- FreeRTOS API Reference Documentation
- How to Write a Small RTOS
- RTOS From Scrach
- MPSoC FreeRTOS Development
- Atomthreads: Open Source RTOS
- High performance motor control
- MINIX3: Open source RTOS
- OSDEV.org
- Real-time System Group
- How I ended up writing a new real-time kernel
- CoRTOS - simple/) - An open source minimalist RTOS.
- TNKernel - a compact and very fast real-time kernel for the embedded 32/16/8 bits microprocessors.
- Femto OS - a very concise portable real time - preemptive operating system (RTOS) for embedded microcontrollers with minimal ram and flash, say 2KB .. 16KB flash and 128 .. 1024 bytes ram.
- RT-Thread for Raspberry Pi 2B
- µOS++ Reference
- CoRTOS - simple/) - An open source minimalist RTOS.
-
-
Automotive
-
ESP8266
- automotive software(OSEK & AUTOSAR) - Because I am not powerful so I decided to develop tiny but smart part of automotive software based on open source, and create a general AUTOSAR & Automotive Software study environment.
-
-
OS
-
ESP8266
- ucLinux
- Tizen
- Kernel 101 – Let’s write a Kernel
- The little book about OS development
- JamesM's kernel development tutorials
- Bare Bones - a simple kernel for 32-bit x86 and boot it.
- Operating System Development Series
- 7 Steps to Writing a Simple Cooperative Scheduler
- Writing a Simple Operating System from Scratch
-
-
WindowCE
-
Compiler
-
ESP8266
-
-
Bootloader
-
ESP8266
- Writing a boot loader in Assembly and C
- Writing a Bootloader Part 3
- Writing a Bootloader Part 1
- Bootloaders 101
- link1 - the-microcontroller-boot-process/), [link3](https://www.eevblog.com/forum/microcontrollers/copy-data-from-rom-to-ram-and-execute/)
-
-
Makefile
-
Peripheral
-
Others
-
USB
- A practical approach to Kalman filter and how to implement it
- Embedded System programming
- ELC 2018 Presentations
- ARM Edition
- The gem5 Simulator - known sophisticated simulator used for computer system research at both architecture and micro-architecture levels. Main page is [here](http://gem5.org/Main_Page).
- LineageOS Android Distribution
- The NoCAN platform
- Realtime OS on Embedded Systems
- These projects were produced in the five weeks of ECE 4760 each year.
- A Development Environment for ARM TrustZone with GlobalPlatform Support
-
-
Embedded GUI Development
-
USB
- Embedded Wizard - Sophisticated GUI for Your Embedded Platform
- lvgl - Graphics library to create an embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.
-
-
Machine Learning & AI on MCU
-
USB
- CMSIS NN - A collection of efficient neural network kernels developed to maximize the performance and minimize the memory footprint of neural networks on Cortex-M processor cores.
- ARM Compute Library - Set of optimized functions for image processing, computer vision, and machine learning.
-
-
Tips & tricks
-
USB
- Awesome Cheat Sheets
- GNU GDB Debugger Command Cheat Sheet
- What a C programmer should know about memory
- What Every Programmer Should Know About Memory
- A Guide to Undefined Behavior in C and C++
- Software Engineering Takeaways
- Embedsys weekly newsletter
- What Every C Programmer Should Know About Undefined Behavior - every-c-programmer-should-know_14.html) [part 3](http://blog.llvm.org/2011/05/what-every-c-programmer-should-know_21.html)
-
-
FAQ_Embedded
-
Looking for more lists like this?
-
BOOKs
Categories
MCU programming
59
RTOS
20
Raspberry
18
Common
16
Others
10
Beaglebone
10
Linux kernel and device driver development
9
OS
9
Tips & tricks
8
WindowCE
5
Bootloader
5
Looking for more lists like this?
4
Interview
4
Embedded Software Skill
4
FAQ_Embedded
2
BOOKs
2
Machine Learning & AI on MCU
2
Peripheral
2
Assembly
2
Makefile
2
Embedded GUI Development
2
Automotive
1
Compiler
1
Sub Categories
Keywords
stm32
2
arduino
2
embedded-systems
2
gpio
1
gcc
1
ethernet
1
embedded-webserver
1
embedded-web-server
1
cmsis
1
baremetal
1
arm
1
system-programming
1
rust-lang
1
programming-language
1
operating-system
1
low-level-programming
1
low-level
1
linux-kernel-hacking
1
linux-kernel
1
hardware
1
firmware
1
c-programming
1
assembly-language-programming
1
assembly
1
rpi
1
resources
1
raspberry-pi
1
list
1
awesome-list
1
study-plan
1
software-engineering
1
programming-interviews
1
interview-preparation
1
interview-prep
1
interview
1
data-structures
1
computer-science
1
coding-interviews
1
coding-interview
1
algorithms
1
algorithm
1
realtime
1
microcontroller
1
high-performance
1
embedded
1
cpp20
1
cpp17
1
cpp14
1
cpp11
1
cpp
1