All Projects → embeddedartistry → Embedded Resources

embeddedartistry / Embedded Resources

Licence: cc0-1.0
Embedded Artistry Templates, Documents, and Source Code

Programming Languages

c
50402 projects - #5 most used programming language
cpp
1120 projects
cpp11
221 projects
cpp14
131 projects

Projects that are alternatives of or similar to Embedded Resources

Embedded UKF Library
A compact Unscented Kalman Filter (UKF) library for Teensy4/Arduino system (or any real time embedded system in general)
Stars: ✭ 31 (-91.39%)
Mutual labels:  embedded, embedded-systems
STM32F10x Servo Library
Servo library with stm developed by the Liek Software Team. We are working on new versions.
Stars: ✭ 14 (-96.11%)
Mutual labels:  embedded, embedded-systems
openncc
OpenNCC Kit
Stars: ✭ 23 (-93.61%)
Mutual labels:  embedded, embedded-systems
Lwesp
Lightweight Espressif AT parser library for ESP8266 and ESP32 devices.
Stars: ✭ 212 (-41.11%)
Mutual labels:  embedded-systems, embedded
lwprintf
Lightweight printf library optimized for embedded systems
Stars: ✭ 98 (-72.78%)
Mutual labels:  embedded, embedded-systems
Libonnx
A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.
Stars: ✭ 217 (-39.72%)
Mutual labels:  embedded-systems, embedded
w1-gpio-cl
Command line configured kernel mode 1-wire bus master driver. w1-gpio standard Linux module enhancement/substitution.
Stars: ✭ 17 (-95.28%)
Mutual labels:  embedded, embedded-systems
Hfsm2
High-Performance Hierarchical Finite State Machine Framework
Stars: ✭ 134 (-62.78%)
Mutual labels:  embedded-systems, embedded
kocherga
Robust platform-agnostic Cyphal/DroneCAN bootloader for deeply embedded systems
Stars: ✭ 21 (-94.17%)
Mutual labels:  embedded, embedded-systems
BIPES
BIPES: Block based Integrated Platform for Embedded Systems allows text and block based programming for several types of embedded systems and Internet of Things modules using MicroPython, CircuitPython, Python or Snek. You can connect, program, debug and monitor several types of boards using network, USB or Bluetooth. No software install needed!
Stars: ✭ 72 (-80%)
Mutual labels:  embedded, embedded-systems
Awesome Embedded Rust
Curated list of resources for Embedded and Low-level development in the Rust programming language
Stars: ✭ 2,805 (+679.17%)
Mutual labels:  embedded-systems, embedded
esm
Lightweight communicating state machine framework for embedded systems
Stars: ✭ 21 (-94.17%)
Mutual labels:  embedded, embedded-systems
Libcanard
A compact implementation of the UAVCAN/CAN protocol in C for high-integrity real-time embedded systems
Stars: ✭ 151 (-58.06%)
Mutual labels:  embedded-systems, embedded
Libhydrogen
A lightweight, secure, easy-to-use crypto library suitable for constrained environments.
Stars: ✭ 247 (-31.39%)
Mutual labels:  embedded-systems, embedded
Statecharts
YAKINDU Statechart Tools (http://www.statecharts.org)
Stars: ✭ 145 (-59.72%)
Mutual labels:  embedded-systems, embedded
mish
A no-std libm implementation in Rust
Stars: ✭ 14 (-96.11%)
Mutual labels:  embedded, embedded-systems
Embedded Ide
IDE for C embedded development centered on bare-metal ARM systems
Stars: ✭ 127 (-64.72%)
Mutual labels:  embedded-systems, embedded
Szl
A lightweight, embeddable scripting language
Stars: ✭ 134 (-62.78%)
Mutual labels:  embedded-systems, embedded
pydevmem
Python interface to /dev/mem
Stars: ✭ 41 (-88.61%)
Mutual labels:  embedded, embedded-systems
o1heap
Constant-complexity deterministic memory allocator (heap) for hard real-time high-integrity embedded systems
Stars: ✭ 119 (-66.94%)
Mutual labels:  embedded, embedded-systems

embedded-resources

Embedded Artistry Public Resources

Contains templates, documents, and source code examples referenced on https://embeddedartistry.com.

Table of Contents

  1. Requirements
    1. git-lfs
    2. meson
  2. Structure
  3. Building

Requirements

This repository uses submodules. You can clone the repository recursively to automatically setup submodules:

$ git clone https://github.com/embeddedartistry/embedded-resources.git --recursive

You can also initialize submodules after cloning:

$ git submodule update --init --recursive

git-lfs

This repository requires git-lfs. If you do not have this installed, please visit https://git-lfs.github.com

If you cloned this repository before installing git-lfs, please run git lfs pull. Otherwise clone will automatically perform a git lfs pull.

meson

This repository builds with meson, which requires Python 3 and Ninja.

On Ubuntu these can be easily installed with the following command:

$ sudo apt-get install python3 python3-pip ninja-build

For OSX, you can use brew:

$ brew install python3 ninja

The best way to get Meson is through pip:

$ pip3 install meson

Structure

  • build/
    • Common build scripts and definitions
  • docs
    • Open-source project templates and reference documentation
  • examples/
    • c/
      • C examples for the Embedded Artistry website
    • cpp/
      • C++ examples for the Embedded Artistry website
    • libc/
      • Example libc implementations
    • libcpp/
      • Example libcpp implementations
  • interview/
    • Example interview question implementations
  • manufacturing/
    • Documents & templates that are useful for the manufacturing side of the embedded world.

Building

You can run make from the top level to build all examples. Output will be placed in a folder called buildresults/ at the top level.

You can also use the proper meson syntax:

$ meson buildresults
$ cd buildresults
$ ninja

Targets can be built individually by using the ninja interface in the buildresults/ directory.

$ cd buildresults
$ ninja interview/bad_c

To clean the builds, run make clean from the project root or ninja clean in the buildresults/ directory.

Binaries will be stored under the buildresults/ folder at the same hierarchical level as in the source tree.For example, the bad_c interview demo application will be in buildresults/interview/.

Further Reading

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].