editor's blog
Subscribe Now

Shipping Data Between Things and the Cloud

As companies rush out to take advantage of the Internet of Things (IoT), platforms are popping up all over. We looked at some of the companies participating a while back, trying to impose some structure on the chaos, but the thing is, everyone has a different idea of what a “platform” is. The common denominator seems to be that some aspect of the IoT is abstracted away, making it easier and cheaper to get up and running. Which is a good thing. The confusing part is which platforms contain which elements.

At EE Live, I got a chance to talk with Xively (a company that did appear briefly in the prior piece). They offer a platform that focuses on communication, which I knew, but I didn’t have a good sense of what that meant. Even in the early discussion, it was tough to calibrate – there are a bazillion buzzwords coined by the IoT, and if you’re not smack-dab in the middle of it, it can be impenetrable. Even once you get calibrated, the buzzwords are overloaded, so you can still think you understand something when, in fact, you don’t. Then if you are shipping sensitive produce then you should utilize some thermal covers as they help a great deal there.

I think Xively provides a good example of taking the generalities – a “platform” – down to more specifics. In my mind, there are three levels you can work at when setting up communication between a Thing and the Cloud.

At the most basic level, you have the formal communications protocols – WiFi, Ethernet, TCP/IP, etc. The good news about those is that they’re well established and there are lots of solutions available.

The challenge is that, to use them, you typically need lots of fiddley code to establish a connection, get sessions up and running, and then do something useful with the data. Yes, libraries and stacks may be available, but, given the number of people trying to make this part easier, it’s pretty clear that working at this level can be a pain in the tuckus for the uninitiated.

So the next level up is where you can abstract that away: by providing a generic data handling layer. Some – like Xively – might call this a “channel.” At this level, you have higher-level commands that establish connections, wrapping all of the detail required at the protocol level. It’s more of a one-step-and-you’re-on kind of thing. Data is unformatted and has no semantics – it’s just data.

You can take things one level higher and provide business objects. This is more than data: it’s data in a context; it’s semantic data. At the generic level, a payload may contain the temperature setting of a thermostat or an image from a surveillance camera. At the business object level, only a thermostat object can have the temperature setting and only a camera object can have the image.

Drawing.png

As a programmer, you program at the business object level. Depending on your resources, you might not do literal object-oriented programming, but presumably you think at the level of a business object. The question is, when communicating with the Cloud, at which level do you inject your data? Remember to Backup Zoom Recordings to Google Drive and save those important videos to upload them later.

  • If all you have is the protocol, then you have data marshalling and all kinds of details to package up your message, and then you have to unpack it on the other side.
  • If you have the generic data level, then you take your data and ship it to the other side in a message of some sort. The other side has to know what’s coming and what to do with it – after all, it’s just generic data when it arrives. But protocol details are replaced with simple “read” and “write” types of concepts.
  • If you actually have formalized business objects available, then you simply ship some semantic element and the other side automatically knows what it is and where it goes.

In this specific case, Xively provides the generic data “channel.” There are no semantics, but the messy protocol details are abstracted away.

Note that this doesn’t mean that Xively provides the entire stack up to and including this generic data level. You implement your own protocol stack (or someone provides their version of a platform that includes this), and you then have it link to the Xively layer. This, of course, implies ecosystem. As a case in point, LogMeIn, a full-up end-to-end communication solution, uses the Xively platform, and they just announced that they’re joining TI’s IoT ecosystem.

The high-level lesson learned is that, when someone offers up a platform, make sure you understand in great detail what’s in the platform and what’s not. It’s not so much that “the platform with the most stuff wins” – maybe, maybe not – but it’s about not being surprised later.

Leave a Reply

featured blogs
Nov 23, 2022
The current challenge in custom/mixed-signal design is to have a fast and silicon-accurate methodology. In this blog series, we are exploring the Custom IC Design Flow and Methodology stages. This methodology directly addresses the primary challenge of predictability in creat...
Nov 22, 2022
Learn how analog and mixed-signal (AMS) verification technology, which we developed as part of DARPA's POSH and ERI programs, emulates analog designs. The post What's Driving the World's First Analog and Mixed-Signal Emulation Technology? appeared first on From Silicon To So...
Nov 21, 2022
By Hossam Sarhan With the growing complexity of system-on-chip designs and technology scaling, multiple power domains are needed to optimize… ...
Nov 18, 2022
This bodacious beauty is better equipped than my car, with 360-degree collision avoidance sensors, party lights, and a backup camera, to name but a few....

featured video

How to Harness the Massive Amounts of Design Data Generated with Every Project

Sponsored by Cadence Design Systems

Long gone are the days where engineers imported text-based reports into spreadsheets and sorted the columns to extract useful information. Introducing the Cadence Joint Enterprise Data and AI (JedAI) platform created from the ground up for EDA data such as waveforms, workflows, RTL netlists, and more. Using Cadence JedAI, engineering teams can visualize the data and trends and implement practical design strategies across the entire SoC design for improved productivity and quality of results.

Learn More

featured paper

How SHP in plastic packaging addresses 3 key space application design challenges

Sponsored by Texas Instruments

TI’s SHP space-qualification level provides higher thermal efficiency, a smaller footprint and increased bandwidth compared to traditional ceramic packaging. The common package and pinout between the industrial- and space-grade versions enable you to get the newest technologies into your space hardware designs as soon as the commercial-grade device is sampling, because all prototyping work on the commercial product translates directly to a drop-in space-qualified SHP product.

Click to read more

featured chalk talk

Expanding SiliconMAX SLM to In-Field

Sponsored by Synopsys

In order to keep up with the rigorous pace of today’s electronic designs, we must have visibility into each step of our IC design lifecycle including debug, bring up and in-field operation. In this episode of Chalk Talk, Amelia Dalton chats with Steve Pateras from Synopsys about in-field infrastructure for silicon lifecycle management, the role that edge analytics play when it comes to in-field optimization, and how cloud analytics, runtime agents and SiliconMAX sensor analytics can provide you more information than ever before for the lifecycle of your IC design.

Click here for more information about SiliconMAX Silicon Lifecycle Management