Wires connect Devices together; when you add wires to your system, you make it larger and more capable. A web controlled switch is useful, but wiring the switch to a timer is even more useful.
Wires run between Device "terminals" and "wire" them together. When terminals are wired, they share signals. More simply, Virtual Wires act a lot like wires in a traditional system. Below is a wiring diagram for connecting a set of switch terminals to a set of light terminals.
The Wires Page
The Wires page is a web page in the Virtual Wiring system; it lets you add and remove wires. One gets to the Wires page by clicking on "Wires" at the top of any one of the Virtual Wiring system's web pages.
The Wires page has two display modes. One is graphical and it's called the Punchblock view. The other is tabular and it's called the Table view. The Punchblock view is generally easier to work with as it provides a graphical display of Wires. The screen shots on this page illustrate the Punchblock view. Using the Punchblock view, Wires can be created and deleted with just a few mouse clicks.
The display mode is controlled by clicking a button at the bottom of the Wires page. If one is looking at the Punchblock view, there is a button labeled "Table View" at the bottom of the page. If one is looking at the Table view, there is a button labeled "Punchblock View". Clicking one of these buttons will toggle between the two views.
Both the Punchblock view and the Table view provide the same functionality. In each display, one can see all the wires in the system and which terminals they connect. Additionally, each display mode provides a means for adding and deleting wires.
The two views are described in more detail in the following 2 sections.
Virtual Wiring Specifics
Wires start at a device terminal and end at another device terminal. Any device terminal can be wired to any other device terminal (including wiring two output terminals together). If a device has a terminal, one can put a wire on it.
Wiring terminals together causes any output value from any of the connected terminals to be seen by all the terminals which are wired to that terminal. Wires are transitive, meaning if A is wired to B, and B is wired to C, then A is also wired to C (through B).
Wires are bidirectional. The same wire can transmit an output from terminal A to B or from terminal B to A.
A set of wires that are connected together is called a "net". If there are two output terminals on the same net, the net will see the output values from both the terminals, in the order that the terminals generate their output. The output terminal which last generates its output will have its value persist on the net.
Virtual Wires vs Wires
Wires, or Virtual Wires, are similar to real wires, as they connect devices together, are bidirectional, and are transitive. However, they have an important difference. Unlike real wires, there is no such thing as a short circuit. A real wire can connect real devices together whose connect points are incompatible, causing device failures or worse. There is no analogy in Virtual Wires. If two outputs are connected together using Virtual Wires, their outputs are serialized - they don't contend with one another. If a Virtual Wire connects an output to an incompatible input, the input will ignore the output or (more rarely) generate a software warning or error message. So unlike real wires, one won't see sparks at a Virtual Wire's connect points. Still, if a Virtual Wire connects to a device terminal which controls a real device with a real output which can contend with another device's real output, a real danger still exists, but it's not at the connect point of a Virtual Wire.
Virtually Wiring Devices
Much like real wires, Virtual Wires connect device terminals together. If one had a real switch and a real light, connecting a wire from the switch to the light would enable the switch to control the light. A Virtual Wire between a switch device and a light device would function identically. However, a Virtual Wire is not physical, it's a virtual wire. It doesn't exist outside of computer, and it can be created and deleted from a web page.