Factorio – How to Ensure Two Inserters Fire Simultaneously

factorio

I have built a simple factory that produces construction and logistics robots. However, since these robots get made very quickly (they only take half a second), the bottleneck is currently my production of flying robot frames. I am totally okay with this—I don’t need to make new robots at maximum speed—but it does make me worry that one of the two kinds of robots will be favored—that is, one of the requester chests will get all the frames.

To try and mitigate this, I have built a small circuit alongside my robot production. It looks like this:

There are three decider combinators:

screenshot of circuit

  • The first two just check if there are flying robot frames in the chest, and if there are, they output 1.
  • The third checks if both of the first two combinators output 1—that is, it is functioning as an AND.

This third combinator is wired to the two smart inserters, which wait for a truthy signal before activating.

This design is not 100% perfect because of the inserter stack size bonus (one side might get more frames), but this could be corrected by just waiting until both chests have as much as the maximum movable stack size. I don’t care too much, though, as long as both sides get some frames.

It does seem a tad complicated for a relatively simple problem, though. Is there a simpler way to accomplish this goal? Are combinators even needed?

Best Answer

Your solution basically switches on both inserters, only when both boxes are filled with at least one frame.

You can do this easier by just directly wiring the inserters and chests crosswise (connect each inserter with the other inserter's source) and checking for "frames > 0".

If both chests have at least one frame, both inserters move. If only one of them contains a frame, the opposite inserter would move, but can't (because there is nothing to take).

This still does not help you with the stack size bonus, but at least you get rid of the inserters.