In this article, I have compiled a list of 4 free timing diagram software. Most of these software follow a script based methodology to generate timing diagrams. You will have to write a script file which will define all the signals, clock pulse, buses, etc in the timing diagram and then use engine of these timing diagram software to render it. Most of them let you export the timing diagram as an image file and also in other formats like EMF, EPS, SVG, etc. I have also included a software which takes the GUI approach to draw the timing diagrams.
TimingEditor is a free Windows software to generate timing diagrams. As compared to other software on my list, it is very easy to use and takes a GUI approach to draw a timing diagram. The created timing diagram can be exported as a PNG, SVG, or PS file format. You can download it from the link provided above and install it. After that, open it and you will see its interface as shown in the screenshot above. Now, create a new document from the File menu and you will see a drawing canvas window on its interface with a clock signal. You can now add another signal, clocks, and bus from the toolbar that appears below the Menu bar of the software.
To change the status of a signal from on to off and vice versa, move the crossbar to a specific point of time in the diagram and left-click on it. The other settings of the timing diagram appear in a panel on the right side of the interface. This panel includes following types of settings: Clock-type signal, Transition, Axis/Time, and Time compressor.
To export the timing diagram as an image, go to File menu and choose the option to export it to a file format of your choice i.e. PNG, SVG, and PS.
Read the detailed review of TimingEditor.
WaveDrom Editor is a free open source digital timing diagram software for Windows. It takes a different approach to draw digital timing diagrams; you have to describe all the details of a timing diagram in text format and then use its engine to render it, as shown in the screenshot above. The generated timing diagram can be saved as SVG and PNG formats. What I liked the most about this software is that it comes with a very modern UI and is very easy to use despite the fact that you will have to write a script to generate the timing diagrams. Well, you can read its tutorial to know about the commands and syntax to generate different signals and waveforms in the timing diagram. Once you are familiar with its script syntax, you can type it in its text editing interface. In my case, I just copied a script from its tutorial page to see how it works, you can also do the same thing to test and see if it fits for you. As soon as you are finished with the script, it draws the timing diagram. The menu button at the bottom-right part of the interface will give you the options to save the project and export the timing diagram as PNG and SVG format.
PlantUML is a free JAVA software to draw timing diagrams. Just like WaveDrom Editor, it also generates a timing diagram based on a script. You can also generate other types of UML diagrams like Class, Object, Sequence diagrams, etc using its description language. The official website of PlantUML has already explained in detail how you can use it to generate timing diagrams using its scripting language. You should first take a look at this tutorial to learn its scripting language. Once you are familiar with the basic, you can write a script in any text editor and save it as a PUML format. After that, launch the downloaded JAR file (download link above) and specify the directory where the PUML file is placed. As soon as you specify the directory, you will see the list of supported files by PlantUML. Do note that, it can also take input from file formats like HTML, C, CPP, etc. Now, all you have to do is double-click on the PUML file in which you wrote the script to generate the timing diagram. If everything goes right, you will be able to see the timing diagram in a new window, as shown in the screenshot above. To save the timing diagram, click on the Copy button and then paste it in any image editor. From there, you can save the timing diagram in any file format of your choice. It works really fast and the diagram image quality is also very good, do check it out.
TimingDrawer is another free timing diagram software for Windows. It also uses a script based method to generate timing diagrams and then saves it as EMF, SVG, or EPS format. There is no direct option to save the timing diagram in an image file format, you can either take a screenshot or export it as EMF or SVG files. One important thing that I would like to mention is that TimingDrawer is written in Python and can be executed on all major platforms, if you have Python installed on your PC. You can download it from the Sourceforge, the link is provided above and then run its Python file to bring forth its interface, as shown in the screenshot above. After that, you can write the script file on its interface and it then automatically draws the timing diagram as shown in the screenshot above. You can read about the syntax description and some examples of the script file here. In order to export the timing diagram in any of the supported formats, go to “Export” menu and then select the file format.
In this article, I introduced you to 4 free timing diagram software. I liked TimingEditor the most as it lets you draw the timing diagram and you won’t have to learn a scripting language (light) to generate the timing diagrams. If you are more comfortable with the second approach i.e. define a script to draw timing diagram then you should check out Wavedrom editor and TimingDrawer. If you want to generate more different types of diagrams with the script approach then you can go with PlantUML.