Releasing the S7-Project-Explorer as open-source
The ENLYZE S7-Project-Explorer is a Windows application to explore Siemens STEP 7 projects and export a complete PLC variable list as a CSV table. This solves our recurring problem that we need to know all PLC variables of a machine, but the machine manufacturer doesn’t want to hand us their STEP 7 project file. They are happy to spend 2 minutes with our S7-Project-Explorer though and provide us with a variable list.
For those of you who are not into automation (like myself 4 years ago), let me quickly summarize that industry for you:
It’s dominated by a few big players.
Everything is highly proprietary.
And simple problems often require complex solutions…
Finding out about the PLC variables of an existing project used to be impossible without a properly licensed STEP 7 installation - with a License Server, and in the correct version. Even then, I’m not aware of any one-click solution in STEP 7 to export a complete list to the CSV format we need. Hence, our S7-Project-Explorer really makes a difference here. Today’s open-source release also ticks the remaining boxes.
Developing the tool was a multi-month effort into reverse-engineering STEP 7’s proprietary .s7p file format (yay, archaic dBASE databases!)
The result is a standalone Windows application that requires no installation and runs on every Windows since XP.
Unlike most of my current projects, the S7-Project-Explorer is written in C++. It’s based on the Wizard-2020 framework, which I introduced 2 years ago. I would have loved to write it in Rust, but its ecosystem doesn’t yet have decent support for Windows GUIs and will probably never provide the required compatibility down to Windows XP.