Circuit network
Circuit networks are built using red or green wire, and enable the control of some devices, based upon information broadcast onto the network by connected storage devices. The information is broadcast onto a specific channel, based on the item or liquid the storage device contains. Each circuit network contains a channel for every kind of item, as well as 45 extra Virtual signals which act as user-definable channels.
Physical network structure
A circuit network consists only of those devices connected together with the same color wire. Wire can be strung directly from device to device, or across any intervening power poles.
Note that each connected set of wires forms a separate network. For example, it's entirely possible to have four red-wire networks and three green-wire networks. Red and green networks will remain separate and do not link up if red and green wires happen to touch the same power pole or device.
- To connect wires to a power pole, drag the wire to the base of the pole.
- To erase a wire connection, drag the same color wire over an existing connection.
- To remove all connections from a power pole, shift-click on the pole. The first shift-click will remove all electrical connections, and the second will remove all red and green wires.
- When connecting to a Arithmetic Combinator or Decider Combinator, take care to drag the wire to the correct input or output side.
Broadcast Information
Some devices broadcast the amount of Items or Fluids they contain or other data definable by the player. Each amount is broadcasted as a numeric value on a 'channel' corresponding to the item they contain. For example, a Storage Tank containing 1000 Crude Oil will broadcast 1000 on the Crude Oil channel.
Multiple broadcasts of the same item or fluid are additive; if there are two connected Storage Tanks with 1000 Crude Oil each, the value of the Crude Oil channel will be 2000.
Combinators also broadcast their outputs (onto whatever channel is specified).
Use of Information
Some devices, as well as Combinators can use the information, in most cases to enable/disable the device.
They can either compare results between different channels, or compare a channel to a specific value. The pictured inserter works if the count of Iron plates is lower than the count of Steel plates.
Basic
The simplest network is to connect a smart inserter with a chest next to it, to control the amount of items in the chest. (Note that you do not have to connect them using a power pole as the picture shows; you can connect them directly.)
Combinators
Combinators allow more advanced functions to be used on a circuit network.
- The Constant Combinator broadcasts up to 15 values on any of the channels for whatever networks it is connected to. (You cannot currently specify whether a value should be red or green; if you need different values, use two combinators, one for each color wire.) You can use any item channel or any of the Virtual signal channels.
- Note that using two of the 15 slots to broadcast values on the same channel is the same as broadcasting the sum of the two values from one slot.
- The Arithmetic Combinator performs arithmetic operations on input values and broadcasts the result to the specified output channel. The input and output channels can be any item channel or any of the virtual signal channels.
- Connecting: The Arithmetic Combinator connects to a red or green network on its input side (the terminals are set into the main body and look like spark plugs) and performs an arithmetic calculation which is broadcast into the specified channel on its output side (the output wires appear to stretch out a bit from the body of the device).
- Feedback: Note that the input network and the output network are not the same network. Connecting the output network back to the input network will result in a feedback loop. For example, adding 1 to the value for Copper Plates and broadcasting it as Copper Plates is an action that results in an infinite loop if output is connected back to input. The value for Copper Plates will rapidly (but not instantly) shoot upward. This technique can be combined with Decider Combinator logic to make electronic clocks, gates, and other systems; see Combinator Tutorial for advanced techniques.
- Each: This combinator can use the 'Each' signal for both input and output, in which case all non-zero input channels will have the combinator's operation performed and broadcast on the output side. Having Each signals for input and output and using a non-changing operation (like adding zero) is equivalent to having a 'one-way' wire; all the information from the input network is copied to the output network, but the reverse is not true.
- Multi-network: The Arithmetic Combinator can be joined to both red and green networks on the input side and will sum their inputs.
- The Decider Combinator functions much like an Arithmetic Combinator, but is designed to compare values from red and green networks. In terms of Connecting, Feedback, and the Each signal it functions as specified above. In addition, it can handle the Everything and Anything signals, and performs more complex functions than summing when attached to multiple networks. See the Decider Combinator page for more details on how to use this.
Logistic Network
The Logistic network used by Logistic Robots is essentially a third network (a wireless one), along with the green and red wired network. The Logistic Network is based on proximity to a central Roboport. See Logistic network for more information.
Items/Devices
In v0.13 the factorio developers made many devices connectable to the circuit network, so there are much possibilities to control and program your factory based on conditions.
Examples (outdated)
- Forum article about the basic usage
- About comparison of the circuit wires with examples from the real world* Logic Gates, Edge Detector
- Logic gates revisited
- Evenly fill two item onto one lane
- Material splitters
- Logic gates using side inserter mod