It’s possible to create industrial control systems based on the Raspberry Pi.
By Ulderico Arcidiaco, co-founder, CEO, and lead hardware engineer at Sfera Labs.
Sfera Labs’ first product was born by accident, certainly not from a carefully conceived business plan. When the second iteration of the Raspberry Pi came out in 2013—the Model B with 512MB of RAM—it was fast enough and had enough memory to run our own Supervisory Control and Data Acquisition (SCADA) platform, which we called HSYCO.
Based on this, we thought it could be a good idea to start selling an entry- level appliance based on our SCADA pre- installed on a Pi B+. But a naked Pi board cannot simply be put to good use in an industrial environment, typically installed in an electrical distribution panel, without something around it. So, we started thinking what would be required to have a proper product for this kind of application environment.
From wish list to product
The core list of features we needed to add was substantial, but not intractable: (1) a very reliable power supply stage, (2) a hardware watchdog, (3) a real time clock with battery backup, (4) serial ports, (5) a few other things, like an internal buzzer and a secure element chip, and (6) a DIN-rail enclosure and terminal blocks for wiring power and signal lines.
There was nothing similar in the market back then, so we designed the circuit board with all these features and a standard DIN-rail enclosure. We liked it, it served our needs well, and we started thinking that it could be interesting to others. And this is how Sfera Labs and its first product, Strato Pi Base, were born!
Versions proliferation
Since the seed was planted, other needs quickly arose, both from us and from the market. To address these needs, we grew the family with a range of different products, all variants of the original idea, with specific features added, like a version with an integrated uninterruptible power supply (UPS), one with CAN bus, another with integrated digital and analog I/O, and so on.
From Model B to Compute Module
The introduction of the Raspberry Pi Compute Module allowed us to gain much more flexibility in the hardware architecture design, as well as the mechanical form factor, and a whole range of new products based on the Compute Module naturally evolved from the original design.
Growing complexity
Most of Sfera Labs’ customers integrate our products into larger, complex solutions and need very long-term support and availability from us. As a result, while we keep adding new product variants, we never discontinue older versions. This, of course, leads to an exponential growth in the number of products while the features and complexity of each product is also naturally increasing.
Lessons learned
All these products are, in a sense, monolithic, each with a different mix of features. And some of these products are quite complex, with part number counts around 1000 components. One important lesson learned was that complexity quickly gets overwhelming. Another was that complexity also significantly increases risks. A single part not being available from one supplier could grind production to a halt, and a product with a large unique parts count is statistically more at risk.
It became clear to us that if we wanted to keep fulfilling a wider range of needs, then we needed to design a new hardware architecture that was more flexible and more expandable while still incorporating the core features of all our current products.
Getting to Strato Pi Max
All of this brings us to the design of Strato Pi Max, which is an industrial edge server based on the Raspberry Pi Compute Module 4.
The Strato Pi Max incorporates the features of all our other products, largely reusing the same building blocks in many critical areas, and adds up to four internal expansion slots, as well as other features, some made possible specifically by our use of the Compute Module 4.
Compared to our other products, many non-core features have been moved to expansion boards, vastly increasing the options available to customers, and significantly reducing costs when features are not needed.

Open architecture
Like most of our other products, Strato Pi Max is a hybrid architecture, with a full-stack computing platform implemented in the Raspberry Pi Compute Module, coupled with a powerful microcontroller unit (MCU) to handle all housekeeping chores.
In our earlier products, the MCU (typically a SAM or PIC) runs our proprietary firmware that we don’t make available to customers. By comparison, the RP2040 in the Strato Pi Max has a lot of spare resources available. Also, being a dual-core MCU, user-level firmware development becomes feasible and desirable.
Based on this, we’ve made the Strato Pi Max firmware available as open-source software on GitHub. Users can develop their own additional features to run on it, or even modify the core housekeeping functions if desired. The Strato Pi Max electronic design is functionally safe in its critical areas, even if the MCU firmware is not running or not working properly. The RP2040 is also easy to program and debug on–board, just like programming a Raspberry Pico board connected to a Raspberry Pi CPU.
X2-Series expansion boards
Our expansion boards had to be designed to fit into the DIN-rail enclosure, so we couldn’t adopt any standard or well-known board format, and we had to design a suitable mechanical and electrical format from scratch.
The mechanical format is derived from the DIN enclosure’s profile. It allows us to have terminal blocks or other connectors on both sides, as well as LEDs and push-buttons on the front panel, if required.
We decided to use a rugged, but compact, 60-contact connector from Samtec that can carry both high-speed digital lanes as well as a substantial amount of current. This makes it possible to develop power expansion boards, like UPS or other applications.
The boards are screwed in place on the motherboard with two Wurth REDCUBE terminals (that also improve ground connection) to the sides of the connector.
The overall design is compact, rugged, and easy to handle. The connector carries I2C and SPI buses to both the Compute Module and the RP2040 MCU, a USB 2.0 port to
each expansion board, connected to a USB hub on the Strato Pi Max motherboard, power supply lines, and several other control lines. We deliberately chose to avoid exotic buses to make life easier for third parties that could be interested in designing their own expansion boards compatible with the Strato Pi Max.
In fact, we are making this expansion board format public. We’ve even given it a name, “X2” (yes, you’re right, we are not strong with names).
Applications
Given its flexibility, it is hard to list typical applications for a product like the Strato Pi Max. The scope is wide, ranging from an edge server general-purpose computer to a flexible PLC for industrial control. In all use cases, since it’s based on the incredibly popular Raspberry Pi framework, the Strato Pi Max offers a compelling computing platform that’s specifically suited to applications where long service life and reliability are important.