151
System Setup
Mikayla edited this page 2025-12-23 09:30:52 -05:00

Note

This guide is fully up-to-date as of release v1.10.3-beta. If this is not updated, it should still be accurate for later releases.

Facility Setup Guide

Tip

Setup guides for the devices can be found in this YouTube playlist.

Here you will find detailed information on how to set up your SCADA system. If you want something brief, check out this page, then refer back to this page as needed.

If you find anything confusing after reviewing the available material, or are otherwise struggling with the instructions, feel free to reach out with GitHub Discussions or on Discord!

For all setup, you should know how to connect CC: Tweaked peripherals. Placing wired modems on peripherals is not sufficient, you must also right click them. This will cause them to have a red border, indicating it is connected to the wired modem network.

Important

You should only connect devices via wired modems to computers that need those devices. Do not put everything on one network, as you'll likely end up with something going wrong.

For example, Reactor PLCs control the first reactor they find, so if you have multiple reactors and reactor PLCs on a wired network, all PLCs may end up using the same single reactor. There will be a warning on the PLC if this is detected. The risk of this increases if you use wired communications between computer, so you should connect nothing except the SCADA computers on that wire.

Not Connected Connected
image image

Table of Contents

  1. Device Layout
    1. Device Requirements
    2. Coordinator Displays
      1. Monitor Sizing
        1. Main Monitor
        2. Flow Monitor
  2. Connecting to Mekanism Machines
  3. Application Installation
    1. Storage Requirements
    2. Installation
    3. Updating
    4. Uninstalling
  4. SCADA Network
    1. Network Channels
    2. Network Connectivity
      1. Wireless Network
      2. Wired Network
      3. Redundant/Dual Connections
      4. Link Detection
  5. Device Setup and Configuration
    1. Reactor PLC Setup
    2. RTU Gateway Setup
    3. Supervisor Setup
    4. Coordinator Setup
  6. Initial Startup

Device Layout

A common requirement for all devices is requiring at least one communications modem. You may configure a wireless (including Ender) modem or a wired modem. Most devices will not boot without at least one detected configured communications modem.

Note

If you are only using the Reactor PLC as a safety regulator with no other computers, you can configure it to not be networked. In this mode, it can operate on its own as a safety system, replacing a basic redstone breaker circuit.

When using wireless networking, it is HIGHLY encouraged that you use an Ender modem rather than a standard wireless modem, as Ender modems have infinite range and work across dimensions (helpful for the Pocket Computer), while wireless modems have limited distances. If devices are not connecting, the cause may be using wireless modems too far away from each other.

A standard facility setup would have one Supervisor computer, one Coordinator computer, one Reactor PLC computer per reactor, and one or more RTU Gateway computers connected to the other machines (turbines, boilers, dynamic tanks, etc).

Tip

There can only be one Supervisor and one Coordinator per system, and only one Reactor PLC per reactor. However, one RTU Gateway can be connected to multiple devices, such as all your turbines and boilers regardless of which reactor they are connected to, since the RTU Gateway configuration defines the actual assignments. You can also use multiple RTU Gateways if machines are far apart.

Warning

Overloading one RTU Gateway with 10+ devices may cause it to run slower on slow servers. In that case, you may want to use more than one. For further details and recommendations, see the RTU Gateway page.

Device Requirements

Each computer requires one communications modem (wired or wireless), not included in the list below.

Type For Quantity Purpose
Advanced Computer Coordinator 1 Run the graphical user interface for controlling and monitoring the system.
Advanced Monitor Coordinator 3-6 Provide the graphical user interface for controlling and monitoring the system. Note: 3-6 refers to assembled multi-blocks, which requires many more than 3-6 blocks.
Speaker Coordinator 1 Play alarm tones in the control room.
Advanced Computer Supervisor 1 Connect to all computers and manage the system with and without Coordinator instructions.
Advanced Computer Reactor PLC 1-4 Interface with a single Fission Reactor and enforce safe operation.
Advanced Computer RTU Gateway 1+ Connect to all other machines (besides the Fission Reactor) to the system and provide access to them to the Supervisor.
Speaker RTU Gateway 0+ Play alarm tones elsewhere outside the control room.

Below are the other devices supported and/or required. The quantity refers to per unit or per facility. For example, 1-3 turbines per unit means you can have a total of 12 turbines if you have 4 reactors, since you can have up to 3 turbines per reactor.

