Digital Timing Waveform
LocalDraw digital timing waveforms from WaveDrom-style JSON — free online, no upload, no sign-up. Export SVG or PNG for docs.
WaveDrom-style JSON (signal wave chars: 0/1/./x/z/p/n/|). Renders SVG/PNG locally. No time axis ticks or view zoom.
What is it? Timing Waveform draws digital timing diagrams from WaveDrom-style JSON and exports them as SVG or PNG, rendered locally in the browser. Unknown wave characters are rendered as level-hold and inventoried on the page; unsupported top-level keys (head/foot/config/groups) are ignored and disclosed.
TL;DR: Draw digital timing waveforms from JSON — free, no upload — and export SVG/PNG.
How to use
- Paste WaveDrom-style JSON, or drop/select a .json file.
- Click "Render" — the preview flags unknown wave chars, ignored top-level keys and dropped entries in place.
- Download the SVG, or Export PNG.
FAQ
Is the WaveDrom syntax supported?
Yes — the basic signal syntax is supported: wave chars 0/1/./x/z/p/n/| including p/n clocks. Groups (nested signal arrays) are not supported — flatten them into a flat signal list first.
Is it local?
Yes, rendering is local.
What happens to unknown wave characters or unsupported keys?
Unknown wave chars render as level-hold and are inventoried on the page; unsupported top-level keys (head/foot/config/groups) are ignored and disclosed — nothing fails silently.
How many signals can one diagram hold?
There is no hard cap, but tens of thousands of signals render slowly and bloat the SVG. Split very large diagrams into segments for workable output.
Is it free? Do I need an account?
Browser-local rendering is free with a daily allowance and no sign-in — nothing leaves your device.
How is this different from the WaveDrom editor?
It renders the same WaveDrom-style signal JSON in this page, with SVG/PNG export — but groups (nested signal arrays), head/foot/config, data labels, edge arrows and skins are not supported, and anything it skips is disclosed on the page instead of failing silently.
Should I export SVG or PNG?
SVG stays sharp at any zoom and is best for docs and wikis; PNG is a fixed-resolution image for slides and quick shares. Both are generated locally.
Examples
- Paste WaveDrom JSON → render → download SVG (or Export PNG)
- Unknown wave char in a signal → the page flags it as level-hold
Supported formats
Limitations
- JSON input only (paste or .json file).
- Basic wave chars only (0/1/./x/z/p/n/|): unknown characters render as level-hold and are inventoried on the page; groups (nested signal arrays), head/foot/config, data labels, edge arrows and skins are not supported — ignored keys and dropped entries are disclosed on the page; flatten nested arrays before pasting.
- No time axis ticks and no view zoom; exports are SVG and PNG.
- No hard cap on signal count; tens of thousands of signals render slowly and bloat the SVG — split into segments.
Privacy
Privacy first: this tool runs entirely in your browser — your input and files never leave your device, and everything is cleared when you close the page.