finds.dev← search

// the find

Haimrich/stm-opc

★ 16 · C · updated Jun 2022

OPC UA Client on STM32F769I

A university course project that runs an OPC UA client on an STM32F769I-DISCO board using open62541, FreeRTOS, LwIP, and TouchGFX. It connects to a node-opcua test server over Ethernet and renders live industrial data (tank levels, temperatures, valve states) on the board's touchscreen. For embedded engineers curious about OPC UA on Cortex-M7.

The stack integration is non-trivial: getting open62541 running on bare metal with LwIP as the network layer requires careful heap and task configuration, and it works. TouchGFX + OPC UA subscriptions giving live UI updates is a good proof of concept for factory HMI work. Both IAR (EWARM) and Keil (MDK-ARM) project files are included, so you're not locked to one toolchain. The companion node-opcua server with simulated variable changes makes the whole thing self-contained for testing.

It's a 2022 university project with 16 stars and no commits since — open62541 has had breaking API changes since then, so this won't build against a current version without rework. No security: OPC UA is running without encryption or authentication, which is fine for a demo but means you can't lift this pattern into anything production-adjacent without a significant rewrite. The tutorial is Italian-only, cutting off most of the audience who might actually want to follow it. Memory configuration (heap size, LwIP pbuf pools) is hardcoded for this specific board; porting to any other STM32 will require trial and error.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →