Part 2 of my embedded executor journey!
Part 1 ended up getting a little long, so I cut it short while still missing some key features like more flexible task spawning and putting the executor to sleep when there's nothing needing to be polled. This time, we'll fill in those gaps!
Continue ReadingCustom keyboard development part 3!
After discovering that the embedded-hal ecosystem wasn't quite what I
wanted it to be, I set out to build the abstractions that I
wanted to use, namely: async-first and core::future compatible. The first
thing on the list? A way to run the Futures of course!
Side note: My project's landing page has got some more content these days!
Continue ReadingPart 2 of my custom keyboard project!
I didn't mean for this to become its own post, but it kind of got away from me. I've had a blast getting my feet wet in embedded dev so far with Rust, but it hasn't been without its share of headaches. I'm sure most of my problems can be attributed to my lack of experience in this realm, but hopefully I'll be able to turn my frustrations into something interesting by parts 3 and 4!
Part 1 can be found here: Bootstrapping My Embedded Rust Development Environment
Continue ReadingAfter watching James Munns' Something for Nothing talk at RustConf about all of the cool things in the embedded Rust world that have been going on, I decided to take a crack at some embedded work. I built an ErgoDox a while back and already had some basic understanding of how its keyboard controller operates, so I thought "why not design my own keyboard?"
Continue ReadingAs you may or may not know, Bob Nystrom (not the hockey
player) is in the process of
writing an excellent introduction to programming language design and
implementation in the form of the book Crafting
Interpreters. If you haven't already, I
would highly recommend checking it out! It walks the reader through the
design and implementation of a toy object-oriented language, lox. It does
this not once, but twice! The first implementation is a tree-walk interpreter
in Java and the second (not yet complete) implementation will be a bytecode
compiler/interpreter in C.
Coming Soon!
Continue Reading