Real Time Automation (RTA) needed ESP32 firmware to connect OEM equipment to ethernet-based industrial networks, leveraging the company’s existing libraries for industrial protocols and gateways. The system needed to move real-time data in both directions, provide a web user interface on the device that could be branded/white-labeled for each customer, and support fast and easy customization of the firmware for each unique application.
To understand more what this is about, please watch the short video on this LinkedIn post.
I originated the concept of creating a generalized platform to meet these needs. I developed and tested the ESP32 firmware myself through 24 iterations over 20 months, with iteration 22 being the first one to be commercially released. I conceived of and built the initial versions of a desktop application to create, validate and deploy configurations to the device. Later on we added a teammate, and I coached him through expanding the desktop front-end to accommodate more protocols and logic features.
The device firmware was written for ESP32 using FreeRTOS, ESP-IDF, C++, ESP32 Arduino Core and an asynchronous web server with HTML, CSS and JSON REST APIs for interfacing the front-end.
The customization workbench application was written for Windows 11 using C#, WPF, and the Telerik UI for WPF library. It uses an HTTP/JSON client to communicate with the ESP32 device.
As of April 2024, the device firmware supported serial connections, Modbus RTU and TCP clients and servers, Ethernet/IP adapter, BACnet/IP server and a bidirectional MQTT client.
Initial customer deployments occurred in 2024. Profinet and OPC/UA connectivity were added later in 2024. The platform was re-applied on different ESP32 hardware for a major customer in 2024. The RTConnect Module is also marketed by RTA’s technology partner, GridConnect Inc. as the Grid45 module. Financial results are to be determined, but the platform is expected to have a long lifetime.