Well Being over Ethernet Reply

Guest Author: Andrew Patterson, Business Development Director for Mentor Graphics’ embedded software division (Thank you, Andrew!)

Mentor Embedded on the NXP Smarter World Truck 2017

Mentor Embedded on the NXP Smarter World Truck 2017

One of the larger commercial vehicles present at CES 2017 was the NXP® Smarter World Truck – an 18-wheeler parked right outside the Convention Center.  It contained over 100 demonstrations making use of NXP products showing some of the latest innovations in home-automation, medical, industrial and other fields.  Mentor Embedded, together with RTI, worked with NXP to set up a medical demonstration that showed data aggregation in real-time from medical sensors. By collecting medical data, and analyzing it in real time, either locally or in a back-office cloud, a much quicker and more accurate diagnosis of any medical condition can be possible.  Mentor Embedded’s aggregation gateway made use of the multicore NXP i.MX6, a well-established platform, running our own secure Mentor Embedded Linux®.  The technology we specifically wanted to highlight in this example was DDS (Data Distribution Service), implemented by RTI’s Connext® DDS Professional.  The DDS communication protocol, based on a physical Ethernet network, allows multiple sensor nodes to link to a hub or gateway, so it is appropriate for many medical and industrial applications where multi-node data needs to be collected securely and reliably.

Traditional patient monitoring systems have made use of client/server architectures, but these can be inflexible if reconfiguration changes are needed, and they don’t necessarily scale to a large number of clients in a large-scale medical or industrial installation. DDS uses a “publisher” and “subscriber” concept – it is easy to add new publishers and subscribers to the network without any other architecture changes, so the system is scalable.


In the publish-subscribe model there is no central data server – data flows directly from the patient monitor source to the gateway destination.  In our demo medical system, the data sources are individual sensors that put data onto the Ethernet network when the new readings are available.  Data is tagged for reading and accessed by any registered subscriber.  Once received by the subscriber gateway, the data can be uploaded to a cloud resource for further analysis and comparisons made with historical readings. Further trend analysis can be made over time.

The process for adding a new node to a publish-subscribe network is straightforward. A new data element announces itself to the network when it attaches, optionally describing the types and formats of the data it provides. Subscribers then identify themselves to the data source to complete the system reconfiguration.

Mentor Embedded and RTI medical applications demo where multi-node data needs to be collected securely and reliably

Mentor Embedded and RTI medical applications demo where multi-node data needs to be collected securely and reliably

DDS provides a range of communication data services to support a variety of application needs, ranging from guaranteed command and control, to real-time data transmission. For example, if it is required to send a “halt” command to a specific node, there is a data service type that guarantees error-free delivery, so sensor data transmission stops immediately. There are also time-sensitive modes, useful when there is time-sensitive data, which require minimum network latency.  Less time-critical data can make use of a “best effort” service, where transmission is scheduled as a lower priority than the time-sensitive communication.

Our demonstration setup is shown in the picture on the left in the NXP Smarter World Truck 2017. The NXP i.MX6 quad core system was linked to a 10” touch-screen display, showing patient graphs.  The Mentor Embedded Linux operating system included the RTI Connext DDS protocol stack, the necessary drivers for high-performance graphics, and the Ethernet network connections. Other options include a fastboot capability and wireless communication links for cloud-connectivity.  For more information please visit Mentor Embedded Linux.

To see when the NXP Smarter World Truck is coming near you, visit the schedule at iot.nxp.com/americas/schedule – it is being updated frequently, so keep a watch on it!

Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.

Unprecedented Achievements in Connected Systems: How 3 companies used DDS to achieve inspired results. Reply


As cheesy as it may sound, it’s the truth: our customers build things that are downright inspiring. They tackle the hard problems, seemingly preferring to run head on into a challenge as opposed to shying away from it. As a result, many of them have built systems and architectures that are saving lives, improving the quality of our experiences with technology, and pushing the boundaries of what we think is possible.

So who are these customers? What are they doing? Today I’m sharing the stories of three companies whose results are inspired, to say the least. Two of these applications are in the robotics domain, the other is in healthcare, and all three used Connext DDS.

Unprecedented Achievements in Connected Systems: How 3 companies used DDS to achieve inspired results.

1) ESA Telerobotics and Haptics Laboratory

I remember this like it was yesterday: a photo of our CTO, Gerardo, taken at a customer site visit, popped up on my screen. He visits many customers, but this wasn’t just any picture. This was a picture of him rocking a … robotic arm? No, an exoskeleton. I was jealous, to say the least.

This is the stuff my sci-fi-nerd-EE dreams are made of. Do you know the types of challenges they would have to overcome to achieve their goals? Here are two of their challenges: datalinks and latency. After viewing Andre Schiele’s TED Talk (go to 2h19min), my mind was buzzing with a list of possible applications and benefits that could be realized because of this technology. Think, remote surgery (over very long distances) and enabling exploration and scientific research in new places that are too dangerous for humans.

Since May 2014, this team has made amazing progress with their work. In December of that year, they performed the first ever robotic experiment with force-feedback in space (details), and since then they’ve shown no signs of slowing down.

2) GE Healthcare

Connected medical devices save lives, and GE Healthcare is taking this to the next level by using Connext DDS to standardize communications for new generations of many products. A connected patient care ecosystem can not only allow for more efficient machine operation, it can also decrease the configuration costs. What do these things mean and how do patients benefit from such a system? Here are some examples:

  1. By networking the many types of devices in a hospital room, alarms can become smart, only sounding when multiple devices indicate errant physiological parameters.
  2. By connecting measurements to treatment, smart drug delivery systems can react to patient conditions quickly and reliably.
  3. By tracking patients around the hospital and connecting them to cloud resources, efficiency of care can be dramatically improved.

