-
-
Notifications
You must be signed in to change notification settings - Fork 30
Project Files
Mikayla edited this page Dec 19, 2025
·
26 revisions
cc-mek-scada/ = ComputerCraft Mekanism SCADA system
├── coordinator/ = Coordinator application
│ ├── config/ = Coordinator configurator sections
│ │ ├── facility.lua - facility configuration management
│ │ ├── hmi.lua - HMI (human machine interface) configuration management
│ │ └── system.lua - system configuration management
│ ├── session/ = Coordinator device sessions
│ │ ├── apisessions.lua - session manager for API
│ │ └── pocket.lua - Pocket API session
│ ├── ui/ = Coordinator UI definitions
│ │ ├── components/ = Coordinator UI componenets
│ │ │ ├── boiler.lua - boiler display for overview
│ │ │ ├── imatrix.lua - induction matrix display on main screen
│ │ │ ├── pkt_entry.lua - pocket computer entry on front panel connections list
│ │ │ ├── process_ctl.lua - process control interface on main screen
│ │ │ ├── reactor.lua - reactor display for overview
│ │ │ ├── turbine.lua - turbine display for overview
│ │ │ ├── unit_detail.lua - unit detail display on unit monitors
│ │ │ ├── unit_flow.lua - unit display on flow monitor
│ │ │ └── unit_overview.lua - unit overview on primary monitor
│ │ ├── layout/ = monitor UI layout files
│ │ │ ├── flow_view.lua - flow monitor display
│ │ │ ├── front_panel.lua - Coordinator front panel UI
│ │ │ ├── main_view.lua - main screen on primary monitor
│ │ │ └── unit_view.lua - unit screens on unit monitors
│ │ ├── pgi.lua - protected graphics interface for managing list elements
│ │ └── style.lua - styling constants for Coordinator UI
│ ├── configure.lua - Coordinator configurator tool
│ ├── coordinator.lua - Coordinator core functions: comms, monitor configuration, dmesg helpers
│ ├── iocontrol.lua - I/O data and PSIL for unit & facility statuses and build
│ ├── process.lua - process control functions and settings access
│ ├── renderer.lua - GUI renderer control
│ ├── sounder.lua - speaker sounder tone generation and control
│ ├── startup.lua - Coordinator application startup
│ └── threads.lua - Coordinator threads, application core
├── graphics/ = graphics library
│ ├── elements/ = all graphics elements
│ │ ├── animations/ = animated elements
│ │ │ └── Waiting.lua - loading spinning animation
│ │ ├── controls/ = control elements
│ │ │ ├── App.lua - app icon button
│ │ │ ├── Checkbox.lua - basic checkbox/selectbox
│ │ │ ├── HazardButton.lua - button with hazard pattern around it
│ │ │ ├── MultiButton.lua - multi-choice button
│ │ │ ├── NumericSpinbox.lua - fixed-point number spinbox input
│ │ │ ├── PushButton.lua - push button, single press then releases
│ │ │ ├── Radio2D.lua - multi-choice matrix layout radio button
│ │ │ ├── RadioButton.lua - multi-choice vertical layout radio button
│ │ │ ├── Sidebar.lua - sidebar vertical tab selector
│ │ │ ├── SwitchButton.lua - switch button, single press toggles state
│ │ │ └── TabBar.lua - horizontal tab selector
│ │ ├── form/ = user input form fields
│ │ │ ├── NumberField.lua - numeric form field input
│ │ │ └── TextField.lua - text form field input
│ │ ├── indicators/ = indicator elements
│ │ │ ├── AlarmLight.lua - alarm light indicator (quad-state)
│ │ │ ├── CoreMap.lua - reactor core map
│ │ │ ├── DataIndicator.lua - numerical data indicator w/ labels & units
│ │ │ ├── HorizontalBar.lua - horizontal percentage bar
│ │ │ ├── IconIndicator.lua - single character indicator w/ color
│ │ │ ├── IndicatorLight.lua - square light indicator (on/off)
│ │ │ ├── LED.lua - tiny rectangle 'LED' indicator (on/off)
│ │ │ ├── LEDPair.lua - tiny rectangle 'LED' indicator (tri-state)
│ │ │ ├── PowerIndicator.lua - numerical indicator for power (auto-scaled units)
│ │ │ ├── RGBLED.lua - tiny rectangle 'LED' indicator (n-state)
│ │ │ ├── RadIndicator.lua - numerical indicator for radiation (auto-scaled units)
│ │ │ ├── SignalBar.lua - network signal bar indicator
│ │ │ ├── StateIndicator.lua - text + color state indicator
│ │ │ ├── TriIndicatorLight.lua - square light indicator (tri-state)
│ │ │ └── VerticalBar.lua - vertical percentage bar
│ │ ├── AppMultiPane.lua - multi-pane designed as an app home page
│ │ ├── ColorMap.lua - color map (for testing, shows all colors in a row)
│ │ ├── DisplayBox.lua - container element used as the root of the element tree, uses a window object as parent
│ │ ├── Div.lua - container element, uses a normal element as its parent
│ │ ├── ListBox.lua - scrolling listbox
│ │ ├── MultiPane.lua - multi-pane, to be used with a tab control to show multiple views in the same place
│ │ ├── PipeNetwork.lua - pipe network, used on main screen (as an example)
│ │ ├── Rectangle.lua - container element with an optional boarder, uses a normal element as its parent
│ │ ├── TextBox.lua - text box, supports text alignment and wrapping
│ │ └── Tiling.lua - alternating tiling pattern element
│ ├── core.lua - core graphics utilities
│ ├── element.lua - base 'class' of all graphics elements
│ ├── events.lua - mouse/keyboard event handling
│ ├── flasher.lua - handler for flashing indicators
│ └── themes.lua - color theme management/definitions
├── lockbox/ = select lua-lockbox files
├── pocket/ = Pocket computer application
│ ├── config/ = Pocket configurator sections
│ │ └── system.lua - system configuration management
│ ├── ui/ = Pocket UI definitions
│ │ ├── apps/ = Pocket 'applications'
│ │ │ ├── about.lua - system about app
│ │ │ ├── alarm.lua - alarm viewing and testing app
│ │ │ ├── comps.lua - computer info app
│ │ │ ├── control.lua - facility control app
│ │ │ ├── facility.lua - facility management app
│ │ │ ├── guide.lua - system guide app
│ │ │ ├── loader.lua - app loader pseudo-app
│ │ │ ├── process.lua - process management app
│ │ │ ├── radiation.lua - radiation monitor app
│ │ │ ├── unit.lua - unit management app
│ │ │ └── waste.lua - waste management app
│ │ ├── components/ = Pocket UI componenets
│ │ │ └── conn_waiting.lua - connection waiting spinners
│ │ ├── pages/ = Pocket tabbed pages and other objects
│ │ │ ├── dynamic_tank.lua - dynamic tank page
│ │ │ ├── facility_matrix.lua - induction matrix page
│ │ │ ├── facility_sps.lua - sps page
│ │ │ ├── guide_section.lua - documentation guide section
│ │ │ ├── home_page.lua - home tab page
│ │ │ ├── unit_boiler.lua - boiler tab page
│ │ │ ├── unit_reactor.lua - reactor tab page
│ │ │ └── unit_turbine.lua - turbine tab page
│ │ ├── docs.lua - documentation definitions
│ │ ├── main.lua - main UI display
│ │ └── style.lua - styling constants for Pocket UI
│ ├── configure.lua - Pocket configurator
│ ├── iocontrol.lua - Pocket I/O (PSIL and data)
│ ├── iorx.lua - Pocket data receiver
│ ├── pocket.lua - Pocket core functions: comms
│ ├── process.lua - process management coordination
│ ├── renderer.lua - GUI renderer control
│ ├── startup.lua - Pocket application startup
│ └── threads.lua - Pocket threads, application core
├── reactor-plc/ = Reactor PLC application
│ ├── config/ = Reactor PLC configurator sections
│ │ ├── check.lua - Reactor PLC self-check tool
│ │ └── system.lua - system configuration management
│ ├── panel/ = Reactor PLC front panel
│ │ ├── front_panel.lua - Reactor PLC front panel UI
│ │ └── style.lua - styling constants for PLC UI
│ ├── configure.lua - Reactor PLC configurator
│ ├── databus.lua - front panel PSIL
│ ├── plc.lua - Reactor PLC core functions: RPS and comms
│ ├── renderer.lua - GUI renderer control
│ ├── startup.lua - Reactor PLC startup application
│ └── threads.lua - Reactor PLC runtime "threads" (co-routines, main app)
├── rtu/ = RTU Gateway application
│ ├── config/ = RTU Gateway configurator sections
│ │ ├── check.lua - RTU Gateway self-check tool
│ │ ├── peripherals.lua - RTU Gateway peripheral configuration
│ │ ├── redstone.lua - RTU Gateway redstone configuration
│ │ └── system.lua - system configuration management
│ ├── dev/ = RTU interfaces
│ │ ├── boilerv_rtu.lua - boiler [valve] RTU interface
│ │ ├── dynamicv_rtu.lua - dynamic tank [valve] RTU interface
│ │ ├── envd_rtu.lua - environment detector RTU interface
│ │ ├── imatrix_rtu.lua - induction matrix RTU interface
│ │ ├── redstone_rtu.lua - redstone RTU interface
│ │ ├── sna_rtu.lua - solar neutron activator RTU interface
│ │ ├── sps_rtu.lua - supercritical phase shifter RTU interface
│ │ └── turbinev_rtu.lua - turbine [valve] RTU interface
│ ├── panel/ = RTU Gateway front panel
│ │ ├── front_panel.lua - RTU Gateway front panel UI
│ │ └── style.lua - styling constants for RTU Gateway UI
│ ├── configure.lua - RTU Gateway configurator
│ ├── databus.lua - front panel PSIL
│ ├── modbus.lua - MODBUS comms protocol and I/O control handling
│ ├── renderer.lua - GUI renderer control
│ ├── rtu.lua - RTU Gateway core functions: comms and RTU unit init
│ ├── startup.lua - RTU Gateway startup application
│ └── threads.lua - RTU Gateway runtime "threads" (co-routines, main app)
├── scada-common/ = common and system files
│ ├── audio.lua - alarm audio signals and control code
│ ├── comms.lua - system communications protocol and packet constructors
│ ├── constants.lua - system-wide constants, safety thresholds, and conversion factors
│ ├── crash.lua - crash message handling
│ ├── log.lua - system logging
│ ├── mqueue.lua - message queue object
│ ├── network.lua - network interface abstraction and cryptography
│ ├── ppm.lua - PPM - protected peripheral manager
│ ├── psil.lua - PSIL - publisher-subscriber interface layer
│ ├── rsio.lua - redstone I/O mappings and helper functions
│ ├── tcd.lua - TCD - timer callback dispatcher (call functions after a delay)
│ ├── types.lua - common data types and constructors
│ └── util.lua - system utility functions (prints, math, strings, clock & watchdog timers, etc)
├── supervisor/ = Supervisor application
│ ├── config/ = Supervisor configurator sections
│ │ ├── facility.lua - facility configuration management
│ │ └── system.lua - system configuration management
│ ├── panel/ = Supervisor front panel
│ │ ├── components/ = front panel UI componenets
│ │ │ ├── chk_entry.lua - facility check failure entry
│ │ │ ├── pdg_entry.lua - Pocket diagnostics list entry
│ │ │ └── rtu_entry.lua - RTU Gateway list entry
│ │ ├── front_panel.lua - Supervisor front panel UI
│ │ ├── pgi.lua - protected graphics interface for managing list elements
│ │ └── style.lua - styling constants for Supervisor UI
│ ├── session/ = Supervisor device sessions
│ │ ├── rtu/ = RTU Gateway session individual unit handlers
│ │ │ ├── boilerv.lua - boiler [valve] unit handler
│ │ │ ├── dynamicv.lua - dynamic tank [valve] unit handler
│ │ │ ├── envd.lua - environement detector unit handler
│ │ │ ├── imatrix.lua - induction matrix unit handler
│ │ │ ├── qtypes.lua - RTU Gateway queue data types
│ │ │ ├── redstone.lua - redstone unit handler
│ │ │ ├── sna.lua - solar neutron activator unit handler
│ │ │ ├── sps.lua - supercritical phase shifter unit handler
│ │ │ ├── turbinev.lua - turbine [valve] unit handler
│ │ │ ├── txnctrl.lua - MODBUS transaction control handler
│ │ │ └── unit_session.lua - RTU Gateway unit session generic base class
│ │ ├── coordinator.lua - Coordinator session handler
│ │ ├── plc.lua - PLC session handler
│ │ ├── pocket.lua - Pocket diagnostics session handler
│ │ ├── rsctl.lua - Redstone RTU session I/O controller
│ │ ├── rtu.lua - RTU Gateway session handler
│ │ ├── svqtypes.lua - Supervisor session queue types
│ │ └── svsessions.lua - Supervisor session manager
│ ├── alarm_ctl.lua - alarm state updater
│ ├── configure.lua - Supervisor configurator
│ ├── databus.lua - front panel PSIL
│ ├── facility.lua - SCADA core facility management
│ ├── facility_update.lua - facility update routine
│ ├── renderer.lua - GUI renderer control
│ ├── startup.lua - main Supervisor application
│ ├── supervisor.lua - Supervisor core functions: comms
│ ├── unit.lua - SCADA core reactor unit management
│ └── unit_logic.lua - reactor unit management functions
├── ccmsi.lua - cc-mek-scada installer
├── configure.lua - configurator loader program (bootstrap program to open app configurator)
├── initenv.lua - application environment initialization (for subdirectories)
└── startup.lua - core startup program ("bootloader")
If you need help beyond this wiki, open a support discussion or ask on Discord! If you prefer videos, they can be found on my YouTube channel.
-
User Manual
- System Setup Guide
- Configurator Tools
- Redstone Waste Setup Guide
- TL;DR Quickstart
- FAQ and Common Problems
- Colorblind Accessibility
- Annunciator Panels
- Alarms
- System Views
- Operating Procedure
- Status Messages
- Glossary
- Computer Applications
- Notable System Components
- Notes
- Investigations
- References & Resources
- Legacy