Rust Embedded

Open-source Rust projects categorized as Embedded

Top 23 Rust Embedded Projects

  • tock

    A secure embedded operating system for microcontrollers

    Project mention: Fedora now has frame pointers | news.ycombinator.com | 2023-02-04

    Unfortunately, it increases the code size by 10%. I was looking into this just last week, and can confirm that it's still a problem on the latest version of Rust nightly: https://github.com/tock/tock/pull/1660

    I wish we could have frame pointers, because they would make working in embedded land so much easier and more reliable, but a 10% increase in code size just isn't worth it.

  • smoltcp

    a smol tcp/ip stack

    Project mention: RFC2217 implementation written in Rust | reddit.com/r/rust | 2022-12-20
  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • Rhai

    Rhai - An embedded scripting language for Rust.

    Project mention: Best language to use as a scripting lang for my rust app | reddit.com/r/rust | 2023-01-13
  • OpenSK

    OpenSK is an open-source implementation for security keys written in Rust that supports both FIDO U2F and FIDO2 standards.

    Project mention: Make Custom Yubikey | reddit.com/r/yubikey | 2022-06-23
  • embassy

    Modern embedded framework, using Rust and async.

    Project mention: I Use C When I Believe in Memory Safety | news.ycombinator.com | 2023-02-05

    > others are just batshit-crazy from my pov (the macro system for instance)

    Ah yes, I won't disagree here; macros get very complex very fast. It's one of the more undercooked parts of Rust.

    > e.g. I don't really see the usefulness of async-await in a systems programming language

    This really depends on the task, but honestly it is genuinely useful. Even in places you wouldn't expect, e.g. in embedded: https://github.com/embassy-rs/embassy

    And AFAIK there are plans to use async Rust in the Linux kernel.

  • rune

    An embeddable dynamic programming language for Rust. (by rune-rs)

    Project mention: -🎄- 2022 Day 13 Solutions -🎄- | reddit.com/r/adventofcode | 2022-12-12

    Late start today as well. I really thought today would be the day that I'd have to abandon my goal of no heap allocations. But, luckily I had an arena allocator available that I could fairly easily adapt to store data on the stack. And with some tweaks we have today's solution:

  • xargo

    The sysroot manager that lets you build and customize `std`

    Project mention: How to fully replace/reimplement std? | reddit.com/r/rust | 2022-05-20

    I think you can use xargo for this with:

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • keyberon

    A rust crate to create a pure rust keyboard firmware.

    Project mention: eskarp: Custom design using ergogen, 3D printed case, RP2040 with Rust firmware | reddit.com/r/ErgoMechKeyboards | 2023-01-06

    https://github.com/TeXitoi/keyberon - keyboard scanning

  • zenoh

    zenoh unifies data in motion, data in-use, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.

    Project mention: This week in Rust 479 - Eclipse Zenoh release | reddit.com/r/rust | 2023-01-26

    The new Eclipse Zenoh 0.7.0 release, codename Charmander, brings to the table many features requested by the community on the Zenoh’s Discord server.

  • anne-key

    Firmware for Anne Pro Keyboard written in Rust

  • atsamd

    Target atsamd microcontrollers using Rust

    Project mention: Rust in Automotive | reddit.com/r/rust | 2022-11-14

    It’s definitely used for “nonsafety” stuff like infotainment. The ATSAMD HAL/PACs are probably the most complete embedded microcontroller family as far as Rust support goes, and that’s a part with heavy intent toward automotive use.

  • PoloDB

    PoloDB is an embedded document database.

    Project mention: PoloDB 3 released | reddit.com/r/rust | 2023-01-13
  • stm32f1xx-hal

    A Rust embedded-hal HAL impl for the STM32F1 family based on japarics stm32f103xx-hal (by stm32-rs)

    Project mention: Bare metal STM32F103C8T6 UART example? | reddit.com/r/embedded | 2022-08-19

    You can also check how the Rust hal does it here :https://github.com/stm32-rs/stm32f1xx-hal/blob/master/examples/serial.rs

  • opcua

    A client and server implementation of the OPC UA specification written in Rust

  • nrf-hal

    A Rust HAL for the nRF family of devices

    Project mention: Any good examples of using embedded Rust with an existing embedded C codebase? | reddit.com/r/rust | 2022-10-12

    Reading nrf-hal source, unfortunately new does re-configure the UARTE, and there is not a new_unchecked. The solution I can think of is to duplicate the write code with nrf52833_hal::pac::UARTE0. The Uarte type does not contain any metadata, it exists purely to guard the init of UARTE.

  • rusty-clock

    An alarm clock with environment stats in pure bare metal embedded rust

  • esp-hal

    no_std Hardware Abstraction Layers for ESP32 microcontrollers

    Project mention: How to write HALs and get into microcontroller programming | reddit.com/r/rust | 2022-09-13

    There is https://docs.rust-embedded.org/book/design-patterns/hal/index.html but I wonder what OP is missing in https://github.com/esp-rs/esp-hal

  • scapegoat

    Safe, fallible, embedded-friendly ordered set/map via a scapegoat tree. Validated against BTreeSet/BTreeMap. (by tnballo)

  • gdbstub

    An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full no_std support.

    Project mention: A fast STM32 embedded system emulator implemented in Rust | reddit.com/r/rust | 2022-07-24

    now integrate gdbstub to support debugging code inside the emulator :)

  • FreeRTOS-rust

    Rust crate for FreeRTOS

    Project mention: How to fully replace/reimplement std? | reddit.com/r/rust | 2022-05-20

    Maybe, this will help you: https://github.com/lobaro/FreeRTOS-rust

  • esp-idf-hal

    embedded-hal implementation for Rust on ESP32 and ESP-IDF

    Project mention: What the HAL? The Quest for Finding a Suitable Embedded Rust HAL | dev.to | 2023-01-30

    HALs with std support: This is exclusive to ESP32 devices right now.

  • linux-embedded-hal

    Implementation of the `embedded-hal` traits for Linux devices

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-02-05.

Rust Embedded related posts

Index

What are some of the best open-source Embedded projects in Rust? This list will help you:

Project Stars
1 tock 4,130
2 smoltcp 2,854
3 Rhai 2,485
4 OpenSK 2,395
5 embassy 1,487
6 rune 1,121
7 xargo 1,002
8 keyberon 745
9 zenoh 683
10 anne-key 559
11 atsamd 441
12 PoloDB 440
13 stm32f1xx-hal 417
14 opcua 370
15 nrf-hal 360
16 rusty-clock 314
17 esp-hal 236
18 scapegoat 222
19 gdbstub 216
20 FreeRTOS-rust 205
21 esp-idf-hal 191
22 linux-embedded-hal 161
23 flip-link 155
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com