I have to renew an old house automation system and am thinking about the Siemens Logo control system. A requirement is that the states of the input and output ports can be read from a c# application.
Since some of the logo modules have Ethernet ports, I thought that they probably support reading and writing the port states via http. However, I have not found information about such a feature.
Is there someone reading and writing the port-states of a Siemens Logo from within c#? Is there a documented API, hopefully a HTTP-API? Or can someone recommend me another automation system, which has such an API?
I am new to the Siemens Logo automation system.
If it supports HTTP (not HTTPS), and you want to reverse-engineer the API, then you might be able to sniff the messages sent to the Ethernet interface.
However this task is brutal, at least you have enough time/patience, I wouldn't recommend it.
You have more options in the market. Anything that supports X10 (ancient), Insteon or Z-Wave might get you in the right direction.
I have experience with Insteon.They charge $200 for the SDK, and rumors say that the SDK is not well documented and developing can be a pain, but there's a free library that you can get here.
http://soapboxautomation.com/support-2/fluentdwelling-support/
You only need the modem COM / USB and you're ready to control X10 and Insteon devices.
I know this question is now over 2 years old, but just for the sake of completeness and if somebody stumbles over this question while looking for an Siemens Logo HTTP-API:
The newer modules (0ba7 and 0ba8) are equipped with an ethernet port and therefore capable of speaking the S7 protocol. There are free libs out in the net implementing this protocol like libnodave or snap7.
I implemented some sort of a "middleware" with C#/WCF which is communicating trough libnodave with the Logo and exposing a simple REST/JSON API for controlling. Thanks to MONO this also runs on the good old Raspberry Pi 24/7 with low power consumption. You can find it here, unfortunately my site is in german language only.
On the newest Logo 8 with the built-in web server, it is possible, and not even that difficult.
I'm documenting my findings here: https://github.com/jankeymeulen/siemens-logo-rest, maybe one day I will write a wrapper, but it's pretty straightforward to use it e.g. with Node-RED.
E.g. to read the status from I1:
curl 'http://192.168.1.100/AJAX' -H 'Security-Hint: ABCDEFGHIJKLMNOPQRSTUVWXYZ123456' --data-binary 'GETVARS:v1,129,0,0,1,1'
Security hint you'll need to sniff once, but it can be reused indefinitely (from the same IP address).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With