Type Connection Block For Quantity Notes
Fission Reactor Logic Adapter Unit 1
Industrial Turbine Valve Unit 1-3
Steam Boiler Valve Unit 0-2 Only required if you have sodium cooling for that particular reactor.
Solar Neutron Activator N/A Unit 0+ No limit, but if you have too many it will add excess network traffic, degrading performance. SNAs are highly efficient, since their output/production rate consumes 10x of the input. For example, an output rate of 80 mB/t consumes 800 mB/t of waste.
Dynamic Tank Valve Unit 0-1 The total including facility tanks can't exceed 4.
Environment Detector N/A Unit 0+ Provided by the Advanced Peripherals mod.
Supercritical Phase Shifter Port Facility 0-1
Induction Matrix Port Facility 1 Required for automatic control.
Dynamic Tank Valve Facility 0-4 The total including unit tanks can't exceed 4.
Environment Detector N/A Facility 0+ Provided by the Advanced Peripherals mod.

Coordinator Displays

Each SCADA system will have 3 to 6 monitors. This includes 2 facility oriented overview monitors and 1-4 unit detail monitors for each unit.

  1. The main display must be 8 blocks wide. The minimum height depends on the number of units, ranging from 4 to 6 blocks (see below table).
  2. The waste and flow view display must be 8 blocks wide. The minimum height depends on the number of units, ranging from 3 to 6 blocks (see below table).
  3. Each unit requires its own unit monitor, which is always a square of 4 blocks by 4 blocks.

If there is a problem with one or more required/configured monitors, the Coordinator configurator will be launched. This will also occur if the monitors are missing or incorrectly sized.

Monitor Sizing

The below tables is provided to help you determine the heights of your main and flow monitors. These monitors are always 8 blocks wide, but have a variable minimum height.

Main Monitor

Terminology:

  • 'row': Units #1 and #2 make up the top row, Units #3 and #4 make up the bottom row.
  • 'distribution': 'Even' if the top row and bottom row have the same limitations, 'Biased' otherwise.
Height Total Units Distribution Supported Coolant Configurations
4 1 - 2 N/A no more than 1 boiler per unit, no more than 2 turbines per unit
5 1 - 2 N/A normal support (max 2 boilers, max 3 turbines) for all units
5 3 - 4 Even any unit can have up to 1 boiler and up to 2 turbines
5 3 - 4 Biased two units in the same row can have up to 2 boilers and 3 turbines, but the other row must have no boilers and only 1 turbine per unit
6 1 - 4 N/A normal support (max 2 boilers, max 3 turbines) for all units
Flow Monitor
Height Total Units
3 1
4 1 - 2
5 1 - 3
6 1 - 4

Connecting to Mekanism Machines

To connect Mekanism machines to PLCs and RTU Gateways, you can put a computer directly in contact with it or use ComputerCraft wired modems.

Important

When connecting devices via wired modems, make sure that the network cables don't combine different computer's peripherals, e.g. don't have a single network cable connecting multiple devices to multiple RTU Gateways. Each computer should only connect to the devices it uses.

When connecting to Mekanism machines, if the multiblock you are interacting with has a Logic Adapter (e.g. Fission Reactor Logic Adapater), you need to connect to that. Otherwise, connect to a Port (e.g. Induction Port, SPS Port) or a Valve (e.g. Boiler Valve, Turbine Valve, Dynamic Tank Valve). If it isn't a multiblock, you can just put the modem/computer next to the device on most sides, just not on top of a Solar Neutron Activator, as it will prevent it from getting sunlight.

Application Installation

Due to the size of the applications, a single file installation program is available titled ccmsi.lua (cc-mek-scada installer) that can download all the application files. The installation process pulls down a file called install_manifest.json. Do not delete this, as it is required for updating or uninstalling an already installed application.

Important

If you don't have HTTP enabled, you will not be able to use this installer. It is highly recommended to enable this in the ComputerCraft config. Otherwise, you will need to use alternative installation strategies.

  • To download the installer from GitHub using wget, use this command: wget https://raw.githubusercontent.com/MikaylaFischler/cc-mek-scada/main/ccmsi.lua
  • To download the installer from pastebin, use this command: pastebin get sqUN6VUb ccmsi.lua

ccmsi, ccmsi help, or an invalid command will display this following help information.

