Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:sw:00-start [2018/07/11 07:18]
martin_kudlacek
en:sw:00-start [2024/02/13 13:22] (current)
avsetula [Choosing the right software]
Line 1: Line 1:
-====== ​Software ​======+====== ​Choosing the right software ​====== ​ 
 +Software openness of Unipi controllers provides you with the option to choose from a wide selection of available software solutions, ranging from Mervis, the officially supported platform, to third-party platforms to your software. This guide will help you to navigate between the available software and to choose the best option for your project.
  
-One of the main advantages of our hardware is its open nature. Users of our product are not limited to a single software solution. In case of UniPi controllers,​ customers can choose from a variety of software platforms, both commercial and opensource. That way, every customer can choose a solution ideal for any project.+----
  
-Thanks to their open nature, our controllers have a wide range of possible usesFrom small smarthome applications to industrial automation, from custom-coded simple platforms to professional all-in-one solutions ​all you need to do is to choose a right software.  +<​tile>​ 
-==== Choosing the right software ​==== +| en:​sw:​01-mervis ​         | Mervis ​               | files:​unipi-kb-icon-mervis.png    | 
-When choosing the right software, there are several questions to consider: ​+| en:sw:02-apis            | APIs                  | files:unipi-kb-icon-os.png ​       | 
 +| en:​sw:​03-3rd-party ​      | Third-party software ​ | files:​unipi-kb-icon-software.png  | 
 +| en:​sw:​04-unipi-firmware ​ | Unipi Software ​       | files:​unipi-kb-icon-products.png ​ | 
 +</​tile>​ 
 +===== Software options =====
  
-**Is the given software compatible with the control unit?** +{{:​en:​sw:​software_schematkoeng.jpg|}}
-Software developed and provided by our team is compatible with all our products, but the development of other software platforms and their compatibility with our products is a responsibility of third-party developersIf you're not sure whether or not the third-party software is compatible with our products, we recommend using our native software+
  
-**To what extend is the software supported?​** +==== Mervis ==== 
-Third-party developers provide their own documentation,​ manuals and support for their software. ​If you cannot find solution for a problem, you may post your question on their or our forum. Documentation,​ manuals and support for our software can be accessed either via our website, or by contacting our technical support.+{{:​en:​sw:​unipi-software-mervis-comp.jpg|}}
  
