James Munns

# Postcard 1.0.0 Release

2022-06-21

Quoting from the README:

> Postcard is a #![no_std] focused serializer and deserializer for Serde. Postcard aims to be convenient for developers in constrained environments, while allowing for flexibility to customize behavior as needed.

I first published `postcard` back in 2019, as a way to get "all the good stuff from Serde" in a format that would work for embedded systems. Since then, people all over Rust are using Postcard as a general purpose, compact, and flexible Serde format, not just embedded folks! Now, 3 years later or so, it has reached 1.0.0!

As of yesterday, June 20th, `postcard` v1.0.0 has been released.

This blog post is an extended overview of the changes since the last stable release, v0.7.3.

This work was made possible thanks to sponsorship from the Mozilla Corporation, and I'd like to thank them again for their support!

...read more

# The run-up to v1.0 for Postcard

2022-05-10

Quoting from the README:

> Postcard is a #![no_std] focused serializer and deserializer for Serde. Postcard aims to be convenient for developers in constrained environments, while allowing for flexibility to customize behavior as needed.

I first published `postcard` back in 2019, as a way to get "all the good stuff from Serde" in a format that would work for embedded systems. Since then, people all over Rust are using Postcard as a general purpose, compact, and flexible Serde format, not just embedded folks! Now, 3 years later or so, it's about time to take it to v1.0.

Thanks to a bunch of accumulated experience over the years, and a generous sponsor, I'll be releasing the 1.0 version of Postcard in June of 2022.

Read on for more details on what's planned!

...read more

# A little fixed point math for embedded audio

2022-04-26

Recently, I wanted to generate some sounds for MnemOS, and I wanted it to go fast.

This is a little mini-blog post describing how I did that using fixed point math, and reduced the total CPU usage to about 20% of the original amount.

...read more

# MnemOS Initial Release Announcement

2022-04-19

Today I'm introducing MnemOS v0.1.0, a small, general purpose operating system, written in Rust. MnemOS is designed for constrained hardware, including microcontrollers.

This release includes the v0.1.0 versions of:

- The MnemOS Kernel
- The MnemOS Userspace Library
- The MnemOS Common Library, which defines the System Call interface shared between userspace and kernel.

Together with the Pellegrino hardware system (pictured above), which is a Eurorack modular synth inspired rack system with LEGO mounting rails, it aims to support modular, home-built computer systems.

Although the capabilities are currently limited, it currently supports a number of features, including:

- Multiplexed serial ports, allowing for "TCP Port" like addressing of services
- An RPC-style System Call interface, powered by serde and postcard
- A block storage interface, useful for loading, storing, and retrieving programs and program data from persistent QSPI flash

For more information on what MnemOS is, and how to get started, you can refer to the MnemOS book, or visit the GitHub Repository.

...read more

# OneVariable Newsletter - 2022-01-19

2022-01-19

This article was originally featured on the OneVariable Applied Research newsletter. If you'd like to get early access to these reports, you can sign up for the newsletter here. Newsletter emails are sent every Wednesday.

Articles are posted on my blog one week after appearing on the newsletter.

## Abstract and Results

The new year continues with more hardware-related distractions.

This week, I went back to an old project from about a year ago, my Lipo Stamp hardware, which is a small battery charging, management, and protection PCB. It was designed to handle all of the "battery hard stuff", so I didn't need to design that into every project.

As things go, I didn't end up ever testing or using these stamps at all, so they've been waiting in my drawer to be validated.

...read more
Next > >