I've found Rust to work well on Stm32, due to outstanding PAC and Cortex-M libs. I've released a commercial product using it with Stm32 L4, plan to release another using Rust+Nordic, and a third with ​Stm32H7 in a few months. Overall, Rust is a very nice language to work with, due to it's ergonomics and builtin tools/docs. · ​ · Here's the HAL lib I wrote for the job: ​STM32-HAL Answer from DOCon.1 on community.st.com
🌐
Reddit
reddit.com › r/embedded › rust on stm32
r/embedded on Reddit: Rust on STM32
December 9, 2024 -

Curious to hear any feedback from people who have done a project with Rust on an STM32 microcontroller instead of C/C++ (I realize Rust isn't officially supported by them but there aren't any technical reasons it's shouldn't be fine as far as I can tell). However, would love to hear about any "gotchas" that are worth noting from other people's experience.

🌐
Medium
medium.com › @saifhajsalem12 › running-rust-on-stm32-microcontrollers-a-practical-guide-for-embedded-enthusiasts-fed6550e4aef
Running Rust on STM32 Microcontrollers: A Practical Guide for Embedded Enthusiasts | by Saif Haj Salem | Medium
January 7, 2025 - RTIC (Real-Time Interrupt-driven Concurrency) is a framework for managing tasks and interrupts in embedded Rust. ... Add drivers for sensors like accelerometers or temperature sensors. ... Use probe-rs for debugging and monitoring. ... Optimize for limited memory and compute resources. ... Use panic-halt or panic-reset to define behavior on panics. ... Leverage hardware abstraction layers for cleaner code. ... Always test your code on actual hardware to ensure proper functionality. Rust on STM32F103 Blue Pill with Probe-run tooling
🌐
GitHub
github.com › stm32-rs › stm32-rs
GitHub - stm32-rs/stm32-rs: Embedded Rust device crates for STM32 microcontrollers
This repository provides Rust device support crates for all STM32 microcontrollers, providing a safe API to that device's peripherals using svd2rust and a community-built collection of patches to the basic SVD files.
Starred by 1.6K users
Forked by 253 users
Languages   Python 65.9% | HTML 18.4% | Shell 9.1% | Makefile 6.6% | Python 65.9% | HTML 18.4% | Shell 9.1% | Makefile 6.6%
🌐
Bastelblog
jonathanklimt.de › electronics › programming › embedded-rust › rust-on-stm32-2
Rust on STM32: Getting started - Bastelblog
December 1, 2024 - You can for example use arm-none-eabi-objcopy -O binary target/thumbv7m-none-eabi/release/blinky-rust blinky-rust.bin and then ls. Now you are ready to flash the controller with cargo flash. It should auto-detect your ST-Link and use it to program the microcontroller. You only have to specify the target chip (stm32f103C8).
🌐
Rust Embedded
docs.rust-embedded.org › book
Introduction - The Embedded Rust Book
This book will be using the STM32F3DISCOVERY development board from STMicroelectronics for the majority of the examples contained within.
🌐
Rust Documentation
doc.rust-lang.org › beta › embedded-book › intro › hardware.html
Hardware - The Embedded Rust Book
A word of caution: be careful if you want to apply external signals to the board. The microcontroller STM32F303VCT6 pins take a nominal voltage of 3.3 volts.
🌐
Embedded Rust
docs.rust-embedded.org › discovery
Choose Your Discovery - Rust Embedded
There are currently three versions of this book. All of them provide an introduction to microcontrollers and how to use Rust with them. Unless you need to work with a micro:bit v1 or an STM32F3 discovery board, it is strongly recommended that you use the latest book.
Find elsewhere
🌐
GitHub
github.com › rust-embedded › awesome-embedded-rust
GitHub - rust-embedded/awesome-embedded-rust: Curated list of resources for Embedded and Low-level development in the Rust programming language · GitHub
Building a sailing starter board with Rust (RTIC) A step-by-step story/guide to build STM32-based PCB and program it with Rust for fun and games. STM32F4xx with Embedded Rust at the HAL A blog containing a series of tutorials demonstrating the use of several peripherals through simple examples leveraging the stm32f4xx-hal crate.
Starred by 7.8K users
Forked by 467 users
🌐
YouTube
youtube.com › watch
Rust Embedded for STM32 Microcontrollers: Intro
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
🌐
Rust Programming Language
users.rust-lang.org › embedded
Guidance on the Compatibility of Rust with STM32F3 Microcontroller and Various Sensors/Device - embedded - The Rust Programming Language Forum
June 20, 2023 - I have experience with Rust but not with embedded technology. They have assigned me the task of researching whether the following sensors and devices can work with Rust and the STM32F3 microcontroller: Serial Module FTDI Basic MQ-4 Gas Detector AHT20, BMP280, F-28, DS18B20, AM2302, DHT22, AM2303, ...
🌐
GitHub
github.com › stm32-rs › stm32f4xx-hal
GitHub - stm32-rs/stm32f4xx-hal: A Rust embedded-hal HAL for all MCUs in the STM32 F4 family · GitHub
A Rust embedded-hal HAL for all MCUs in the STM32 F4 family - stm32-rs/stm32f4xx-hal
Starred by 676 users
Forked by 218 users
Languages   Rust
🌐
Rust-classes
rust-classes.com › chapter_embedded
STM32F103 - Rust Development Classes
We'll be using the excellent embassy crate to program the STM32. The embassy crate is a framework for building concurrent firmware for embedded systems.
🌐
YouTube
youtube.com › watch
How to Embedded STM32 Rust - YouTube
Learning how to program my STM32 with the Rust programming language to meet President Biden’s national cybersecurity strategy listed in the February 2024 Bac...
Published   March 29, 2024
🌐
DEV Community
dev.to › apollolabsbin › stm32f4-embedded-rust-at-the-hal-gpio-interrupts-e5
STM32F4 Embedded Rust at the HAL: GPIO Interrupts - DEV Community
August 30, 2023 - This blog post is the first one of a three-part series of posts where I explore interrupts for the STM32F401RE microcontroller using embedded Rust at the HAL level.
🌐
DEV Community
dev.to › apollolabsbin › stm32f4-embedded-rust-at-the-hal-uart-serial-communication-1oc8
STM32F4 Embedded Rust at the HAL: UART Serial Communication - DEV Community
August 30, 2023 - The stm32f4xx_hal crate to import the STMicro STM32F4 series microcontrollers device hardware abstractions on top of the peripheral access API.
🌐
Theembeddedrustacean
blog.theembeddedrustacean.com › 6-things-i-wish-i-knew-starting-with-embedded-rust
6 Things I Wish I Knew Starting with Embedded Rust
March 28, 2024 - From what I understand, the HALs built with the mebedded-hal as a basis seem to be the ones mainly adopted by the embedded working group. Additionally, I am not sure if the stm32-hal has any equivalent counterparts for other manufacturer devices. Having learned Rust the language followed by embedded Rust, I did feel a noticeable difference.
🌐
Tweedegolf
tweedegolf.nl › en › blog › 39 › why-rust-is-a-great-fit-for-embedded-software
Why Rust is a great fit for embedded software - Blog - Tweede golf
June 11, 2020 - It's becoming mature over time, ... which are pretty well supported by Rust, we think that Rust is a great language to write your embedded applications in....
🌐
GitHub
github.com › stm32-rs › stm32f1xx-hal
GitHub - stm32-rs/stm32f1xx-hal: A Rust embedded-hal HAL impl for the STM32F1 family based on japarics stm32f103xx-hal · GitHub
A Rust embedded-hal HAL impl for the STM32F1 family based on japarics stm32f103xx-hal - stm32-rs/stm32f1xx-hal
Starred by 644 users
Forked by 190 users
Languages   Rust