Skip to the content

Almost everyone that has tried to do some experiments with IoT projects have come across Node-RED, whether this was for a private hobby project or a business application. The reason is of course that Node-RED is a great tool, easy to get started with, large community support and free! 

At a first glance there are several similarities with the Crosser Edge Intelligence solution. This blog post will try to outline similarities and key differences and the key rationale behind some of the main parts of Crosser’s Edge Intelligence solution for Industrial IoT.

Edge computing - modular and drag ‘n drop

Both Node-RED and Crosser have adopted a module based approach, where predefined modules are connected graphically to define the sequence of operations to perform on the data. This is a well-proven concept used in many business automation tools as well as data analysis/signal processing tools and allows non-programmers to define processes or algorithms. 

For industrial IoT applications you will need modules to get data from your machines using common industrial protocols such as OPC, Modbus, Profinet, MQTT and HTTP. When implementing edge streaming analytics you want to deliver the results to other systems or services, hence you will need modules that can send data to different cloud services and on premise systems or machines.

Finally you will need processing modules (data cleaning, normalization, filters, conditions, algorithms…) that can process your data to achieve your desired outcome. Both Node-RED and Crosser offer these capabilities. So on the surface the two tools may look similar, but there are some significant differences under the hood that have a major impact on the products. 

Computing platform

First, Node-RED is written in Javascript running on the NodeJS platform, while the Crosser Edge node is written in C# running on .NET core. This results in the following main differences:

  1. Performance - The Crosser Edge node can process significantly more data on the same hardware platform. The actual number will depend on the use case but a 10x difference is not uncommon.
  2. Freedom - In addition to the pre-built functionality offered by the Crosser module library you can easily add your own code to a flow using our code modules. C# is the native language for the Crosser node but through the integration with external execution environments it is as easy to add code in other languages, such as Python. You can also build completely customized modules using the Crosser SDK. These modules are then available in the visual designer together with the standard modules.
  3. Machine Learning - The Crosser node is the perfect platform for running your machine learning models at the Edge. Through the integration with a standard Python environment you can host models built with any of the common ML libraries for Python. In addition, the Crosser Cloud service manages your model files and automatically distributes them to the edge nodes where they are needed.

Feature

Node-RED

Crosser

Comment

Compute Platform

Node JS

.NET Core

Javascript vs C#. Interpreted vs compiled.

Performance ratio, messages per second

1

10

10x performance difference based on same processing flow on different HW platforms 

Machine Learning

None

Any Python framework

ML support makes the platform future proof


Read more about ML in the Edge (Blog)  

Module libraries 

One of the major advantages of Node-RED is the extensive library of modules, almost anything you want to do is already available as a module and easily accessible through the integrated repository. However, many of these modules are provided by the open source community and this introduces some challenges. 

Lack of consistency means that it is not always trivial to connect modules from different providers and you may end up having to add conversion logic to get data from one module to the next. In many cases, there are also more than one alternative to choose from for a specific feature, which one should you use and what is the status of these alternatives, have they been tested in production environments and are they still supported? 

Crosser provides an extensive library of modules that covers all the common use cases for industrial IoT applications. These modules are built with a consistent messaging model and user interface and are production ready and fully supported. This greatly simplifies the usage and minimizes the risk. Modules can also be provided by third parties under similar conditions and it is also possible to build your own modules using our code modules or open SDK. 

Learn more about Crosser Flow Studio

Crosser Flow Studio OPC to Python Flow

Remote testing

Before a flow is deployed onto multiple nodes in production it must be tested. With Crosser you can verify your flows step-by-step by checking the data as it passes through each module. See individual messages as they are being processed or plot sensor data with the timeseries graph viewer. You can test run your flows in a safe sandbox environment, available as part of the cloud service, or you can connect the flow editor into any of the nodes you have deployed in the field, to verify your flows with real data accessible from your distributed nodes.

Life-cycle management

So far we have only talked about a single node and how to setup processing using a graphical front-end. This is the use case addressed by Node-RED. In most industrial IoT use cases you have multiple edge nodes being deployed, often at different sites or even on mobile machinery. How do you manage such a complex deployment without adding significant life-cycle costs? Enter Crosser Cloud!

Schedule a Demo

Contact us and schedule a free demo of your designated use case

Crosser Cloud - Edge Orchestration and Management

The Crosser Cloud service is used to manage your edge nodes. This is where you build flows using the Flow Studio visual design tool and then use the Edge Director to decide what version of a flow that should be running on each edge node. In contrast to single node flow editors like Node-RED, flow building and deployment are clearly separated operations with Crosser, to allow for the same flow to be used on any number of edge nodes. 