-**Open source or proprietary ​software?** +A complete ​software ​platform provided for free to all Unipi controllersThe Mervis IDE development environment,​ a core of the solution, is suitable also for users without any deeper PLC programming knowledge thanks to its user-friendly interface ​and clear design. Mervis also offers a professional SCADA interface, HMI editor, cloud database ​and a mobile appThat makes it an ideal choice for a variety ​of users such as installation companies looking for reliable ​and stable solution with full technical support. Detailed info about Mervis is available [[https://​kb.unipi.technology/​en:​sw:​01-mervis|on this link]]
-Open source software can be developed or edited by anyoneThat means users can experiment ​and create their own programs ​and share its source code freelyCommercial software does not offer advantages ​of open-source solutions, they can however offer better support, dynamic development ​and more user-friendly interfaces+
  
-**What will be the product used for?** +//Note: Additionally,​ Mervis training courses are organized throughout a year. These courses are suitable ​for both beginners and experienced users. Learn more about the courses ​and closest course dates [[https://​www.unipi.technology/​training-and-certification|on this link]].// 
-The answer here greatly depends on the specific application you want to use our product in as each software offers slightly different features ​and functionsFor commercial projects ​and industrial systems, is suitable a software in accordance with IEC 61131-3. For Smart Home it is good to use platforms which focuses on such application and offers convenient functions and visually appealing interface. But most importantly it always depends ​on your individual needs.+
  
-**What technology are going to be used in the project?** +==== Application programming interface (API) ==== 
-Depending on the software platform, it may or may not support all the protocols, devices and third-party products. Before choosing the software, we thus strongly recommend to check the platform'​s compatibility,​ either via platform'​s documentation or by sending a request to the platform'​s developer+{{:​en:​sw:​unipi-software-api-en-comp.jpg|}}
  
-=== Available ​software ​overview ​=== +Unipi controllers are based on the Linux open-source operating system, for which we provide an application programming interfaces (API) as a method of direct access to inputs, outputs and communication interfaces of Unipi controllers. Thanks to the API the Unipi hardware can be quickly and easily integrated into your software or third-party solutions, making it an ideal choice for software developers. Our technical support team is ready to help you with implementation.  
-FIXME Zjistitjaký SW ze [[https://www.unipi.technology/​software_documentation/choosing-the-right-software-71|seznamu na webu]] je ještě aktuální ​(respektive chceme jej propagovat)+ 
 +Unipi API consists of three main components:  
 +  * Modbus TCP protocol representing a standard interface for interaction with Unipi PLC I/Os 
 +  * SysFS driver providing filesystem-level access to Unipi controller inputs/​outputs 
 +  * EVOK - a set of web-based APIs for interaction with all I/Os of Unipi controllers and extension modules 
 + 
 +More info about the individual APIs is available [[https://​kb.unipi.technology/​en:​sw:​02-apis|on this link]]  
 + 
 +//Note: Using the Mervis platform does not prevent access to the controller’s Linux OS, eg. you can use your software along with Mervis on a single controller. A good example of this feature is the [[https://​kb.unipi.technology/​en:​sw:​01-mervis:​08-sscp-bridge|SSCP to SQL Bridge]] service for storing data from Mervis-running Unipi PLCs into an external SQL database.//​ 
 +  
 +===== Important info for choosing the right software ​===== 
 + 
 +==== Commercial or open-source?​ ==== 
 +**Open-source solutions** are characterized by freely accessible and editable source codeallowing its users to modify and update the software according to their needs or to add new tools and functions. The main disadvantage is the absence of technical support - in case of issues, users have to rely on various community forums. Open-source software also cannot always guarantee compatibility with hardware. Aside from open APIs, Unipi technology also provides preassembled operating system images suitable for developers and OEM customers - an open-source OS image and a custom OS image.  
 + 
 +//Note: For Unipi-developed APIs (see above) we provide full technical support and complete documentation. We also guarantee their full compatibility with all Unipi controllers.//​  
 + 
 +**Commercial solutions** are closed software platforms that often require paid licences to be used. Their users are limited only to officially developed tools and functions provided by the solutions’ developers. This disadvantage is, however, compensated by the availability of official technical support, dynamic development,​ regular updates and a guarantee of full functionality on systems listed as compatible. The official supported solution for Unipi controllers is Mervis (see above) for which we provide direct technical support and we guarantee its full compatibility with all Unipi controllers.  
 + 
 +{{:​en:​sw:​software_table_eng.png|}} 
 + 
 +==== What is the extent of Unipi technical support? ==== 
 + 
 +**Full support** is provided for Mervis and the Unipi-developed APIs. Direct technical support is also available along with complete documentation,​ tutorials, OS images and assistance with implementation and/or installation.  
 + 
 +**Partial support** is available for Node-RED, taking the form of a preassembled OS image available on Unipi Knowledge Base. The support is limited to preparation of Unipi hardware - in case of software issues please consult ​[[https://discourse.nodered.org/​|Node-RED community]] forum or the [[https://​forum.unipi.technology/​category/27/node-red|Node-RED section]] of the Unipi technology forum. ​  
 + 
 +For other third-party solutions, **technical support is not provided**. If you encounter trouble with commercial platforms, please consult the corresponding tech support department. In the case of open-source solutions please visit community forums dedicated to the solution.  
 + 
 +===== List of available ​software ​solutions ===== 
 +==== Officially supported platforms ====  
 + 
 +| Name | **Developed by Unipi** | **OS image** | **Unipi support** | **Full functionality** | 
 +| [[en:sw:01-mervis|Mervis]] | Yes | Yes | Yes | All Unipi PLCs | 
 +| [[en:​sw:​02-apis|API]] | Yes | Yes | Yes | All Unipi PLCs | 
 + 
 +==== Third-party solutions ==== 
 + 
 +| Name | **Developed by Unipi** | **OS image** | **Unipi support** | **Full functionality** | 
 +| [[https://​kb.unipi.technology/​en:​sw:​03-3rd-party:​nodered|Node-RED]] | No | Yes | Partial¹ | All Unipi PLCs | 
 +| [[https://​www.home-assistant.io/​|HomeAssistant]] | No | No | No | Not guaranteed² | 
 +| [[https://​kb.unipi.technology/​en:​sw:​03-3rd-party:​codesys|CODESYS]] | No | No | No | Not guaranteed² | 
 +| [[https://​kb.unipi.technology/​en:​sw:​03-3rd-party:​rexygen|REXYGEN]] | No | No | Third-party | Unipi 1.1 | 
 +| [[https://​fhem.de/​|FHEM]] | No | No | No | Not guaranteed² | 
 +| [[https://​pimatic.org/​|Pimatic]] | No | No | No | Not guaranteed² | 
 +| [[https://​www.domoticz.com/​|Domoticz]] | No | No | No | Not guaranteed² | 
 +| [[https://​www.openplcproject.com/​|OpenPLC]] | No | No | No | Unipi Neuron, Unipi 1.1 (Not guaranteed
 +| [[https://​www.openhab.org/​|openHAB]] | No | No | No | Not guaranteed² | 
 +| [[https://​nymea.io/​|Nymea]] | No | No | No | Unipi Patron, Neuron & Axon (through SysFS) | 
 +| [[https://​homebridge.io/​|Homebridge]] | No | No | No | Unipi Neuron, Unipi 1.1 | 
 +| Others³ | No | No | No | Not guaranteed² |  
 + 
 +**Explanation** 
 +  - Tech. support provided only for the preparation of Unipi hardware for Node-RED implementation 
 +  - Functionality may be limited only to certain product lines or models. We recommend consulting the corresponding tech support or community forum 
 +  - Open-source solutions not included in the list that may be compatible with Unipi controllers. 
 + 
 +If you have any software-related questions, feel free to get in touch at [[mailto:​[email protected]|[email protected]]],​ or contact our technical support at [[mailto:​[email protected]|[email protected]]].