Awesome-Embedded / Interview |
Embedded Interview Questions | | | |
Interview Questions Archive by Company | | | |
Coding Interview University | 306,974 | 2 months ago | A complete computer science study plan to become a software engineer |
Awesome-Embedded / Embedded Software Skill |
16 Essential Skills for Embedded Engineer | | | |
How to be low-level programmer | 10,382 | 2 months ago | |
Programmer Competency Matrix | | | |
Awesome-Embedded / 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 | | | |
ELF – Executable and Linkable Format | | | |
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 | | | |
Modern Embedded Systems Programming Course | 699 | 14 days ago | Learn from the basics to modern embedded programming practice |
|
Simplest bare metal program for ARM | | | ( ) |
Bare metal programming guide | 3,292 | 3 months ago | a detailed guide for beginners |
Real-Time C++ | 606 | 26 days ago | companion bare-metal code to Real-Time C++ book |
Awesome-Embedded / MCU programming / 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 | | | |
Awesome-Embedded / MCU programming / TM4C123 |
EmbeddedSystems.Playground | 33 | almost 4 years ago | |
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 | | | |
Linux command line build system to generate binaries for TM4C123 (ARM Cortex M4) | 21 | over 5 years ago | |
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 |
tm4c-gcc | 7 | over 9 years ago | TM4C123 GCC project template |
tivaapps | 15 | over 10 years ago | Example hello-world apps for Texas Instruments TI-RTOS for Tiva C using a Linux host |
Drivers and examples | 35 | 9 months ago | Drivers for internal peripherals and external modules for Tiva C, examples of FreeRTOS features under development/FreeRTOS |
Awesome-Embedded / MCU programming / MSP432 |
Real-Time Bluetooth Networks - UTAustinX | 25 | almost 8 years ago | Learn the design fundamentals of a real-time operating system (RTOS) and how to build a Bluetooth network in this hands-on project-based course |
Awesome-Embedded / MCU programming / STM32 |
STM32 bootloader | | | |
Tests to program STM32 Nucleo in C with GCC ARM embedded toolchain and libopencm3 | 31 | over 6 years ago | |
A demo project of FreeRTOS running on a STM32F4 Discovery board. | 154 | over 6 years ago | |
DFU Bootloader for STM32 chips | 337 | 10 months ago | |
Customizable Bootloader for STM32 microcontrollers. | 896 | almost 2 years ago | |
Lightweight USB device Stack for STM32 microcontrollers | 719 | 6 months ago | |
STM32 programming with Embedded GNU Compiler | 91 | about 5 years ago | |
A tiny portable 3D graphics lib for micro controllers (Oled display) | 147 | about 6 years ago | |
Getting started with the STM32F4-Discovery board using the EmBitz IDE | 1 | about 7 years ago | |
libopencm3 and FreeRTOS projects using the STM32F103C8T6 MCU | 327 | about 1 year ago | |
A template for builting STM23F0 ARM projects with GCC | 123 | about 2 years ago | |
Open source flash program for STM32 using the ST serial bootloader | | | |
stm32-hid-bootloader | 162 | over 3 years ago | Driverless USB HID bootloader and flashing tool for STM32F10X devices |
stm32l1xx-template | | | A template for building firmware for the STM32L1xx |
STM32F103C8 Examples | 839 | about 6 years ago | |
stm32f103 | 101 | 12 months ago | Bare metal programming on a generic STM32F103c8 board |
stm32_samples | 100 | about 2 years ago | |
stm32f4de example code | 65 | over 8 years ago | |
stm32f4xx with Rust at the HAL | | | A series of tutorials for building STM32F4xx applications with Rust |
stm32-rf-scanner | 13 | 11 months ago | STM32 and nRF24L01+ based 2.4GHz RF scanner |
stm32-dc-dc | 20 | 11 months ago | STM32 based DC-DC converter |
rustlink | 3 | over 1 year ago | small set of Rust tools to program STM32 devices |
Awesome-Embedded / MCU programming / STM32F7 |
STM32F7 Series | | | |
STM32 eLinux | | | |
STM32F7 os.mbed | | | |
Awesome-Embedded / MCU programming / STM8 |
stm8-bare-min | 120 | about 2 years ago | Tiny peripheral library for STM8S |
stm8-bootloader | 95 | over 5 years ago | Serial bootloader for STM8S microcontrollers |
stm8-multi-tasker | 9 | almost 7 years ago | STM8-Multi-Tasker - Preemptive/Cooperative Round Robin Scheduler for STM8 |
Wolk STM8 stuff | 33 | over 9 years ago | |
STM8S001J3_tiny_board | 4 | about 4 years ago | A tiny dev board for STM8S001J3 MCU designed in KiCad |
Awesome-Embedded / MCU programming / ESP8266 |
An open source bootloader for the ESP8266 | 302 | over 5 years ago | |
An esp8266 rom creation tool | 61 | over 5 years ago | |
Wi-FI ESP8266 learning journey | 695 | over 3 years ago | |
Wi-FI ESP32 learning journey | 455 | about 1 month ago | |
Sming - ESP8266/ESP32 IoT Framework | 1,480 | 16 days ago | |
Awesome-Embedded / Raspberry |
Raspberry Pi Bare Metal | 1 | over 8 years ago | & |
ChibiOS/RT on the Raspberry Pi | | | |
Raspberry Pi ARM based bare metal examples | 2,709 | over 1 year ago | |
Bare metal Raspberry Pi 3 tutorials | 2,732 | 5 months ago | |
Open Projects: Raspberry, Beaglebone BSP | | | |
A Real-Time Operating System on the Raspberry Pi | | | |
A port of FreeRTOS to the raspberry pi | 481 | almost 7 years ago | |
FreeRTOS Sucessfully Ported | | | |
Exploring AArch64 assembler - Raspberry | | | |
A bootloader for the Raspberry Pi using the ethernet device | 11 | over 9 years ago | |
Bare Metal Raspberry Pi | | | |
Bare Metal Programming in C | | | |
Baking Pi – Operating Systems Development | | | |
Search for 'Raspberry' topic on Github | | | |
elinux: Raspberry Pi Programming | | | or |
Stanford CS104e - An Experimental Course on Operating Systems | | | |
Computer Systems | | | |
Build a Debian-based ARM64 system for Raspberry Pi 3 | 93 | over 5 years ago | |
Learning operating system development using Linux kernel and Raspberry Pi | 13,222 | 8 months ago | |
A port of FreeRTOS to the raspberry pi 2B. With USB+Ethernet+TCP/IP. | 142 | over 7 years ago | |
64-bit Tiano Core UEFI for the Raspberry Pi 3 | 744 | almost 5 years ago | |
CXCORE-RaspberryPi3-ubuntu-18.04-aarch64 | | | |
Sample source: Baremetal source code for Raspberry | 309 | over 5 years ago | |
Sample source: NarcOS - A bare metal ultralight kernel for Raspberry Pi 3 | 22 | over 6 years ago | |
Sample source: FreeRTOS v9.0.0 port for Raspberry Pi 1 | 9 | about 6 years ago | |
Sample source: A bare-metal experiments with the RaspberryPi | 8 | almost 5 years ago | |
「BareMetalで遊ぶ Raspberry Pi」のプログラムです。 | 46 | over 6 years ago | |
UEFI for RaspberryPi2 and RaspberryPi3 based on Linaro EDK2 | 98 | about 5 years ago | |
ARM-episodes | 78 | almost 7 years ago | & |
ARM shellcode and exploit development - BSidesMunich 2018 | 106 | over 6 years ago | |
64 bit Bare Metal Programming on RPI-3 | | | |
Raspberry Pi 3 Bare Metal | | | |
Assembly code for Raspberry Pi | 3 | almost 7 years ago | |
A public Baremetal Raspberry Pi code | 309 | over 5 years ago | |
Raspberry-Pi Bare Metal Tutorial | 590 | almost 4 years ago | |
uCOS-II on Raspberry Pi | 28 | over 11 years ago | |
Porting uCOSII to the raspberry pi A+/B+/2B | 2 | over 9 years ago | |
Bare-metal examples | 30 | over 9 years ago | |
Bare-metal lab | 22 | over 9 years ago | |
Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux {book} | | | |
Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux {website} | | | |
Awesome-Embedded / Beaglebone |
BeagleBone Black I2C References | | | |
Learning BeagleBone Python Programming | | | |
Simple implementation of an OS for the BeagleBoard C4 with ARMv7 A8 processor. | 1 | over 6 years ago | |
Various projects that utilize low level hardware instructions to interface with leds, speaker output and joystick input. | 2 | over 2 years ago | |
Windows Embedded Compact BSP for TI's Beaglebone | | | |
BBB-BareMetal | 123 | 7 months ago | Works on the beaglebone black (bare metal) |
Running a Baremetal Beaglebone Black | | | & |
Bare Metal on the BeagleBone (Black and Green) | | | & + |
A tutorial on bare-metal [OS] development on the Texas Instruments BeagleBoard. | | | |
bare metal c project for beaglebone, ti sitara am335x | 6 | over 9 years ago | |
Bare Metal Applications on OSD335x using U-Boot | | | |
bbb-asm-demo | 18 | over 3 years ago | Extremely tiny baremetal application for BeagleBone Black |
Beaglebone - Getting started with JTAG and CCS | | | |
BeagleBoardJTAG | | | |
beaglebone_samples | 9 | about 8 years ago | |
FreeRTOS for BeagleBone Black | 11 | over 10 years ago | |
Awesome-Embedded / Linux kernel and device driver development |
Linux inside | 30,018 | 4 months ago | A little bit about a linux kernel |
Writing device drivers in Linux | | | |
YOLINUX Tutorials | | | |
Linux driver programming | | | |
Free training materials and conference presentations | | | |
eBook: Linux Drivers | | | or |
c-periphery | 742 | 7 months ago | A C library for peripheral I/O (GPIO, SPI, I2C, MMIO, Serial) in Linux |
OpenEmbedded | | | , |
Linux driver practices | 78 | 9 months ago | |
Linux Kernel Exploitation | 5,627 | 20 days ago | A bunch of links related to Linux kernel exploitation |
Linux Kernel Module Cheat | 4,197 | about 2 months ago | |
Start linux kernel module development! | | | |
Minimal Linux Live | 1,543 | 9 months ago | a tiny educational Linux distribution |
low-level programming university #linux-kernel-and-device-driver | 10,382 | 2 months ago | |
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 |
Awesome-Embedded / Assembly |
GCC-Inline-Assembly-HOWTO | | | |
Assembly programming | | | |
Awesome-Embedded / RTOS |
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 | | | |
mini-arm-os & qemu with a stm32 | 180 | about 7 years ago | or - Build a minimal multi-tasking OS kernel for ARM Cortex-M series from scratch |
Writing a simple operating system from scratch | | | |
Free real-time operating system (RTOS) designed for deeply embedded applications | 170 | 7 months ago | |
MPSoC FreeRTOS Development | | | |
Atomthreads: Open Source RTOS | | | |
High performance motor control | 2,962 | about 2 months ago | |
MINIX3: Open source RTOS | | | |
30 Days make OS | 5,964 | 8 months ago | --> @ |
OSDEV.org | | | Community: , |
Real-time System Group | | | |
object-oriented C++ RTOS for microcontrollers | 432 | 23 days ago | |
RT-Thread is an open source IoT operating system from China. | 10,540 | 6 days ago | |
How to create an OS from scratch | 27,278 | 4 months ago | |
Sample Source: TetrOS is a small feature rich Tetris clone which is written in Assembly. | 770 | almost 8 years ago | |
Sample Source: RTOS for microcontrollers | 200 | almost 4 years ago | |
Sample Source: A Powerful embedded RTOS for ARM Cortex M microcontrollers | 116 | 6 months ago | |
Sample Source: An embedded operating system for ARM Cortex-M based microcontrollers | 47 | over 4 years ago | |
Sample Source: rnk is a RTOS targeting ARM architecture. | 25 | 14 days ago | |
Sample Source: RTOS-From-Scratch | 18 | over 7 years ago | |
Sample Source: Embeded OS for PIC32MX270F256B | 5 | over 6 years ago | |
How I ended up writing a new real-time kernel | | | |
Sample Source: TNeo - a well-formed and carefully tested preemptive real-time kernel for 16- and 32-bits MCUs | 233 | over 2 years ago | |
yaos is an embedded operating system for Internet of Things(IoT) devices, specifically for a single-core processor without MMU virtualization. | 47 | over 4 years ago | |
RT-Thread for Raspberry Pi 2B | | | |
tock | 5,452 | 6 days ago | A secure embedded operating system for Cortex-M based microcontrollers |
AliOS-Things | 4,585 | over 1 year ago | AliOS Things released by Alibaba is an open-source implementation of operating system (OS) for Internet of Things (IoT) |
CoRTOS | | | & - An open source minimalist RTOS |
µOS++ Reference | | | |
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 |
Awesome-Embedded / Automotive |
Sample Source: Trampoline is a static RTOS for small embedded systems. | 619 | 6 months ago | & |
Sample source: An integration an example AUTOSAR project which every part in AUTOSAR (OS, RTE, BSW, MCAL) are collected from different open source. | 354 | over 6 years ago | |
automotive software(OSEK & AUTOSAR) | 990 | almost 2 years ago | 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 |
Awesome-Embedded / OS |
ucLinux | | | : The Embedded Linux/Microcontroller project is a port of Linux to systems without a Memory Management Unit (MMU) |
Tizen | | | |
Bootstrap yourself to write an OS from scratch. A book for self-learner. | 12,006 | 8 months ago | |
Kernel 101 – Let’s write a Kernel | | | |
The little book about OS development | | | |
TetrOS | 770 | almost 8 years ago | Tetris that fits into the boot sector |
Writing a Simple Operating System from Scratch | | | |
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 | | | |
A simple OS kernel for research, teaching, and fun | 801 | 7 months ago | |
Operating Systems C Term 2018 | 20 | about 6 years ago | |
Awesome-Embedded / WindowCE |
GuruCE Blog | | | |
Windows CE Base Team Blog | | | |
DevWinCE blog | | | |
Windows Embedded Compact BSP for Raspberry Pi | | | |
Windows Embedded Board Support Package for BeagleBone | | | |
Awesome-Embedded / Compiler |
ARM Compiler - armasm User Guide | | | |
Awesome-Embedded / Bootloader |
Writing a boot loader in Assembly and C | | | |
Writing a Bootloader Part 3 | | | |
A bootloader for ARM Cortex-M based microcontrollers | 22 | about 5 years ago | |
OpenBLT | 676 | 2 months ago | an open source and portable bootloader for microcontrollers |
ARMv7M ELF loader | 98 | about 1 year ago | |
Writing a Bootloader Part 1 | | | |
can-bootloader | 146 | almost 2 years ago | The bootloader used to flash our CAN-connected boards |
Bootloaders 101 | | | |
link1 | | | Understand boot process: , , |
Awesome-Embedded / Makefile |
Managing projects with GNU Make | | | |
GCC and Make | | | |
Awesome-Embedded / Peripheral / Memory Protection Unit |
Building Hardware Components for Memory Protection of Applications on a Tiny Processor | | | |
KeyStone Architecture: Memory Protection Unit (MPU) | | | |
Awesome-Embedded / Peripheral / USB |
tinyusb | 5,079 | 7 days ago | An open source USB stack for a variety of Embedded Systems |
Awesome-Embedded / Others |
A practical approach to Kalman filter and how to implement it | | | |
Embedded System programming | | | : Diving into Syllabus for investigation |
ELC 2018 Presentations | | | |
ARM Edition | | | : Sparky ARM Edition is a Sparky version created for a single board mini computer RaspberryPi |
The gem5 Simulator | | | is a well-known sophisticated simulator used for computer system research at both architecture and micro-architecture levels. Main page is |
LineageOS Android Distribution | | | |
The NoCAN platform | | | |
Realtime OS on Embedded Systems | | | |
These projects were produced in the five weeks of ECE 4760 each year. | | | |
Advanced fault backtrace library for ARM Cortex-M series MCU | 1,685 | 3 months ago | |
mcu-starter-projects | 313 | 11 months ago | Simple starter projects for bare-metal MCU development |
DirtyJTAG | 483 | 2 months ago | JTAG adapter firmware for STM32F1 |
Generic_MCU_Software_Infrastructure | 179 | 9 months ago | Provide necessary software infrastructure, service, macros to support some high level abstruct concept or paradigm, such as OOPC, FSM, delegate (event-driven) and etc |
apollo | 25,218 | 10 days ago | An open autonomous driving platform |
A Development Environment for ARM TrustZone with GlobalPlatform Support | | | |
A C++ template library for embedded applications | 2,244 | 8 days ago | |
Embedded rework of C++ STL | 51 | 4 days ago | , etc. leaned way down. Cross platform (including AVR) |
Awesome-Embedded / Embedded GUI Development |
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 |
Awesome-Embedded / Machine Learning & AI on MCU |
nnom | 950 | 8 months ago | A higher-level Neural Network library for microcontrollers |
nn4mp | 29 | almost 3 years ago | |
Embedded Learning Library (ELL) | 2,285 | 6 months ago | Microsoft's library to deploy intelligent machine-learned models onto resource constrained platforms and small single-board computers |
Qualcomm Neural Processing SDK for AI | | | Libraries to developers run NN models on Snapdragon mobile platforms taking advantage of the CPU, GPU and/or DSP |
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 |
uTensor | 1,729 | 20 days ago | AI inference library based on mbed (an RTOS for ARM chipsets) and TensorFlow |
EmbededAI | 13 | about 2 years ago | A library that provides elements of AI to C++ applications |
kann | 686 | almost 3 years ago | A lightweight C library for artificial neural networks |
m2cgen | 2,816 | 4 months ago | A CLI tool which allows to transpile trained classic ML models into a native code of various programming languages with zero dependencies including C |
Awesome-Embedded / Utilities |
lm4tools | 203 | about 6 years ago | |
mspdebug | 190 | about 1 year ago | Debugging tool for MSP430 MCUs |
pycs | 74 | over 1 year ago | Python Based ARM CoreSight Debug and Trace Tools |
NaiveSystems Analyze | 174 | 9 days ago | Static Analysis Tool for Code Security and Compliance |
Serial Studio | 4,463 | 3 days ago | Visualize, analyze and stream over the internet data generated by your MCU project |
Tech blogs |
What a C programmer should know about memory | | | |
What Every Programmer Should Know About Memory | | | |
What Every C Programmer Should Know About Undefined Behavior | | | |
A Guide to Undefined Behavior in C and C++ | | | |
Software Engineering Takeaways | | | |
Embedsys weekly newsletter | | | |
Tech blogs / FAQ_Embedded |
Boot section is removed (gcc, ld, ar, as) | | | |
What are .axf files? | | | |
Tech blogs / Looking for more lists like this? |
awesome-c | 1,932 | 4 days ago | A curated list of awesome C frameworks, libraries and software |
A curated list of project-based tutorials in C | | | |
Curated list of project-based tutorials | 204,096 | 3 months ago | |
Curated list of awesome lists | 334,113 | about 8 hours ago | |
A curated list of awesome Raspberry Pi tools, projects, images and resources | 13,638 | 21 days ago | |
Curated List of Self-Driving Cars and Autonomous Vehicles Resources | 2,198 | 8 months ago | |
awesome-embedded-systems | 788 | 11 months ago | |
awesome-cheat-sheets | 114 | 11 months ago | Awesome Cheat Sheets for Developer Utility, like Git, Vim, Tmux, Sublime Text, Markdown, Shell |
awesome-embedded-rust | 6,312 | 12 days ago | Curated list of resources for Embedded and Low-level development in the Rust programming languague |
theEmbeddedNewTestament.github.io | 315 | over 1 year ago | |
Tech blogs / BOOKs |
Mastering the Raspberry Pi | | | |
Modern C | | | |