Industrial Shields controllers compared: every model, inputs, outputs and communications
Industrial Shields makes seven families of controllers and I/O. Each table on this page compares the models of one family with the same fields, taken from each product page, so you can pick the model that matches your signal list.
7 families · 44 models · Data from the product pages
Choose the family for your project
Start from what the project needs, then go to the table of that family. To compare a PLC with an industrial PC or a gateway in general terms, read Choosing an industrial controller.
| Your project needs | Family | Processor and software | I/O on the device |
|---|---|---|---|
| Machine control in C/C++ with Ethernet and wired buses | M-Duino | Arduino Mega 2560, no operating system. Arduino IDE. | 6 to 36 inputs, 8 to 31 outputs |
| A compact unit for a small cabinet | Ardbox | Arduino Leonardo, 45 mm wide. Arduino IDE. | 10 inputs, 10 outputs |
| Wi-Fi and Bluetooth LE next to Ethernet, with a LoRa or 4G board | ESP32 PLC | ESP32. Arduino IDE over USB or Ethernet. | 6 to 37 inputs, 5 to 33 outputs |
| Linux on the controller: Python, Node-RED, two Ethernet ports and a UPS | Raspberry PLC | Raspberry Pi with Linux. | CPU-Gateway without I/O, or 6 to 39 inputs and 8 to 33 outputs |
| Real-time control and Linux in the same device | Ardbox Q | Arduino UNO Q: STM32 microcontroller and Qualcomm processor with Debian Linux. | 20 I/O |
| An operator touchscreen with a few I/O of its own | TouchBerry Pi | Raspberry Pi with Linux. 7", 10.1" or 18.5" screen. | 3 digital inputs, 2 analog inputs, 5 digital outputs |
| Collecting data from machines and sending it to MQTT or the cloud | GateBerry | Raspberry Pi with Linux, Node-RED and MQTT. | No field I/O |
| More I/O away from the controller, for any PLC, HMI or SCADA | moduleX | Modbus RTU slave over RS-485. | From 8 to 24 I/O per pack, or modules of your choice |
GateBerry and the Raspberry PLC CPU-Gateway both work as Linux gateways without field I/O. The Raspberry PLC CPU-Gateway is in the Raspberry PLC table.
Arduino based PLC: M-Duino and Ardbox
Ardbox uses an original Arduino Leonardo and M-Duino an original Arduino Mega 2560. You program both with the Arduino IDE; M-Duino adds Ethernet, a real-time clock and a microSD slot.
| Model | Total I/O | Inputs | Analog inputs 0-10 V | Outputs | Relays | Analog or PWM outputs | Communications | Programming |
|---|---|---|---|---|---|---|---|---|
| Ardbox Analog | 20 | 10 | 8 | 10 | 0 | 7 | RS-485, RS-232, TTL serial, I2C, SPI | Arduino IDE (micro USB) |
| Ardbox Relay | 20 | 10 | See product page | 10 | 8 | 2 | RS-485, RS-232, TTL serial, I2C, SPI | Arduino IDE (micro USB) |
| M-Duino 19R | See product page | 6 | 4 | 11 | 8 | 3 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 21 | 21 | 13 | 6 | 8 | 0 | 3 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 38AR | 38 | 19 | 10 | 19 | 8 | 6 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 38R | See product page | 12 | 8 | 22 | 16 | 6 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 42 | 42 | 26 | 12 | 16 | 0 | 6 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 57R | See product page | 18 | 12 | 31 | 23 | 8 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
| M-Duino 58 | 58 | 36 | 16 | 22 | 0 | 8 | Ethernet, RS-485, RS-232, TTL serial, I2C, SPI, RTC | Arduino IDE (USB or Ethernet) |
All models: 12 to 24 Vdc, DIN rail, IP20. Analog inputs also work as digital inputs. Total I/O shows "See product page" when the number in the model name is not the sum of the inputs and outputs listed on the product page. Engineering is checking those models.
ESP32 PLC
ESP32 based PLC with Ethernet, Wi-Fi and Bluetooth LE, programmed with the Arduino IDE over USB or Ethernet. Applications and cases by sector are on the ESP32 PLC page.
| Model | Total I/O | Inputs | Analog inputs 0-10 V | Outputs | Relays | Analog or PWM outputs | Communications | Option board |
|---|---|---|---|---|---|---|---|---|
| ESP32 PLC 14 CORE | 14 | 9 | 2 (0-10 V or 4-20 mA) | 5 | 1 | 0 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, I2C | None (fixed configuration) |
| ESP32 PLC 14 FLEX | 14 | 9 | 2 (0-10 V or 4-20 mA) | 5 | 1 | 0 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, I2C | See product page |
| ESP32 PLC 19R | See product page | 6 | 4 | 11 | 8 | 3 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 21 CORE | 21 | 13 | 6 | 8 | 0 | 3 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | None (fixed configuration) |
| ESP32 PLC 21 FLEX | 21 | 13 | 6 | 8 | 0 | 3 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 38AR | 38 | 19 | 10 | 19 | 8 | 6 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 38R | See product page | 12 | 8 | 22 | 16 | 6 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 42 | 42 | 26 | 12 | 16 | 0 | 6 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 57R | See product page | 18 | 12 | 33 | 24 | 9 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
| ESP32 PLC 58 | See product page | 37 | 16 | 24 | 0 | 9 | Ethernet, Wi-Fi, Bluetooth LE, RS-485, RS-232, I2C, SPI | LoRa, 4G or CAN |
All models: 12 to 24 Vdc, DIN rail, IP20. Total I/O shows "See product page" when the number in the model name is not the sum of the inputs and outputs listed on the product page. Engineering is checking those models.
Raspberry PLC
Raspberry Pi based PLC running Linux for Python and Node-RED, with a UPS for safe shutdown and a real-time clock. The CPU-Gateway version has no local I/O.
| Model | Total I/O | Inputs | Analog inputs 0-10 V | Outputs | Relays | Analog or PWM outputs | Communications | RAM | Option board |
|---|---|---|---|---|---|---|---|---|---|
| Raspberry PLC CPU-Gateway CORE | 0 | 0 | 0 | 0 | 0 | 0 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 4 GB | None (fixed configuration) |
| Raspberry PLC CPU-Gateway FLEX | 0 | 0 | 0 | 0 | 0 | 0 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 19R | See product page | 6 | 4 | 11 | 8 | 3 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 21 CORE | 21 | 13 | 6 | 8 | 0 | 3 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 4 GB | None (fixed configuration) |
| Raspberry PLC 21 FLEX | 21 | 13 | 6 | 8 | 0 | 3 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 38AR | 38 | 19 | 10 | 19 | 8 | 6 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 38R | See product page | 12 | 8 | 22 | 16 | 6 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 42 | 42 | 26 | 12 | 16 | 0 | 6 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
| Raspberry PLC 57R CORE | See product page | 18 | 12 | 33 | 24 | 9 | See product page | 4 GB | None (fixed configuration) |
| Raspberry PLC 57R FLEX | See product page | 18 | 12 | 33 | 24 | 9 | See product page | 2, 4 or 8 GB | See product page |
| Raspberry PLC 58 | See product page | 39 | 18 | 24 | 0 | 9 | 2 x Ethernet, 2 x RS-485, Wi-Fi, Bluetooth LE, I2C, SPI | 2, 4 or 8 GB | See product page |
All models: 12 to 24 Vdc, DIN rail, IP20. Total I/O shows "See product page" when the number in the model name is not the sum of the inputs and outputs listed on the product page. Engineering is checking those models.
Ardbox Q
Industrial PLC built on the Arduino UNO Q: real-time control on an STM32 microcontroller and Debian Linux on a Qualcomm processor, in one DIN-rail device.
| Model | Total I/O | Digital inputs | Analog or digital inputs 0-10 V | Digital outputs | Relays | Analog outputs 0-10 V | Communications | Programming | RAM |
|---|---|---|---|---|---|---|---|---|---|
| Ardbox Q AD | 20 | 4 | 6 | 3 | 0 | 7 (also usable as digital or as PWM, 5 to 24 V) | RS-485, RS-232, SPI, Wi-Fi and Bluetooth (Linux side), USB-C | Arduino IDE, Arduino App Lab, Python, Node-RED, Docker | 2 or 4 GB |
| Ardbox Q ADR | 20 | 4 | 6 | 0 | 8 | 2 | RS-485, RS-232, SPI, Wi-Fi and Bluetooth (Linux side), USB-C | Arduino IDE, Arduino App Lab, Python, Node-RED, Docker | 2 or 4 GB |
Both models: 12 to 24 Vdc, DIN rail, IP20.
TouchBerry Pi panel PC
Industrial panel PC with a Raspberry Pi, a capacitive touchscreen and its own I/O, for HMIs and machine control on Linux.
| Model | Screen | Resolution | RAM | Front | Inputs and outputs | Communications | Serial ports | Option board |
|---|---|---|---|---|---|---|---|---|
| TouchBerry Pi 7" CORE | 7", capacitive, 900 nits | 1024 x 600 | 4 GB | IP20 | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | None (fixed configuration) |
| TouchBerry Pi 7" FLEX | 7", capacitive, 900 nits | 1024 x 600 | 4 or 8 GB | IP65 (option) | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | LoRa, 4G or CAN |
| TouchBerry Pi 10.1" CORE | 10.1", capacitive, 900 nits | 1280 x 800 | 4 GB | IP20 | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | None (fixed configuration) |
| TouchBerry Pi 10.1" FLEX | 10.1", capacitive, 900 nits | 1280 x 800 | 4 or 8 GB | IP65 (option) | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | LoRa, 4G or CAN |
| TouchBerry Pi 18.5" CORE | 18.5", capacitive, 900 nits | See product page | 4 GB | IP20 | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | None (fixed configuration) |
| TouchBerry Pi 18.5" FLEX | 18.5", capacitive, 900 nits | See product page | 4 or 8 GB | IP65 (option) | 3 digital in, 2 analog in (0-10 V or 4-20 mA), 5 digital out | Gigabit Ethernet, 4 x USB, I2C, SPI | See product page | See product page |
All models: 12 to 24 Vdc, UPS for safe shutdown. The serial ports listed differ between sections of the product page, so check it before you rely on RS-232 or RS-485.
GateBerry gateway
Raspberry Pi industrial gateway for DIN rail, running Linux for Node-RED and MQTT. It has no field I/O: it reads other devices and sends the data on.
| Model | RAM | Network | Field bus | USB | Built in | Option board |
|---|---|---|---|---|---|---|
| GateBerry CORE | 2 GB | Gigabit Ethernet, Wi-Fi, Bluetooth LE | RS-485 with switchable termination, I2C | 4 | UPS for safe shutdown, real-time clock | See product page |
| GateBerry FLEX | See product page | Gigabit Ethernet, Wi-Fi, Bluetooth LE | RS-485 with switchable termination, I2C | 4 | UPS for safe shutdown, real-time clock | LoRa, 4G, CAN, M-Bus or RS-232 |
Both models: 12 to 24 Vdc, DIN rail, IP20.
moduleX remote I/O
Remote I/O modules that any PLC, HMI or SCADA with RS-485 can read over Modbus RTU. Choose a ready pack or build your own set of modules.
| Model | Inputs and outputs | Modules included | Protocol | Refresh | Modules per master | Power |
|---|---|---|---|---|---|---|
| moduleX IOs CORE | 24: 8 DI, 8 DO, 4 AI, 4 AO | Master and four I/O modules | Modbus RTU slave over RS-485, 19200 to 115200 bps | 10 ms | See product page | 24 Vdc, DIN rail, IP20 |
| moduleX 8 Digital IOs CORE | 8 digital inputs, 8 digital outputs | Master and two digital modules | Modbus RTU slave over RS-485, 19200 to 115200 bps | 10 ms | See product page | 24 Vdc, DIN rail, IP20 |
| moduleX 4 Analog IOs CORE | 4 analog inputs, 4 analog outputs | Master and two analog modules | Modbus RTU slave over RS-485, 19200 to 115200 bps | 10 ms | See product page | 24 Vdc, DIN rail, IP20 |
| moduleX configurable | You choose the modules | Master plus MX-8DI, MX-8DO, MX-4AI and MX-4AOV modules | Modbus RTU slave over RS-485, 19200 to 115200 bps | 10 ms | See product page | 24 Vdc, DIN rail, IP20 |
Modules per master: the product pages give two different figures. Check the page of the model before you plan a large set.
See the families working
One case study per family, written with the engineers who built each project.
- End-of-line test benchM-Duino
- Quality checks on a manufacturing lineArdbox
- Center pivot irrigation controlESP32 PLC
- Solar tracker data gatewayRaspberry PLC
- Water bottling HMITouchBerry Pi
Frequently asked questions
What changes between an M-Duino, an ESP32 PLC and a Raspberry PLC with the same model name?
The three families use the same model names (19R, 21, 38AR, 38R, 42, 57R, 58), but the I/O is not always identical, so compare the rows in each table.
The processor and the software change: M-Duino has an Arduino Mega 2560 without an operating system, ESP32 PLC adds Wi-Fi and Bluetooth LE, and Raspberry PLC runs Linux with two Ethernet ports, two RS-485 ports and a UPS.
What is the difference between CORE and FLEX?
CORE models ship in a fixed configuration, for example a Raspberry PLC CORE with 4 GB of RAM, Linux preinstalled and no expansion board. FLEX models are configurable: RAM, an option board such as LoRa, 4G or CAN, and on the TouchBerry Pi an IP65 front.
Which Industrial Shields models run Linux?
Raspberry PLC, TouchBerry Pi and GateBerry run Linux on a Raspberry Pi. Ardbox Q runs Debian Linux on its Qualcomm processor and keeps the real-time control on an STM32 microcontroller. M-Duino, Ardbox and ESP32 PLC run your program directly, without Linux.
Which models have Wi-Fi and Bluetooth?
ESP32 PLC, Raspberry PLC and GateBerry have Wi-Fi and Bluetooth LE built in. Ardbox Q has Wi-Fi and Bluetooth on its Linux side. M-Duino and Ardbox use wired communications: Ethernet on M-Duino, and RS-485 and RS-232 on both.
How do I add more I/O to a controller?
Use moduleX remote I/O. It is a Modbus RTU slave over RS-485, so any controller with an RS-485 port can read it, and every PLC family on this page has RS-485. Another option is to move up to a larger model of the same family.
Which model has the most relay outputs?
The ESP32 PLC 57R and the Raspberry PLC 57R have 24 relays and the M-Duino 57R has 23. The 38R models have 16. The 19R and 38AR models, the Ardbox Relay and the Ardbox Q ADR have 8.
Where do I find the datasheet and full specifications?
On each product page, in the specifications and documents section. Every model name in these tables links to its page. The tables take their data from those pages; where a value still has to be confirmed, the cell says so and links to the page.
Not sure which model fits? Send us your signal list (digital and analog inputs, outputs, relays and communications) and an engineer will tell you which model covers it. Contact an engineer.
Tell us about your project
Describe what you want to control and which model or family you are looking at.