The Edge Director is designed to simplify the whole life-cycle management of Edge nodes, from on-boarding of new nodes to deploying new or updated flows and monitor the operation of all your edge nodes. All operations can be performed as easily on a single node or a group of nodes. Groups are created by attaching labels to nodes, allowing for different schemes such as overlapping or hierarchical groups. Define groups that make sense for your use case and operate on these groups as easily as with a single node. 

With the Edge Director you get version control of flows, modules and node software. Upgrades and downgrades can easily be managed on any number of nodes. Don’t miss out on added features because you don’t want to touch a working system. 

The Crosser Cloud is a pure management and configuration service. As soon as a flow is deployed on a node it runs autonomously, without relying on any connectivity to the cloud. The results of the data processing in an edge node is sent to wherever the flows specify.

Crosser Edge Analytics and Node-red Deployment Comparison

Feature

Node-RED
(Local)

Crosser
(Centralized)

Benefits with Centralized management

Flow Deployment

One-to-one

One-to-many

Build/change once, deploy to any number of nodes with single operation

Flow version control

Git

Internal

Out-of-the-box version control fully integrated with deployment tools

Module version control

Per node

Per flow

Version specified per module in a flow

Credentials management

Per node

Central library

Upload once and then reuse any number of times

Resource management

Per node

Central library

Upload files, ML models and code once and automatically deploy to any number of nodes through flow references

Debug

Locally

Cloud

Test-run flows on any deployed node or in cloud sandbox

Debug source

Dedicated module

Built-in per module

Turn on debugging on any module while flow is running


Learn more about the Edge Director

Flexibility, customization and ML

Using pre-built modules simplifies and speeds up the innovation process but even an ever-expanding library cannot meet all needs and requirements. Having different options to add customization is therefore important. 

Comparing four ways of adding customization:

Feature

Node-RED

Crosser

Comment

ML frameworks

None

Any Python framework

TensorFlow, PyTorch, Scikit-Learn…

Code modules

JavaScript

Python, C#

Use Python for simplicity and C# for performance

Custom modules (SDK)

NodeJS/ JavaScript

.NET Core/C#

Use standard .NET toolchains to build your own modules with the same high-performance offered by the standard modules

Module builder

No

Universal Connectors for REST APIs

Build reusable modules with no coding

Security & Management

Security, which is top of mind among everyone looking to connect machinery to external systems, ie the Internet. The Crosser solution is designed with security in mind from the start. Some examples:

  • All communication with edge nodes is encrypted
  • Nodes register with signed keys
  • All traffic between edge nodes and the Crosser Cloud is initiated from the edge nodes, to avoid having to open firewalls for inbound traffic. All outgoing traffic uses standard HTTP ports to avoid firewall changes.
  • Credentials are managed centrally by storing them in a secure vault. Edge nodes can then reference these credentials when they need to connect to external systems, such as cloud services, without exposing the actual credentials in any user facing interface.
  • With large edge computing deployments there will be many persons involved in operating the system. With the Edge Director you get role based access control so that you can finetune who can modify flows, who can update flows on each node, who can onboard new nodes and so on.

Feature

Node-RED

Crosser

Comment

User management

No

Yes

Centralized login simplifies user management

External authentication

No

Yes (Q4)

Use your existing directory servers to give your users access to Crosser Cloud

Access rights

No

Yes

Fine tune who can do what with your edge nodes and flows

Node monitoring

Local per node

Multi-node in cloud

Always have a clear picture of the status of all your distributed nodes

Deployment logs

No

Yes

Keep track of when changes were deployed

Runtime environment

NodeJS

.NET Core

Maximize performance while still getting OS independence

Deployment isolation

NodeJS

Docker container

Simple installation and support for multiple nodes and versions on the same host


Fully supported

Finally it’s worth pointing out that the Crosser Solution is a commercial fully supported solution with a team of experts waiting to help you. 

Feature

Node-RED

Crosser

Comment

Support

Community

Crosser

Enterprise support with team of experts


Enterprise ready solution for large scale deployments

In summary, the Crosser Edge Streaming Analytics solution is a pre-packaged, production-ready solution for industrial IoT applications that provides great flexibility in terms of connectivity and processing options, while still being easy to use with minimal life-cycle costs.

Recommended reading: Crosser Edge Analytics Platform

To know more about this solution and sign up for a demo or trial contact us here!

About the author

Interested in a free trial?

Apply for a free trial program here