// the find
cmbahadir/opcua-esp32
Embedded OPC UA Server on ESP32 based on open62541 stack
OPC UA server running on an ESP32, built on the open62541 amalgamated stack via ESP-IDF. Exposes a minimal information model: two relays and a DHT22 temperature sensor over OPC UA. Aimed at industrial IoT hobbyists or engineers wanting to prototype factory-floor connectivity on cheap hardware.
1. Proves the concept actually works — open62541 on FreeRTOS/Xtensa is non-trivial, and the author did the painful porting work so you don't have to start from scratch. 2. Uses the amalgamated single-file open62541 build, which sidesteps the usual CMake nightmare of embedding a large C library into ESP-IDF. 3. GitHub Actions CI with a build script means you can verify the toolchain compiles before you touch real hardware. 4. Configuration through idf.py menuconfig is the right approach — no hardcoded credentials.
1. Frozen in 2023 against an unspecified ESP-IDF version; open62541 has moved significantly and the porting patches are described as 'trial and error' with no analysis — you will hit compatibility walls if you update either dependency. 2. No security whatsoever — no OPC UA security mode, no certificates, no authentication. The README explicitly warns against production use, but the code gives you no path toward securing it either. 3. Information model is hardwired for one specific Olimex board (GPIO 32/33 relays); adding nodes for different hardware means reading open62541 internals with no abstraction layer to guide you. 4. The open62541.c/.h amalgam is checked in as a binary blob at a fixed version — no mechanism to pull a newer upstream version, so you're stuck maintaining a fork of a ~2MB generated file.