What is Volta?

Volta is a software application for designing analog electric circuits on Mac OS X. It offers graphical frontend and backend tools for SPICE-like command-line circuit simulators.

Circuits

There is one window for each circuit design. You can work on multiple circuits at the same time, each in its own window. A circuit window contains four resizable areas as shown in figure 1.

Design Workflow

You typically start designing your circuit in the schematic editor where you assemble and interconnect circuit components. You then repeatedly test and refine your design with the help of circuit simulations. To run circuit simulations, you 'capture' the schematic in a format that the simulator can process. When the simulation is done, depending on the output of the simulator, the results will be displayed graphically in the plotter area at the bottom.

Figure 1: The circuit window areas

The first three buttons in the toolbar of the window ('Plot', 'Capture' and 'Analyze') are your workflow buttons, where Plot and Analyze do more than their names imply. The Plot button also captures the schematic and runs the simulation. It is the button you will use most frequently. The Analyze button not only feeds the netlist and the analysis commands to the simulator but also plots the simulation results if sufficient data points exist. Use this button if you want to preserve changes that you made to the netlist after the schematic was captured.

Figure 2: Workflow buttons

The last two toolbar buttons, seen in figure 3, open or close the bottom plotter area and the right hand tools area, respectively.

Figure 3: Area buttons
Figure 2: Workflow buttons
Figure 3: Area buttons

Ngspice

Volta ships with the free circuit simulator Ngspice. One of the long-term goals of Volta is to wrap all Ngspice capabilities in easy-to-discover and, hopefully, easy-to-use graphical controls. Ideally, everything you can express with a netlist should be configurable in the schematic editor so that even for advanced use cases there is no need to edit netlists. Until this goal is reached you will need to know how to use Ngspice. Please refer to the detailed user manual on the Ngspice documentation page.