SaaSHub helps you find the best software and product alternatives Learn more →
Similar projects and alternatives to stm32-rs
Open source ARM Cortex-M microcontroller library
This library provides access to STM32 peripherals in Rust.
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
Run embedded programs just like native ones
A lightweight, memory-protected, message-passing kernel for deeply embedded systems.
A Rust embedded-hal HAL for all MCUs in the STM32 F4 family
Peripheral access crate for the ESP32 (by esp-rs)
Yocto/OE BSP layer for the Raspberry Pi boards
Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
Target atsamd microcontrollers using Rust
Arduino IDE 1.x (by arduino)
Low level access to Cortex-M processors
Empowering everyone to build reliable and efficient software.
A refreshingly simple data-driven game engine built in Rust
The Rust package manager
Curated list of resources for Embedded and Low-level development in the Rust programming language
Modern embedded framework, using Rust and async.
Cranelift based backend for rustc
Website for graphing performance of rustc
Debugger for Hubris
A hardware abstraction layer for the esp32 written in Rust.
Python package to handle vendor-supplied, often buggy SVD files.
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
stm32-rs reviews and mentions
Next Rust Compiler
6 projects | news.ycombinator.com | 26 Jan 2023
In real world software, 99% of code is gluing preexisting lower-level functions together. In C/C++, the unsafe is implicit and needlessly covers everything. In Rust, the unsafe is only needed for the 1%.
You can safely implement a doubly-linked list in Rust, using unsafe, and that list can offer a safe interface so that the next higher level of code does not need to use unsafe. In fact, one doubly-linked list implementation that provides a safe interface is in the Rust standard library: https://doc.rust-lang.org/std/collections/struct.LinkedList.... . Most people do not rewrite std::list in C++ either.
Much of the Linux kernel really is the same: normal C code (maybe slightly more complicate than average userspace code, and definitely more carefully reviewed, but definitely not magic), that depends on extra carefully written lower level primitives that are _much_ more complicated internally than they appear from the outside (like the memory allocator, printk, RCU, etc.).
Rust is powerful enough to have libraries for register level access to micro-controllers (e.g. https://github.com/stm32-rs/stm32-rs), that encode moderately complex access rules safely in the type system (e.g. which specific set of bits is read-only or write-only, with which particular values (with nice human-readable names, even!), in which particular states of a state machine depending on other bits), all while allowing bypassing the restrictions with a simple unsafe keyword without even giving up on the nice API.
On the C/C++ side, I've used libopencm3, MBED, CMSIS, and everyone's favorite toy, Arduino. They're, in different ways, all much more mature and complete than anything Rust has today, but nothing comes even remotely close to Rust in terms of safety and long term potential.
NVIDIA Security Team: “What if we just stopped…
2 projects | /r/embedded | 7 Nov 2022
Packages: Where would I start with e.g. running Ada on a stm32? Resources are just a bit tough to find, and there's only a single stm32 package on Alire (which was inspired by cargo). But Rust has easy to find PACs and HALs for everything in the family, plus an official guide to setting up a project, including HIL debugging and unit testing on qemu, that takes about 15 minutes.
Cloning a Rare ISA Card to Use a Rare CD Drive
3 projects | news.ycombinator.com | 3 Oct 2022
> (I threw out all my C/C++ books about 15 years ago - oops!).
The future is here for STM32: https://github.com/stm32-rs/stm32-rs
Is there a database of peripheral implementations for different STM32 MCU parts?
2 projects | /r/stm32 | 5 May 2022
Writing embedded firmware using Rust
10 projects | news.ycombinator.com | 19 Dec 2021
Specifically these Rust register definitions are being auto-generated using SVD files published by the chip vendors (https://www.keil.com/pack/doc/CMSIS/SVD/html/index.html). For stm32 for example there are the auto-generated register definitions: https://github.com/stm32-rs/stm32-rs and then the HAL layers on top that try to build easy to use tools on top of the registers (e.g. an SPI or USART type with write and read functions). e.g. https://github.com/stm32-rs/stm32f4xx-hal for the stm32f4xx line
Any frameworks in Rust for developing on SiFive / ST / NXP boards?
5 projects | /r/embedded | 11 Dec 2021
For STM32, check out the Peripheral Access Crates by the stm32-rs ream. For higher-level access, I wrote This HAL library for STM32. Works on most newer variants, and includes examples for specific peripherals, and simple applications.
2 projects | /r/embedded | 6 Nov 2021
A note from our sponsor - #<SponsorshipServiceOld:0x00007f0920ee07e8>
www.saashub.com | 9 Jun 2023
stm32-rs/stm32-rs is an open source project licensed under Apache License 2.0 which is an OSI approved license.
The primary programming language of stm32-rs is Python.