Wobblechar – parse ASCII/UTF-8 waveform diagrams into decoded samples (no_std-compatible)
⚓ Rust 📅 2026-03-08 👤 surdeus 👁️ 3Coming from embedded C/C++, I wanted a less tedious way to write tests on electronic signals. I saw myself write ascii-waveforms in the docs and thought: Why not use this as input. So I completed this project as a Rust learning project.
Instead of manually constructing test vectors, I wanted to write this:
CLK: _|‾|_|‾|_
DAT: ___‾‾‾___
To then get an iterator of timestep items with decoded values. I also included an index and a changed flag to easily filter the result.
As I am working on embedded, I had to make it completely no_std compatible. If you use it in std-context, I added support for hashmap character-mappers as well.
I think this crate is very useful for testing signal processing logic, protocol decoders, or anything that operates on input signal lines. It supports custom character mappings and labeled multi-line blocks for interleaved signals. Curious if anyone sees other use cases — I was thinking about things like encoding bit patterns for EEPROM initialization. Drop me a line!
- Crate: crates.io: Rust Package Registry
- Docs: wobblechar - Rust
1 post - 1 participant
🏷️ Rust_feed