• Home
  • Guide
    Upload GuideInstallation Guide
  • API Docs
    Development GuideAPI CallsAPI Reference
  • Related Sites
    EasyEDAJLCHUBOSHWLab
  • Editor
    Online Editor (Pro)Client Download
  • Manage extensions
  • LoginRegister
· EasyEDA Extension Marketplace
Home

Guide

Upload GuideInstallation Guide

API Docs

Development GuideAPI CallsAPI Reference

Related Sites

EasyEDAJLCHUBOSHWLab

Editor

Online Editor (Pro)Client Download
LoginRegister

WaveDrom Timing Diagram

oshwhub-official1v1.0.3
(0)MIT
A timing diagram drawing tool based on WaveDrom, supporting WaveJSON syntax input for timing diagram generation and preview, placed in schematics
Details
Changelog
Historical versions
Comments

WaveDrom Timing Diagram

oshwhub-official1
(0)MIT
Details
Changelog
Historical versions
Comments

中文

Timing Diagram Tool

A timing diagram tool based on WaveDrom, supporting creation and placement of professional digital timing diagrams in EasyEDA Pro schematics.

Timing diagram support:

Logic gate support:

Effect in schematic:

Features

  • ✨ Real-time Preview - Generate timing diagram preview in real-time while editing WaveJSON syntax
  • 📝 Configuration Management - Save, load, rename, and delete multiple timing diagram configurations
  • 💾 Import/Export - Import and export configuration files for backup and sharing
  • 🎨 Theme Toggle - Support light/dark editor themes
  • 📏 Line Numbers - Code editor with line numbers for easy navigation
  • 🌐 Multi-language - Support Chinese and English interfaces
  • 📤 SVG Export - Export timing diagrams as SVG files
  • 🔧 Adjustable Layout - Drag separator to adjust editor and preview area heights

Known Issue

  • The text insertion has a slight offset, which will be corrected after the subsequent API is fixed

Installation

  1. Open EasyEDA Pro or download the latest .eext file
  2. In EasyEDA Pro, click Advanced → Extension Manager → Extension List
  3. Find Timing Diagram Tool and click install, or click Import Extension button
  4. Select the downloaded .eext file
  5. Confirm installation

Usage

Open Editor

  1. In schematic editor, click top menu Timing Diagram Tool → Draw Timing Diagram...
  2. Editor window will open

Edit Timing Diagram

  1. Select or create a configuration on the left
  2. Enter WaveJSON syntax in the middle editor
  3. Preview area will show the generated timing diagram in real-time
  4. Click Save Config to save current configuration

WaveJSON Syntax

Example 1 - Basic Timing Diagram:

{
	"signal": [
		{ "name": "clk", "wave": "p.....|..." },
		{ "name": "dat", "wave": "x.345x|=.x", "data": ["head", "body", "tail", "data"] },
		{ "name": "req", "wave": "0.1..0|1.0" },
		{},
		{ "name": "ack", "wave": "1.....|01." }
	]
}

Example 2 - Logic Gate:

{
	"assign": [
		["out", ["|", ["&", ["~", "a"], "b"], ["&", ["~", "b"], "a"]]]
	]
}

For more syntax, refer to WaveDrom official tutorials:

  • Tutorial 1
  • Tutorial 2

Configuration Import/Export

  • Export Config - Click ⬆ button to export all configurations to JSON file, filename format: timing-configs_{date}.json
  • Import Config - Click ⬇ button to import configurations from JSON file (will overwrite all current configurations)

Configuration file format:

{
	"version": "1.0.0",
	"exportDate": "2026-03-28T00:00:00.000Z",
	"appName": "Timing Diagram Tool",
	"configs": [
		{
			"id": "...",
			"name": "Config Name",
			"wavejson": "{ signal: [...] }",
			"createdAt": 1234567890,
			"updatedAt": 1234567890
		}
	]
}

