In the ever-evolving landscape of IoT, the ability to integrate diverse devices and platforms easily is crucial for building robust and flexible systems.
Today, we’re excited to highlight the potential of integrating Siemens LOGO! with Thinger.io through MQTT, enabling users to take advantage of the strengths of both platforms to create powerful IoT solutions.
Siemens LOGO! is a highly versatile logic module known for its simplicity, flexibility, and reliability. Widely used in industrial automation, building control, and various other applications, Siemens LOGO! allows for easy implementation of control tasks without requiring extensive programming knowledge.
From Thinger.io we've developed the template for connecting and auto provisioning Siemens LOGO! logic modules directly with the platform, providing a non-blank start for the final configuration of the project.
The plugin provides a first step to be able to integrate a fleet of Siemens LOGO! controllers, while allowing the ad-hoc configuration that best suits the user's needs.
It provides the following settings:
A device_information property, that will be used to set the device information manually (firmware version, serial number, etc).
A shadow property, that will be used to store the current state of the device.
A siemens_logo data bucket, that will be used to store the data sent by the Siemens LOGO! controller.
A up and down device resources, to control the Siemens LOGO! controller.
An autoprovision rule, that will be used to create the device in the Thinger.io platform automatically.
Basic product functions to parse the shadow of the device and handling sending commands to the Siemens LOGO! controller.
A preconfigured dashboard to visualize relevant data of each Siemens LOGO! controller.
This plugin is fantastic!!! Let’s buy a Siemens LOGO! to test it!!!
Some suggestions:
Since Siemens LOGO! is a device used in risky operations, it is very important to implement an offline button state. Currently, Thinger’s button widget does not have this feature.
It is very important to create a third state for the button (on, off and offline), as is already available in other applications (e.g. Sonoff), which indicates to the User that he cannot press the button because the device is offline.
In the example in the image, the device is offline (thumbs down), but currently, the button widget does not make the button offline. This can be a very big problem for the average user who may think that he has turned on or off an electrical device, but in fact, the device was offline. (NOTE: The thumbs-down image is not an intuitive symbol that allows the user to understand that the device is offline).
We have already pointed out this problem and it is urgent that Thinger implement a third button state in its widgets, because the lack of this feature represents a great risk for the user and for the operations of the devices that are being controlled by Siemens LOGO!. Without the implementation below, we would not use Siemens LOGO! in our projects, as it would be a huge risk, since the average user could press the button and think that it turned the equipment on or off, but in fact the device is offline… Or see an LED and think that it is the current operating status of the equipment. In other words, the implementation of the resources below is essential to safeguard against human error or misinterpretation by the average user. Or to prevent the Thinger widget from misleading the user by allowing him to press the button (widget) when the device is offline. This is a very serious and real problem. We have had cases like this with our clients, when we provided devices with relay activation. Our client thought he had turned off the electric pump, because the widget allowed the button to be operated, but the device was offline.
@alvarolb , it is very important that features like the ones listed below are implemented in Thinger widgets (or let us know how we can implement them here), since industrial and commercial operations need these features to reduce the risk of common users operating these devices.
Other than that, we think the plugin is fantastic and would like to see more examples of plugins like this.
Two other features that could be added to improve the user experience would be:
Hide Dashboard Tabs for specific Users (This feature would allow the creation of specific tabs with widgets that allow specific users to change the device configuration via widget form, leaving another tab only for viewing data, for example). In addition, this implementation could avoid red error pop-ups, since the widget forms would be in another tab, accessible only to specific users to view it.
Thinger has made progress in the possibility of limiting access to certain features or device properties for specific users, as well as making improvements to the Dashboard - such as lazy loading of data. Therefore, we understand that this would be a feature that would further improve the user experience. In the case of the Siemens LOGO! plugin, for example, a specific tab could be created with widgets and forms to change device settings that would only be accessible by users with specific permissions (e.g., an operations technician). [Dashboard Screen] - Option to hide or disable dashboard tabs for certain users · Issue #7 · thinger-io/thinger-server · GitHub