image

Note that the tag/branch should generally be left alone as main provides the latest stable release. If you want specific tagged releases or to use the devel development branch, then you would specify that in the command. Note that running development code has a higher risk of encountering bugs or incomplete features.

image image

Storage Requirements

The installation manifest file includes size information that allows the installer to verify there is sufficient space for installation. By default, files are downloaded to a temporary directory before copying them in the case a network error interrupts the process. This would leave the current application intact.

Note

By default, ComputerCraft computers have 1 MB of space available.

If there is not enough space for a requested update, it will prompt for a mode that will delete/replace files one by one. If this is interrupted, the installation may be corrupt and should not be used until a successful update is completed.

Warning

Installation and updating will not delete your existing configurations. Uninstalling an application will delete them.

Installation

A command such as ccmsi install reactor-plc would install the respective application, which in that example is the Reactor PLC software. Only one application can be installed at any one time.

Updating

The easiest way to perform an update is ccmsi update which will automatically determine the installed application then update it. A command such as ccmsi update reactor-plc would specifically update the Reactor PLC application or fail if it isn't found.

The installer itself can be updating using ccmsi update installer. This is the only operation that 'installer' is a valid parameter to. If a new installer is found when installing/updating an application, you will be asked if you want to update it first. You'll need to retry that other install/update after the installer is updated.

If configuration options have changed, there will be a warning about a problem with the configuration on startup. You will have not lost configurations, you just need to proceed through it to fill out new information.

update will only update application components that are found to have newer versions.

Uninstalling

Applications can be uninstalled with ccmsi uninstall. You may also specify the app with a command such as ccmsi uninstall reactor-plc, which would uninstall the Reactor PLC application or fail if it isn't found.

Uninstalling deletes all application files, including the configuration and log files.

SCADA Network

Network Channels

As you set up your system, keep in mind (even better, write down) the network channels you will be using if you stray from the defaults. Anywhere use see these names in configuration, the same number must be used.

The defaults are as follows:

  • SVR_CHANNEL : default 16240, channel for Supervisor communication (listened on by the Supervisor)
  • PLC_CHANNEL : default 16241, channel for Reactor PLC communication (listened on by all Reactor PLCs)
  • RTU_CHANNEL : default 16242, channel for RTU Gateway communication (listened on by all RTU Gateways)
  • CRD_CHANNEL : default 16243, channel for Coordinator communication (listened on by the Coordinator)
  • PKT_CHANNEL : default 16244, channel for Pocket Computer communication (listened on by all Pocket Computers)

Network Connectivity

Each computer in the SCADA system needs to be connected to the Supervisor (and additionally the Coordinator for the Pocket computer) via a ComputerCraft network connection. This can be done both with wired and wireless connections, except in the case of the Pocket computer that can only be used wirelessly.

Wireless Network

The most common setup of the system is to use Ender modems to connect all devices. These have infinite range and can cross dimenisions, allowing you to place your control room and reactors anywhere. You may also use basic wireless modems, but these have range impacted by things like walls and weather, so this is not recommended.

Important

When documentation refers to a "wireless" modem elsewhere, this refers to an Ender modem OR basic wireless modem. Ender modems are always the recommended wireless modem option.

Each device would get one wireless modem attached in order to connect it. Pocket computers need to be crafted with the modem to attach it.

image

Wired Network

The Reactor PLC, RTU Gateway, and Coordinator may be connected to the Supervisor via wired modems and network cables. Do caution that if the wire breaks, the connection will be lost unless you also have wireless modems (see the next section). You do not need to right click the modems to turn them red like you need to for peripherals.

Caution

It is important to only connect computers to each other on that network cable/network. Also including peripherals will make them show up on all devices and this could cause misconfiguration. In the case of the Reactor PLC, it is designed for only one reactor connection, so connecting multiple may leave the others unprotected as multiple Reactor PLCs may connect to the same reactor, leaving others unmanaged.

Redundant/Dual Connections

To provide added network redundancy, you can add a wireless modem to computers using wired network modems. You may configure each device to "prefer" wired or wireless, which will always be used as long as it is available, including if it comes back online after the devices failed over to the secondary interface.

Tip

Wired communications do not use the facility authentication key, so they have less computational overhead. If you select them as preferred, the wireless network would only be used on failure of the wired one, allowing you to minimize performance impacts while maintaining security.