Export and Apply

  • Export SVG - Export timing diagram as SVG file, filename format: Timing_{schematic_name}_{date}.svg
  • Apply - Convert timing diagram to lines and text and place into schematic, all elements will be auto-selected, use Ctrl+G to group

Shortcuts

  • Theme Toggle - Click 🌓 button to toggle light/dark editor theme
  • Drag to Resize - Drag separator between editor and preview to adjust height
  • Config Management - Use +, ✎, ✕ buttons in left toolbar to manage configurations

Tech Stack

  • WaveDrom - Timing diagram rendering engine
  • EasyEDA Pro API - Extension development API
  • Vanilla JavaScript - No framework dependencies

Development

# Install dependencies
npm install

# Compile
npm run compile

# Build extension package
npm run build

Built .eext file is located in build/dist/ directory.

License

Apache-2.0 license

Contributing

Issues and Pull Requests are welcome!

Links

  • EasyEDA Pro
  • WaveDrom
  • EasyEDA Pro Extension Development Docs

更新日志 / Changelog

[1.0.3] - 2026-06-5

新增

  • 新增多语言支持

[1.0.2] - 2026-03-31

修复

  • 移除eda.sys_FileSystem.getExtensionFile() API的调用,避免安装提示有外部交互提示弹窗
  • 修改名称为“WaveDrom时序图”

[1.0.1] - 2026-03-30

修复 / Fixed

  • 修复应用到原理图时出现多余斜线的问题(path 多段子路径被错误合并为一个 polygon)
  • 修复绝对/相对路径命令混用时坐标偏移量翻倍的 bug
  • 修复圆弧(a/A 命令)转换错误,改用 W3C 标准端点→圆心参数化算法
  • 增加圆弧折线段密度(全圆 128 段),提升圆润度
  • 新增对 SVG 直接 path 元素的提取(方法3),支持不使用 <use> 引用的 SVG
  • 新增填充色提取,逻辑门等有填充的图形可正确还原外观
  • 补充 c、s、q、t 等相对路径命令的解析
  • 修正输出比例为 1:1(原为 0.5x 缩放)

[1.0.0] - 2026-03-28

新增 / Added

  • 基于 WaveDrom 的时序图编辑器
  • 配置管理(保存、加载、重命名、删除、导入导出)
  • 编辑器主题切换(浅色/深色)、行号显示、实时预览
  • 多语言支持(中文/英文)
  • SVG 导出,文件名格式:Timing_{原理图名}_{日期}.svg
  • 应用到原理图(将时序图转换为线条和文本放置到原理图)
  • 可拖拽调整的编辑器/预览区布局
暂无数据
暂无数据

Comment

LoginorRegisterto add a comment
All Comments(1)
Sort by time|Sort by popularity

Type

Schematic

Keyword

Timing DiagramWaveDromTiming Diagram

Extension Info

Versionv1.0.3
Author

EasyEDA

Published at2026-06-10 09:18:39
Name

eext-timing-diagram-tool

UUID

5bcf0208405043499ff5e43def49fac6

Works with^3.2.0
Report

Report abuse

Related links

Homepage:https://github.com/easyeda
Feedback:https://github.com/easyeda/eext-timing-diagram-tool/issues
Repository:https://github.com/easyeda/eext-timing-diagram-tool
Product
Online Editor(Pro Edition)
Online Editor(Std Edition)
Client Download
Education Edition
On-Premises-Hosting
Services
Prototyping - JLCPCB
Component Purchasing - LCSC
Open Source Hardware - OSHWLab
Policy Terms
Legal
Privacy Policy
Project License Agreement
Cookie Notice
Contribute
Thanks
Help
Tutorials (Pro Edition)
Tutorials (Std Edition)
Edition Update History (Pro Edition)
Edition Update History (Std Edition)
Forum
About Us
About Team
Contact Us

© 2026 EasyEDA All rights reserved

ISO/IEC
Cookie Notice
Our website uses essential cookies to help us ensure that it is working as expected, and uses optional analytics cookies to offer you a better browsing experience. To find out more, read our Cookie Notice