Embedded development has always lagged behind the trends that drive the rest of software development. In some ways, that’s a good thing. There are fewer half-baked third-party libraries to integrate with, for instance. However, there are also some good things left behind that could really benefit embedded developers.
The NeoPixel is a very cool little device. It combines three LEDs (red, green, and blue) with a specialized microprocessor, all in a package about the same size as a traditional LED. These smart LEDs open up a wide range of new project possibilities because they reduce the amount of circuitry and processor pins that […]
Anyone who knows me very well could probably tell you that I’m a pretty big fan of Particle, a provider of hardware and software components for building internet-connected products (IoT). I love their product suite because they have abstracted the common functions of IoT products into easy-to-use components while still allowing access to all the nitty-gritty details for those […]
Let’s face it, when you’re doing embedded development, you really don’t have a lot of great tools at your disposal. If you’re lucky, you might have a C99-compliant compiler and a microcontroller with floating-point hardware and DMA. If you’re unlucky you might have a microcontroller that doesn’t actually have a stack and a compiler that […]
You may have heard the news: Atomic Object is moving to a new building later this summer. We’re excited about designing the new space. For my part, I found an opportunity to try out a technology that I have not worked with before, the wireless networking system XBee.
I’ve written a few posts on using Rust for embedded projects: Rust Sysroots for Easier Embedded Projects Using Rust 1.8 Stable for Building Embedded Firmware Generating Rust Bindings for Embedded Libraries Embedded Rust Right Now! I think they gave a decent overview of a couple of tricky parts, but as always, the devil is in […]
Rust now has usable support for Rust sysroots. This makes it must easier and useful to use cargo to build your embedded projects. You should be able to even use stable rust once 1.9 is out, but you will have to use a nightly for now. Build libcore for your target Use the instructions in […]
A lot of things have changed since I wrote my last blog post on using Rust to build embedded firmware. Since Rust 1.6 was released, libcore is now stable, and nostd is now a stable feature. This means we can now build Rust libraries for our embedded firmware using the official stable version of the […]
Computers are amazing machines. They can perform massive amounts of stuff every second, and they’re being put into everything around us to make the things we interact with on a day-to-day basis smarter and better. This is made all the more remarkable by the fact that computers are astonishingly dumb. My favorite explanation of just how […]
I’ve been getting asked the question, “So how would I get started with embedded development?” more and more often lately. This is actually a really tricky question. It’s not like, “How would I get started with Haskell?” or “How would I get started with Rust?” Embedded development is such a weird and diverse thing that […]