{"id":19190003,"url":"https://github.com/ixoncloud/edge-app-node-red-opc-ua-ixon-cloud","last_synced_at":"2025-07-09T18:08:55.055Z","repository":{"id":254136181,"uuid":"845002247","full_name":"ixoncloud/edge-app-node-red-opc-ua-ixon-cloud","owner":"ixoncloud","description":"Edge App - Node-RED with OPC UA Server writing data to IXON Cloud","archived":false,"fork":false,"pushed_at":"2025-01-16T12:00:25.000Z","size":986,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-16T13:30:43.050Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://marketplace.ixon.cloud/en/apps/nodered-edge","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ixoncloud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-20T11:48:00.000Z","updated_at":"2025-01-16T12:00:26.000Z","dependencies_parsed_at":"2025-01-16T13:19:20.638Z","dependency_job_id":"9837c253-df60-4b0f-8dfa-a599e007567c","html_url":"https://github.com/ixoncloud/edge-app-node-red-opc-ua-ixon-cloud","commit_stats":null,"previous_names":["ixoncloud/edge-app-node-red-opc-ua-ixon-cloud"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ixoncloud","download_url":"https://codeload.github.com/ixoncloud/edge-app-node-red-opc-ua-ixon-cloud/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240266855,"owners_count":19774075,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T11:32:35.029Z","updated_at":"2025-07-09T18:08:54.431Z","avatar_url":"https://github.com/ixoncloud.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Edge App - Node-RED with OPC UA Server writing data to IXON Cloud\n\nThis project demonstrates the integration of Node-RED with an OPC UA Server, specifically designed for deployment on IXON's SecureEdge Pro device and seamless integration with IXON Cloud. It showcases how to leverage IXON's industrial IoT ecosystem for efficient edge computing and cloud connectivity.\n\nKey components of this project include:\n\n1. A custom Node-RED image with OPC UA nodes, optimized for SecureEdge Pro\n2. An OPC UA Server built with python\n3. Docker-based deployment tailored for SecureEdge Pro\n4. Direct integration with IXON Cloud for secure data storage and visualization\n\n[!IMPORTANT]  \nOriginally, the OPC UA Server node was hosted within the Node-RED container. However, due to [an issue causing Node-RED to become unresponsive](https://github.com/mikakaraila/node-red-contrib-opcua/issues/770) when adding the server node to new flows, the solution has now been split into **two Docker containers**:\n\nThis solution demonstrates the power of IXON's SecureEdge Pro as an edge computing platform, capable of running containerized applications like Node-RED. It also highlights the seamless connectivity between edge devices and IXON Cloud, enabling remote monitoring, data analysis, and device management through a unified platform.\n\nUsers can take this project as a template and adapt it for their specific use cases within the IXON ecosystem. The flexibility of Node-RED combined with the robustness of SecureEdge Pro allows for easy customization of data flows and integration with various industrial protocols. Whether you need to collect data from PLCs, implement custom data processing logic, or create tailored dashboards in IXON Cloud, this project provides a solid foundation that can be extended to meet diverse requirements in various industrial IoT scenarios.\n\n## Steps to Deploy Node-RED with OPC UA Nodes\n\n### Prerequisites\n\nEnsure your environment is properly set up by following this guide: [Running custom Docker applications on the SecureEdge Pro](https://support.ixon.cloud/hc/en-us/articles/14231117531420-Running-custom-Docker-applications-on-the-SecureEdge-Pro).\n\n### 1. Download and adjust to your SecureEdge Pro\n\nDownload the code of this project and change the IP address in the following files to the LAN IP address of your SecureEge Pro:\n\n- buildkitd-secure-edge-pro.toml\n- build_and_push_containers.sh\n- build_and_push_containers.cmd\n\n### 2. Build and Push the Node-RED Container\n\nEnsure you have the correct builder in use:\n\nFor Unix-based systems:\n\n```bash\n./setup-buildx-env.sh\n```\n\nFor Windows:\n\n```cmd\nsetup-buildx-env.cmd\n```\n\nRun the script to build and push the Node-RED container with OPC-UA nodes to the SecureEdge Pro:\n\nFor Unix-based systems:\n\n```bash\n./build_and_push_containers.sh\n```\n\nFor Windows:\n\n```cmd\nbuild_and_push_containers.cmd\n```\n\n### 3. Set Up the OPC UA Server on SecureEdge Pro\n\n- Access the local web interface of the SecureEdge Pro.\n- Create a `opcua-server` container using the `opcua-server` image with the following port mappings:\n\n  ```\n  Port Mapping: 50000:50000\n  ```\n\nRefer to the screenshot for configuration details:  \n![Create Container](opcua-server/secure_edge_pro_settings/create_container.png)\n\n### 4. Set Up the Container on SecureEdge Pro\n\n- Access the local web interface of the SecureEdge Pro.\n- Create a `node-red-opc-ua` container using the `node-red-opc-ua` image with the following port mappings:\n\n  ```\n  Port Mapping: 1880:1880\n  ```\n\n- Create a volume with the following settings:\n\n  ```\n  Volume: node-red-data -\u003e /data\n  ```\n\nRefer to the screenshot for configuration details:  \n![Create Container](node-red/secure_edge_pro_settings/create_container.png)\n\n### 5. Start the Containers\n\n- Wait for the containers to be created.\n- Start the containers.\n\nRefer to the screenshots for details:  \n![Running Container](opcua-server/secure_edge_pro_settings/running_container.png)\n![Running Container](node-red/secure_edge_pro_settings/running_container.png)\n\n### 6. Access Node-RED Web Interface\n\n- In IXON Cloud, create an HTTP Web Server to easily access the Node-RED web interface on the SecureEdge Pro.\n\nRefer to the screenshot for configuration details:  \n![HTTP Server](node-red/ixon_cloud_settings/http_server_node_red.png)\n\n- You can now access the Node-RED web interface on the SecureEdge Pro via the HTTP Web Server you created in IXON Cloud.\n- The flow in Node-RED is already configured to write to the OPC UA server. It waits for the server to be ready to inject the variables and then starts the loop to update the variable.\n\n### 7. Access Virtual HMI Web Interface\n\n- In IXON Cloud, create an HTTP Web Server to easily access the Virtual HMI web interface on the SecureEdge Pro.\n\nRefer to the screenshot for configuration details:  \n![HTTP Server](node-red/ixon_cloud_settings/http_server_virtual_hmi.png)\n\n- You can now access the Virtual HMI web interface on the SecureEdge Pro via the HTTP Web Server you created in IXON Cloud.\n\n### 8. Set Up OPC UA Data Source in IXON Cloud\n\n- In IXON Cloud, create an OPC UA datasource to access the OPC UA server running in Node-RED on the SecureEdge Pro.\n- Import the variables using the provided CSV file: `opcua-server/ixon_cloud_settings/variables.csv`.\n- Run the test to ensure the connection is working.\n\nRefer to the screenshots for configuration and testing details:  \n![Data Source](opcua-server/ixon_cloud_settings/data_source.png)  \n![Variables Run Test](opcua-server/ixon_cloud_settings/variables_run_test.png)\n\n### 9. You can now access the data from the OPC UA server in IXON Cloud.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixoncloud%2Fedge-app-node-red-opc-ua-ixon-cloud/lists"}