Meshmerize is a purpose-built mesh network stack for moving machines. It is a Mobile Ad-hoc Network specifically designed for low-latency, reliable machine-type communication.
Instead of relying on single wireless links between the base stations and the devices, Meshmerize uses a decentralized device-to-device communication to strengthen the network from the inside.
Conventional wireless connectivity to mobile robots, drones and vehicles suffer from two key challenges:
Both lead to intermittent packet losses or latency spikes anywhere between 200ms to 20s.
Meshmerize systematically circumvents these challenges through a simple trick – Let the devices communicate and cooperate with each other. Meshmerize combines the individual unreliable WiFi links to form a unified reliable network using an opportunistic redundant multipath routing technology.
Meshmerize packs some of the best features of mesh networks while smartly overcoming some of their pain points. Some of the more powerful features of Meshmerize are listed below:
Mesh networks are always thought of as something that makes sense only when more participants are available in the network. But, adding more participants tends to overwhelm the network, leading to delays and long queues of packets.
Meshmerize’s unique multi-path routing allows it to overcome this challenge by supporting many participants with high-reliability and low-latency connections.
But, like any system, not everything can be rosy - Meshmerize always picks reliability in the tradeoff between high-reliability and high-throughput, making it the ideal mesh network for industrial applications.
Meshmerize provides an easy, plug and play style extension of your wireless network. With very little setup time and management through Hive, you can expand your wireless network without any additional cabling.
Meshmerize nodes cooperate with each other as soon as they come online, helping you expand your network seamlessly.
It is normal in industrial environments for devices to go offline or out of service. When this happens, Meshmerize quickly adapts to the changed scenario and all the nodes are informed of this change instantly. Not just that, the packets are also dealt with smartly in such a situation, making sure that the mesh truly heals itself as soon as a node is offline.
Mesh networks are decentralized, but it doesn’t mean that managing it needs to be chaotic. Hive, our network management system offers a great way to configure, analyze, troubleshoot, manage and upgrade each participating node in Meshmerize.
Hive can also help you visualize and optimize your network on a regular basis, helping you make sure that the operations are always smooth.
Roaming is one of the most prominent problems faced by the Industrial wireless industry. In a traditional network, the devices are organized into multiple hub-and-spoke systems : with access points (APs) serving as hubs for transmission of data to the clients (robots, laptops, smartphones etc) serving as spokes of the system.
A well known problem with this topology is that as the devices move from one physical space to another, they are forced to deregister from one AP and register onto another AP. This process typically takes anywhere between a few 100ms to a few seconds. This is valuable time in which the device is offline, posing a threat to the operations and safety of the industry.
Meshmerize offers a radical rethinking of this system, keeping the devices always connected to each other. Since wireless is a shared medium, it is possible for the devices to always hear each other and help each other out. This potential of wireless generally goes untapped by the hub-and-spoke topology, but Meshmerize frees the devices of these shackles. Meshmerize enables all the devices to talk not only to the APs but also to each other, successfully overcoming the roaming problem because Meshmerize will enable devices to connect to multiple APs at the same time, effectively nullifying roaming handover times.
Radio shadows are notoriously difficult to design a wireless network around, especially in a constantly changing environment. It is often difficult to make measurements in industrial environments because unlike indoor / office environments, things in an industrial setup are always moving and changing. As things move and change, the radio shadows caused by them also changes. Thus, a perfectly covered spot today might become a shadow area tomorrow because a new shelf was placed there.
Meshmerize, helps mitigate the effects of this problem by relaying messages through to the “dark-side”. All we need to do make sure that the nodes see at least one other node (need not even be the AP that it was originally intended to talk to)
Ethernet cabling can be expensive and cumbersome but is definitely the most reliable form of communication when it works. Unlike other mesh networks which lose out on the awesomeness of ethernet connections, Meshmerize fully leverages the power of these connections by smartly recognizing these connections and using it to deliver high-reliability, low-latency, high-throughput messages.
In effect, Meshmerize smartly and dynamically creates data highways from the ethernet connections provided to it, making the network stronger, faster and better!
Meshmerize is a network by itself, but it can be so much more than just that. Once we assign an external network connected node to be the gateway node for a mesh, all the mesh nodes are now connected to that external network as well.
This external network could be your LAN, or it could be a DSL network, or even 4G or 5G networks, making Meshmerize the mechanism to deliver internet to all your moving robots.
In fact, Meshmerize can carry any IP traffic through the mesh, while providing reliable connectivity to your machines.
A very useful aspect of Meshmerize is that it can very efficiently deliver broadcast messages through the mesh network. This can be quite useful to provide safety beacons and other time-sensitive messages to all participants of the network. Meshmerize provides this high-reliability, low-latency broadcast mechanism, out-of-the-box.
For most cases, it would be best to configure nodes using Hive - our web-based network management tool.
However, for advanced users and some deep-diving, the Meshmerize CLI tool offers some useful commands to measure and control a single node. Some of the most important ones are listed here. Be sure to run these commands on the terminals of the relevant nodes (For more information see, Logging on to a Meshmerize device)
Note: Device identifiers in Meshmerize are MAC addresses. You can find them printed on the devices and on Hive.
$ meshmerize link
Shows information about all available direct connections/links to other nodes in the Meshmerize network.
A neighborhood table entry contains:
Example output of the Meshmerize link command
root@mm-c493001a32ed/# meshmerize link
remote iface remote node type stale rx/tx: mcs2xl mcs4xl mcs6xl
94:83:c4:11:36:78 94:83:c4:11:36:77 wifi 1 : 97%/ 46% 98%/ 0% 75%/ 0%
94:83:c4:1a:48:19 94:83:c4:1a:48:18 wifi 0 : 77%/ 90% 56%/ 68% 0%/ 0%
94:83:c4:10:23:db 94:83:c4:10:23:db wifi 1 : 100%/ 99% 87%/ 99% 98%/ 99%
Once Meshmerize nodes auto detect neighbors on LAN, they are listed as additional neighbors in the neighborhood table of a connected node.
Entries of backbone neighbors have udp under the type column, and do not list rate information, as the Ethernet link can be assumed error-free
Example neighborhood table for Ethernet backbone nodes (backbone entry in line number 5 marked as type "udp")
root@mm-c493001a32ed/# meshmerize link
remote iface remote node type stale rx/tx: mcs2xl mcs4xl mcs6xl
94:83:c4:11:36:78 94:83:c4:11:36:77 wifi 1 : 97%/ 46% 98%/ 0% 75%/ 0%
94:83:c4:1a:48:19 94:83:c4:1a:48:18 wifi 0 : 77%/ 90% 56%/ 68% 0%/ 0%
94:83:c4:1a:32:ed 94:83:c4:1a:32:ed udp 1 :
94:83:c4:10:23:db 94:83:c4:10:23:db wifi 1 : 100%/ 99% 87%/ 99% 98%/ 99%
$ meshmerize route
This lists the routing information of a node. The table has two levels: the destination nodes and, indented, the possible next hops. For the destination nodes, the information contains:
The indented next hop information further shows:
Example output of the Meshmerize route command :
root@mm-c493001aa35d:/# meshmerize route
c4:93:00:25:f7:5a metric 452 segno: 205 p: 99% stale: 0
via c4:93:00:25:f7:5a (255) iface: mon-phy0 rate: mcs2xl
via c4:93:00:25:f7:5d (127) iface: mon-phy0 rate: mcs2xl
relay c4:93:00:25:f7:5a metric 0 segno: 205 p: 100%
relay c4:93:00:25:f7:5d metric 461 segno: 204 p: 100%
relay c4:93:00:25:f7:2d metric 450 segno: 205 p: 99%
c4:93:00:25:f7:5d metric 455 segno: 204 p: 99% stale: 0
via c4:93:00:25:f7:5d (255) iface: mon-phy0 rate: mcs2xl
via c4:93:00:25:f7:5a (127) iface: mon-phy0 rate: mcs2xl
relay c4:93:00:25:f7:5a metric 467 segno: 204 p: 100%
relay c4:93:00:25:f7:5d metric 0 segno: 204 p: 100%
relay c4:93:00:25:f7:2d metric 450 segno: 204 p: 99%
c4:93:00:1a:32:ed metric 321 segno: 113 p: 100% stale: 1
via c4:93:00:1a:32:ed (255) iface: br-lan
via c4:93:00:25:f7:2d (127) iface: mon-phy0 rate: mcs4xl
relay c4:93:00:1a:32:ed metric 0 segno: 113 p: 100%
relay c4:93:00:25:f7:5a metric 784 segno: 111 p: 100%
relay c4:93:00:25:f7:5d metric 766 segno: 111 p: 100%
relay c4:93:00:25:f7:2d metric 753 segno: 113 p: 99%
c4:93:00:25:f7:2d metric 455 segno: 193 p: 100% stale: 0
via c4:93:00:25:f7:2d (255) iface: mon-phy0 rate: mcs2xl
via c4:93:00:25:f7:5d (127) iface: mon-phy0 rate: mcs2xl
relay c4:93:00:25:f7:5a metric 472 segno: 192 p: 100%
relay c4:93:00:25:f7:5d metric 467 segno: 192 p: 100%
relay c4:93:00:25:f7:2d metric 0 segno: 193 p: 100%