SaaSHub helps you find the best software and product alternatives Learn more →
Top 15 Rust Arm Projects
-
To compile a program with musl on a glibc system you can use cross-rs!
-
Project mention: Safety vs. Performance. A case study of C, C++ and Rust sort implementations | news.ycombinator.com | 2023-10-05
I'm definitely not the best person to answer this, but honestly it's not bad. Here's an example of a moderately complex peripheral, the cortex-m MPU, and how one rust OS handles it:
https://github.com/tock/tock/blob/3a0527d586702b8ae8cb242391...
Reads and writes turn into volatile reads, so everything works out under the hood. You get the benefits of everything having good names, declared sizes, and proper typing on your register accesses. You can extend that to bit accesses as well.
Rust still has a few areas it isn't competitive in, like your hyper limited or obscure chips (e.g. 8051s, XAP), mature tooling around formal methods, and a certification story for safety critical code. People are working on these latter two issues (e.g. ferrocene) and supposedly very close to public delivery, but you know how slow the industry is to adopt new things even then.
-
InfluxDB
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
-
There's also RTIC which is another framework that makes concurrency trivial.
-
probe-rs
A debugging toolset and library for debugging embedded ARM and RISC-V targets on a separate host
Want debugging capabilities with anything with an am st link/jtag/other compatible probe? https://probe.rs/
-
static-web-server
A cross-platform, high-performance and asynchronous web server for static files-serving. ⚡
Project mention: Best Practice For Serving Static (Frontend) Files with NGINX in K8s? | /r/kubernetes | 2023-07-09I swapped to static-web-server for exclusively static files, it's only 4MB and its envvars are much easier than nginx's config files
-
Project mention: Rust fact vs. fiction: 5 Insights from Google's Rust journey in 2022 | news.ycombinator.com | 2023-06-27
I do not have as strong of feelings as your parent, but:
1. A lot of the APIs make use of the typestate pattern, which is nice, but also very verbose, and might turn many people off.
2. The generated API documentation for the lower level crates relies on you knowing the feel for how it generates the various APIs. It can take some time to get used to, especially if you're used to the better documentation of the broader ecosystem.
3. A bunch of the ecosystem crates assume the "I am running one program in ring0" kind of thing, and not "I have an RTOS" sort of case. See the discussion in https://github.com/rust-embedded/cortex-m/issues/233 for example.
-
-
Onboard AI
Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.
-
-
-
Luckily, the embedded-alloc crate provides us with one (there is a complete example in the associated Github repository). We also need the cortex-m crate to handle critical sections. Add them to the project's dependencies like so:
-
practice-mcu-bare-metal-rust
A bare metal (register level) STM32F103C8T6/STM32F103 MCU program written in pure Rust without any IDE, SDK, HAL or library, and no assembly code, the only tool required is the Rust compiler.
-
-
I made a toy std::fs implementation that does not depend on libc, i.e., using Raw Syscall. There are some voices in the community stating that we should make the standard library opt out of libc for better performance, so I decided to give it a try and wanna know if I could impl such stuff by myself.
-
-
Project mention: Official /r/rust "Who's Hiring" thread for job-seekers and job-offerers [Rust 1.70] | /r/rust | 2023-06-03
rustlink: small set of Rust tools to program STM32 devices esp32-phantom: Rust sandbox to explore the WiFi and BLE capabilities of the ESP32 stm32-rf-scanner: STM32 and nRF24L01+ based 2.4GHz RF scanner stm32-dc-dc: STM32 based DC-DC converter
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Rust Arm related posts
- RTIC (The hardware accelerated Rust RTOS) releases v2.0.0!
- Where my STM32 Rust compiler?
- Cannot enable VT-d on Thinkcentre M700
- Embedded Rust on BBC Micro Bit: unlocking Vec and HashMap
- When is the right time to change jobs?
- eskarp: Custom design using ergogen, 3D printed case, RP2040 with Rust firmware
- Question: Elegant way of getting a 'static reference?
-
A note from our sponsor - #<SponsorshipServiceOld:0x00007f0f9b57d620>
www.saashub.com | 9 Dec 2023
Index
What are some of the best open-source Arm projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | cross | 5,344 |
2 | tock | 4,717 |
3 | rtic | 1,455 |
4 | probe-rs | 1,249 |
5 | static-web-server | 926 |
6 | cortex-m | 695 |
7 | cortex-m-quickstart | 688 |
8 | svd2rust | 617 |
9 | udbserver | 301 |
10 | embedded-alloc | 221 |
11 | practice-mcu-bare-metal-rust | 114 |
12 | stm32f7xx-hal | 92 |
13 | syscall.rs | 90 |
14 | harsark.rs | 11 |
15 | rustlink | 2 |