TL:DR
The options when connecting roboports to the circuit network feel outdated and lack the preciseness found on other buildings, freshening it up to 2.1s standards would go a very long way and enable players exact control over more aspects of their factory.What?
This is the current circuit connection for the roboport. It defaults to reading the logistics network contents and can be switched to either reading unfulfilled logistics network requests or do nothing. It also has an optional toggle to read robot statistics, which sends both the total and active count of construction and logistics robots separately plus the total amount of roboports in the network. The optional toggle for robot statistics is the most common reason players connect roboports to the network due to the usefulness of limiting automatic robot insertion to the network.This system covers simple uses but it has flaws, such as:
- While you can read the amount of roboports and total/available amount of each type of robot, you have no way to read the specific members inside of the network such as the amount of logistics chests, players, and vehicles that have access to logistics requests. It is especially problematic with quality since you can't get info about what amount of each quality of robots you have, only the total count. Same goes for roboports themselves. - Reading unfulfilled requests only takes into account things logistics bots can fulfill such as requester chests and player/tank logistics requests. Missing items for building or ghost items have no way to be read, and even if they were read you'd be left with logistics and construction requests mixing.
- You can't read the contents of an individual roboport
- Roboports are able to request robots of specific amounts and qualities to stay in them when idle. Not being able to control this via circuits is a bit odd.
The actual suggestion
Replace the current system with a series of checkboxes for what to read like other buildings in case someone wants to enable multiple at once, and with these options:Read logistics network contents
Reads the items inside this logistics network, functions just like the current option.
Read logistics requests
Reads unfulfilled logistics request, same as the current one but more clear in what it does.
Read construction requests
Reads unfulfilled construction requests i.e anything construction robots would deal with but can't due to missing items.
Such things would be ghost buildings, ghosts entities, ghost items, module requests and equipment grid ghosts. Read network members
Sends signals depending on the specific members of the logistics network such as robots, roboports, logistics chests, vehicles that have logistics, and players. Read contents
Reads the amount of robots and repair packs in this roboport. Read robot statistics
Reads the same things as the current robot statistics check to preserve parity and not completely ruin existing circuit stuff. But also being able to read the amount of robots currently recharging and the amount waiting to recharge would be a very nice addition.
Set robot requests
Just like setting requester chest requests, but for this roboport's robot requests instead.
And just like other buildings the input/output wires can be set.
Why?
Most of my points are above but I do wanna add my own experience.I wanted to build a system that made quality robots, stored robots of specific qualities for personal use if I set that I wanted them, and then filled the robot network with X amount of construction robots and Y amount of logistics robots of a specific level of quality or higher. Robots below that quality are recycled. When the total amount of robots approaches the max count, it starts pulling out robots from the network that are below the requested quality to recycle them so all robots eventually become at the quality I want them at minimum.
I ended up with this. It's inelegant as hell. If it wants to remove common quality bots it has no way of even knowing if any exist in the network, so it just continuously tries to remove common bots. If nothing is removed for 30 seconds it simply assumes the common bots are all gone and moves on to removing uncommon bots.
If the personal buffers are empty, all it can do is try and remove bots of those qualities once again without knowing if they even exist.
Factorio almost never limits what you can do with circuits, but interacting with the logistics network in more advanced ways can be a complete slog and some things aren't even possible. If the info of what things are in my network can be accessed by just pressing L why can't I read that automatically?
Updating the circuit connectivity for roboports would let players do more precise and more insane stuff, you probably came up with something yourself when reading this. Simple things like displays for different robots or a welcome jingle playing when a player enters the network to on-demand crafting of personal equipment, sending a warning if your spidertron is running a bit too low on rockets, recall 100 robots from the network into a box with a signal, or even sending robots to fly over biter nests when you get irritated at them.

