System Architecture

Return to Specification Page

Overview of CubeSpawn’s Control Software

CubeSpawn’s control software is organized into three key component areas to optimize the functionality and interaction of its systems:

  1. Onboard Software: Dedicated software installed on each machine, enabling it to manage specific operational tasks.
  2. Centralized Application: A software interface that connects to the internet to perform several essential functions:
    • Procurement of Work: Automates the process of obtaining appropriate tasks for the system.
    • Coordination with Other Systems: Facilitates interaction with other CubeSpawn systems to improve efficiency and resource utilization.
    • Management of Local Task Queues: Prioritizes and manages tasks efficiently to minimize downtime and optimize throughput.
  3. Visualization Server: Displays the real-time physical state of each machine within the system, aiding in operational monitoring and management.

Development Phases

The software development for CubeSpawn is divided into phases, each aligning with the system’s hardware development and integration of existing technologies:

  • Phase 1: Utilization of Open Source Tools
    • Octoprint1, LinuxCNC2 or Machinekit3 for CNC machines, and ROS4 or ROS Industrial5 for robotics and automation tasks. This initial phase focuses on hardware setup and testing using these platforms.
  • Phase 2: Scripting and Integration
    • The software scripts together functionalities planned for the integrated control architecture using external PCs for MTConnect6 functionalities, setting up foundational templates and libraries such as 3D models, tooling trees, and STEP-NC metadata.
  • Phase 3: Native Software Development
    • Develops custom software to handle specific functions of each modular machine based on the established requirements and integration tests.

Hardware Used During Development

The prototype machines are equipped with two main types of hardware:

  • Raspberry Pi 3B+7 and Smoothieboard 18: Both are ARM Cortex-based single-board computers, with specific roles in the prototype development.
  • Additional Components: These include a 24V power supply, a voltage converter, an Ethernet switch, and a level converter essential for the thermal management and network connectivity of the machines.

A Raspberry Pi 3B+ and a Smoothieboard 1

Both boards are ARM Cortex based processor SBC (Single Board Computer) controllers.

Arm Cortex-A53 on the Pi and ARM Cortex-M3 for the Smoothie

The Raspberry Pi is a general purpose Mini-computer and runs Linux for the proto’s.

The Smoothieboard is a motion controller, for running multiple stepper motors (up to 5) or (with additional electronics) servos. and has MOSFET output for fans, heaters, spindles etc.

These are mounted in the Electrical Module, along with a 24V power supply, a 24V-to-5V power supply, a 5 port Ethernet (not EtherCAT) switch and a level converter for the Thermocouple.

Similar Software

This research effort has many similarities to what the CubeSpawn Controller is intended to do: and uses many of the same standards, this is clearly more oriented to conventional manufactures with a need to coordinate 1 to many shop floors.


  1. Octoprint: An open-source web-based interface for controlling and monitoring 3D printers. ↩︎
  2. LinuxCNC: Software that turns your computer into a machine controller for CNC machines, capable of executing G-code. ↩︎
  3. Machinekit: A platform for machine control which can run on low-cost computers, providing capabilities similar to LinuxCNC but rewritten from the ground up for more modern software design. ↩︎
  4. ROS (Robot Operating System): A flexible framework for writing robot software, providing tools and libraries for obtaining, building, writing, and running code across multiple computers. ↩︎
  5. ROS Industrial: An extension of ROS focused on industrial applications, enhancing the capabilities of ROS for the manufacturing environment. ↩︎
  6. MTConnect: An open standard for allowing the exchange of process information and data monitoring between manufacturing equipment and devices. ↩︎
  7. Raspberry Pi 3B+: A small single-board computer with extensive application in educational, hobbyist, and industrial settings. ↩︎
  8. Smoothieboard: A motion control electronics board designed specifically for CNC machines and 3D printers, supporting multiple stepper motors and other peripherals with advanced control features. ↩︎

Secured By miniOrange