Welcome to The Crab Lab: Diving into Embedded Rust (and Maybe Some Memes)
Are ya ready, Kids? Dive into The Crab Lab, a new series exploring Embedded Rust through tutorials, projects, and troubleshooting tips. Join the journey of learning, experimenting, and building with Rust on microcontrollers.
Ahoy, Rustaceans and Embedded Enthusiasts!
Welcome to The Crab Lab, a dedicated space on my blog for all things Embedded Rust. Whether you’re a seasoned developer or just curious about what happens when Rust meets microcontrollers, this series is for you.
Why "The Crab Lab"?
The Crab Lab is simply a way to group my Embedded Rust related posts and projects in one place. Think of it as a workshop or lab where we experiment, learn, and occasionally debug our way through the world of embedded systems using Rust. The crab? Well, it’s a nod to Rust’s beloved mascot, and a reminder that even in serious engineering, there’s always room for a little fun.
What to Expect
The Crab Lab won’t focus on just one topic. Instead, it’s a mix of whatever thickles my interest (and hopefully yours too). Here’s what you might see:
- Tutorials: Step-by-step guides for setting up Rust on different microcontrollers or platforms.
- Deep Dives: Exploring Rust’s features and how they apply to embedded systems, like why
unsafeexists and how to use it wisely. - Project Showcases: Fun, practical, or just plain weird projects built with Embedded Rust. Expect everything from useful tools to "why did I build this?" experiments.
- Troubleshooting & Tips: Answers to common (and not-so-common) questions, and solutions to those head-scratching bugs.
- Community Highlights: Shoutouts to interesting projects, libraries, or people in the Embedded Rust space.
How to Stay Connected & Final Thoughts
The Crab Lab is all about exploration, learning, and community. If you’re interested in following along, here’s how you can stay updated:
- Blog: All posts will be published here, so bookmark the site or subscribe if that’s an option.
- LinkedIn: For more professional insights and updates, follow us on LinkedIn.
- YouTube: I’m planning to expand into video content soon (although making videos is much more difficult than I anticipated :D) Anyway, stay tuned for tutorials, demos, and maybe even some live debugging sessions.
This series is as much about sharing knowledge as it is about having fun with Embedded Rust. Whether you’re here to learn, contribute, or just see what happens when Rust meets hardware, I’m glad you’re here.
— Andre
P.S. If there’s a topic you’d like to see covered or a project you’d like to share, don’t hesitate to reach out. The Crab Lab thrives on curiosity and collaboration!
Including External Libraries in CMake Projects
Learn how to use CMake’s FetchContent module to automatically download and integrate libraries like CMSIS into your embedded projects, eliminating the hassle of manual copying and updates.
How to Find the Memory Address of a Symbol in an ELF File
A quick and useful tip for locating symbol memory addresses in ELF files using arm-none-eabi-nm combined with grep—perfect for embedded debugging scenarios like setting up SEGGER RTT or inspecting linker placements and runtime symbols.
Remote Debugging with OpenOCD on Raspberry Pi
Learn how to turn a Raspberry Pi into a remote debugging server for the RP2040 using OpenOCD, a complete with step-by-step setup and instructions for building OpenOCD from source to resolve hardware compatibility issues.
Whether you're building something new, fixing stability issues, or automating what slows your team down — we can help.