“GE Healthcare chose the DDS standard because it can handle many classes of intelligent machines,” said J Gustavo Perez, General Manager for MI&CT Engineering at GE. “RTI Connext DDS satisfies the demanding requirements of our devices and supports standardization on a single communications platform across product lines.”

To learn more about RTI, GE Healthcare, and how they’re enabling smarter systems of connected medical devices in hospitals as well as fast integration and connectivity of large medical instruments, be sure to watch this free webinar: The Inside Story: GE Healthcare’s Industrial Internet of Things (IoT) Architecture

3) Institute of Robotics and Mechatronics, DLR 

At last year’s London Connext Conference 2015, one of our keynote presentations was delivered by Sergey Tarassenko, a research assistant at the Institute of Robotics and Mechatronics, DLR. His presentation, DLR MiroSurge ‐ Telemanipulation in Minimally Invasive Surgery, combines the best of robotics and healthcare.

Minimally Invasive Surgery (MIS) challenges the surgeon’s skills due to their separation from the operation area, which can only be reached by long laparoscopic instruments. To overcome the drawbacks of conventional MIS, Sergey and his team are working on a research system for telerobotic endoscopic surgery: MiroSurge.

In the DLR telesurgery scenario, the MiroSurge system includes:

  1. A master console with a 3D-display and
  2. Two haptic devices to control
  3. Three MIRO robot arms

Connext DDS provides the communications infrastructure between robots, controllers and user interfaces, facilitating synchronization and coordination between them. To learn more about this, head on over to SlideShare and view the slides from the event (below).

Automatic QoS Enforcement with DDS & Software Defined Networking Reply

Andrew King

Author: Andrew L. King Ph.D. Candidate, Department of Computer and Information Science, University of Pennsylvania

Good abstractions drive progress in computing. The first turing-complete computers such as the ENIAC exposed a register-level programming abstraction enabling programmers to reconfigure the machines for different tasks. In the 1950s – 1970s the maturation of compiled languages enabled programmers to more easily port software from one machine architecture to another. From 1980 to the late 1990s saw the development of modularity abstractions (e.g., object oriented programming) making it easier to distribute the development of large software across large teams.  Throughout the 2000s to the present we’ve seen the development of programming abstractions designed to make it easier to build distributed and concurrent software systems.  DDS is a perfect example and its success proves how useful and necessary good abstractions are.


I’d argue that good abstractions for programming the IIoT must capture timing behavior. For example, DDS lets the programmer specify the maximum interval between updates to a topic data-instance via the DEADLINE parameter. Unfortunately, so far, holistic abstractions for timing have been elusive. While DDS can automatically perform runtime checks to ensure that DataReaders and DataWriters have consistent  DEADLINE QoS settings,  it is still possible for the DEADLINE QoS to be violated if the underlying network fabric delays or drops an update. Indeed, Bringing timing fully into the programming abstraction is difficult because the timing behavior of a software system only emerges when you map the software onto a particular platform (i.e., processor, operating system, and networking fabric).

In the context of a critical distributed hard real-time system, the developer must devote significant effort provisioning and configuring the underlying network fabric to ensure the required timing behavior. The configuration process usually involves setting priorities or transmission schedules for each time critical flow. Sometimes, If the underlying network fabric will be shared by more than one logically independent application, traffic policers and/or special partitioning features are setup to keep the different applications isolated. These network configurations are usually static and setup offline: If you want to add a new node to the network (e.g., a sensor or actuator) you have to bring the system down, manually reconfigure the network, then bring the system back up. Wouldn’t it be much nicer if the programmer could simply specify the logical timing behavior for the system and then trust that the specification would always be satisfied?

DDS and recent advances in Software Defined Networking (SDN) now make it possible to fully lift timing properties for distributed systems into a programming abstraction. The MIDdleware Assurance Substrate (MIDAS) is a research prototype developed in the PRECISE Center at the University of Pennsylvania. MIDAS  uses the OpenFlow SDN protocol to capture the QoS specifications of DDS clients as they come online and then control  the packet switching behavior of the network fabric to ensure those specifications are always satisfied: Based on the captured QoS specifications, MIDAS will generate  new network configurations to support the QoS of the DDS dataflows.  MIDAS will then apply schedulability analysis to verify that the configurations will guarantee the specified QoS. Finally, If the requested QoS can be guaranteed MIDAS will push the new configuration onto the network transparently (The QoS of existing flows will not be disrupted by the reconfiguration process itself).

Technologies like DDS make the development and operation of distributed real-time systems easier, faster, and overall less costly. Adding technologies like MIDAS to the mix takes these benefits to the next level:

  • Reduce Development Time: Automation of network configuration removes a significant chunk of development effort allowing developers to focus more on creating functionality (and hence value for their customers).
  • Reduce Equipment Costs: Many common COTS ethernet switches now support OpenFlow and can be used with MIDAS to support hard real-time systems. Many deployed ethernet switches can be made OpenFlow capable with a simple firmware update.
  • Increased Flexibility and Adaptability: MIDAS lets you add and remove network nodes at runtime. All resource provisioning is dynamic and ensures that no QoS is disrupted during configuration.
  • Increased Reliability: MIDAS’ network configurations ensures traffic bursts won’t overload buffers in networking equipment which means packets will only be dropped if there is a hardware failure.

If you are interested in knowing more about MIDAS and how it works please read the associated technical paper* or contact me (Andrew King, kingand@cis.upenn.edu). I’d also like to invite you to watch the the following youtube video. It demonstrates a distributed hard real-time system built using RTI’s Connext DDS with real-time behavior enforced by MIDAS:

*The technical paper describes an earlier prototype which used a simple custom publish/subscribe middleware. The current prototype is designed to work with DDS but the fundamental technical details are unchanged.