The Supervisor needs to be configured to allow both wired and wireless connections for the types of devices you intend to have redundant connections on.

image image

Primarily to facilitate connection failover discussed in the prior section, client devices (not the Supervisor) check if a modem interface likely has a network link. These devices will only attempt to establish a connection with the Supervisor if the link is detected as up. This check happens more often when the link is down for faster re-connects.

When the link is down, the MODEM light will turn yellow rather than green. This is different than off, which indicates the modem is physically disconnected from the computer.

image

Link discovery allows for detecting broken wired modem network cables and switching to wireless networking, if configured as such.

Device Setup and Configuration

Any peripheral touching a computer can be on any side. Diagrams below show certain sides purely as an example. I personally think Ender modems look cute as computer hats.

Reactor PLC Setup

The Reactor PLC computer requires a minimum of two peripherals, a communications modem and a Fission Reactor Logic Adapter (NOT a Fission Reactor Port).

image

The Reactor PLC is configured with a GUI configurator tool. This can be accessed by running configure on a Reactor PLC.

RTU Gateway Setup

RTU Gateway computers can connect to many different peripherals. Your machines can be split across multiple RTU Gateways or just one if you don't have too many. Shown below are the different peripherals that can be connected. You can connect more than one of each to an RTU Gateway, as you'll assign them all (except speakers) in the configuration.

Additionally, redstone can be put on any side of the computer (bundled and not bundled) or via a redstone relay.

image

For details on setting up waste control, see this page!

The RTU Gateway is configured with a GUI configurator tool. This can be accessed by running configure on an RTU Gateway.

Supervisor Setup

The Supervisor computer requires at least one peripheral, a communications modem. This can be attached on any side. No other peripheral connections are required.

image

The Supervisor is configured with a GUI configurator tool. This can be accessed by running configure on the Supervisor.

Additional context on facility dynamic tank configuration can be found on that configurator page, or you can skim the legacy config documentation section on this topic.

Coordinator Setup

The Coordinator requires one main display, one flow monitor display, and one unit display per reactor unit in your system, per this earlier section. It also needs one speaker and at least one communications modem.

image

The Coordinator is configured with a GUI configurator tool. This can be accessed by running configure on the Coordinator.

Initial Startup

For all devices, if there is some big issue preventing boot, a reasonably detailed message will either be shown on the terminal or put into the log file. RTU Gateways perform extensive validation of the configuration, so any errors there will be listed. Please be sure not to duplicate indexes on RTU entries or reactor unit IDs on Reactor PLCs. The former cannot always be detected, but the latter will result in collision replies to establish requests (which will be shown in the terminal, log file, and network light).

All non-Pocket computers have front panels that provide status information, with documentation you can find linked on this page. The successful Reactor PLC and RTU Gateway front panels are shown below.

image image

The Supervisor will list out all the connections in scroll boxes or static lists, depending on device type. Tabs and lists allow viewing all the connected types. Computer IDs are included for all devices, which are prefaced with an @ sign wherever listed (except the coordinator that spells out "COMPUTER". The DEV tab will list issues detected with connected devices, helping you find out what is missing or if there are duplicated entries.

Tip

The Computer IDs are shown on the front panels of devices as serial numbers (SN) with a zero-padded three digit computer ID followed by the device type.

image image

The Coordinator shows a dmesg-esque output on its main monitor (including a fun little spinning line as it attempts to connect to the Supervisor).

image

Once everything's booted and connected, you should be ready to go!

image

Setup Failures

Tip

The Supervisor's DEV tab provides information on the non-reactor peripherals the system expects and/or is connected to, which helps diagnose missing or misconfigured RTU devices.

If your devices never connect and network lights stay off, check out this page. If you get an orange light (or NT VERSION light) on any devices, make sure everything is up-to-date. If you see a yellow light (or NT COLLISION) on the Reactor PLC, make sure none of your Reactor PLCs have the same unit ID.

If a MODEM light is yellow, that means the Supervisor cannot be reached and you should check that the Supervisor is on the correct channel and running. If you are using a wired communications modem, make sure the wire is connected and intact.

Wrong Version Duplicate Unit ID
image image

If your Coordinator and Supervisor have different settings for how many reactor units you have, you'll see this. You need to make sure both numbers match in their respective configurations.

image