Introduction to IoT Plug and Play

one of the common problems IOT developers are facing is when they have to deal with various IT devices that kamek was various data format for their telemetry settings and so forth the azure IT team came up with something called IOT plug and play more than name you'll see was Chris today on the IRT show that it's an actual solution to plug and play IOT devices hi everyone you're watching the internet-of-things show I'm Olivia your host today we're talking about IOT plug and play and we have Chris green from the IOT hub team here Chris thanks for coming to the show again thanks for having me again again so we're we're talking about something today which is very interesting we're announcing that a build and this is something which is about sorting out some tough problems that IOT developers have today absolutely let's set the stage and jump into it definitely so you know we have been working with a lot of you as customers and partners but quite often we see as a situation where the devices that are coming into these solutions are typically having to be written in a way that are very customer proprietary for that solution so it's very difficult and takes a lot of time to integrate with those devices because it's it's really a lot of custom work every time yeah and and I actually faced a problem writing like something like 15 years ago trying to create a home automation solution and using two dimmers from two different companies and the two Demers were actually sending different sets of data for the same thing which is light dimmer you would think is on off and then the level right exactly it's not yeah actually it's it's different types of data different formats for the data as well right you can express it in a number of different ways and everyone ends up having to design their own their own so we're trying to tackle that problem okay well I need to know more yeah so you know we've seen a similar situation to this many years ago this date some of us a little bit but if you if you remember something where you know we have this problem of well how do I even connect a mouse to my Windows laptop or what happens when I plug in a printer usually like in the old days you'd have to go and find the right driver download it install it took a lot of time it was a real pain and so we solve that challenge at you know in Windows and at Microsoft with with plug-and-play right so the you know maker of a mouse could actually go and write the drivers to support plug-and-play and then when you plug that mouse in it just starts working okay and so at the center of that we have this notion of a device model or keep which is like a declaration of how that device works so we're taking that concept and now introducing that to IOT we're at the center of IOT you now have this device capability model so developers can express how these devices work with agile developers from the world of device making can can actually publish that and then I suppose that the developer is building the IOT applications will be able to actually use the same that's kind of an interface in between the two worlds exactly that's the concept and so now device makers can make their IOT device is compatible with any solution that's built on Azure okay so I actually have a demo to kind of show how all this works so first of all let's frame the scenario a little bit I want to build an application using IOT central I'm a cloud developer I want to track some assets in my business yeah and so first I need to find a suitable device and so what I'm gonna do is turn to the certified for a sure device catalog yeah we've actually been working with a number of device partners to support plug-and-play so we already have a bunch available there now for people to go and look at so that means that when I go to the catalog I see that plug-and-play mark down there that means that I can trust that this device will be compatible with IOT absolutely they support the modeling they are able to integrate really easily with Azure so I can go through I can see that there's a number of different types of devices available and I'm actually looking for a tracker device and this one looks pretty interesting so this one is available from a company called compound they have added plug-and-play support for this tracker so I can go through I can look at all the specs see if it's suitable and one other thing I can do is go and see their plug-and-play model so I can even inspect it it's based on json-ld I can review the different capabilities that are supported in this model to see if it's suitable for my application so assuming this is something I'm interested in I can right away switch over to IOT central and start building my application so the first thing I want to check in the catalog is that boom it appears on the table that's right yeah so you know obviously you're gonna have to go and purchase one of these but even before you do that even before it's available to you you can write in work yeah definitely so so in IOT central we've added the notion of this device capability model which is a declaration of how this device will work in my app so I'm gonna bring in this new model for the compiled tracker so I can just simply upload the the JSON that I got from the catalogue and I can publish it that right away so that as new devices come in they can be assigned to that model so I assume that the process for getting the models actually will be more integrating to IT central you know no we're in preview plug-and-play so you have to manually upload that JSON file but in the future something where you have an integration with a catalog and things like that absolutely we'll have many ways for the model to provision into central ok and so certainly it will be automatically loaded when we ship it so at this point I can even go through in central again look at all the the properties telemetry that this device is capable of supporting and start building my out so for those with tried actually central before basically they had to do all of that manually like define everything about the telemetry the properties the settings that devices support right exactly you'd have to start from scratch and model every single data point that this device is going to send you and understand how that data is going to be structured well the risk of errors exactly no it's it's a lot of time and effort yeah but now since I have this model already populated I can even start simulating it ok so I start simulating the device and I can even start building out my dashboard so I'm gonna build out my dashboard starting with a location map so I want to be able to see where my asset is located so I'll just go in add a map control I'll call it asset location and I'm it's based on the device location property from this plug-and-play model and then I can also add other things like I want them on you know motion I can just add a line chart for that as well and based that on the accelerometer so I can go from here certainly build out a much more sophisticated – but I can see that there's already being data being populated based on a simulated model in it yeah so the next thing we'll want to do of course is connect a real device so I've got this compel asset tracker it's you know I purchased it it shipped to my doorstep I need to be able to power it on it's battery-operated so let me just pop in a couple of batteries so this asset tracker can connect to nbnb IOT LTE Bluetooth it's very versatile okay so with the batteries in it'll just start powering on and so now all that needs to happen is it will provision into central and be assigned to the same model so this one actually has a notion of central food a scope ID that's right so I've set up a scope ID central knows about the device ID okay but the device ID the model ID for it is sent to central as part of the provisioning process got it okay so once I do that then I can go back view my list of devices will see hey now this device has shown up so now the real device has shown up it's assigned to the model yeah it's now sending data central can parse that data we can start seeing data as it comes in and we can go from there so life easier faster than the old days and and with plug-and-play you know where we're making this available to everybody so we've just seen the view of the cloud developer 90 central can you tell us a little bit about the device maker experience what what is the process for getting a device on that catalog yeah great question so you know compiler partners or anyone else who's building a plug-and-play device they can follow this process so first of all model the device itself this is based on a json-ld based language it now called the digital twin definition language so this is an open modeling language that we've published in fact that build you'll be able to go and view it yourself you can use tooling in vs code off a model we have some autocomplete we also have some basic cogeneration to help actually build out the device agent for a tracker or whatever the class that you're building they'll actually work through the SDKs for connecting to us right yes it integrates with our SDKs and it seamlessly with Central and other really any other solution built on our platform so once all that's done then compile or any device partner can go through a certification process to have that device listed in the device catalog that I just showed yeah so that's an automated process we'll look at you know what model you've you've developed we'll actually go and connect to the device and exercise all the capabilities that you just described to just make sure it's working as expected but once all that's done then any asher developer who wants to use central or a platform can go pick up one of those devices and start building their solution right away nice so I can actually show you some of this in action starting with vs code so the vs code device workbench extension will have plug-and-play support I can go think and do things like author my model and it'll give me intellisense so if I want to you know add in a new property I can do that and it'll just start Auto populating based on what I type so that's really cool I can also do things as I said like code Jen's so if I bring up the command palette I have all the options available to me I can build out some code stubs and get started really quickly so that's vs code and that's going to help with the model authoring and I also mentioned the certification program as well so we'll have more to show there as we get closer to our release looking forward to that yeah so you guys now that we've announced that you have some more information can find in the blog post yeah and we also have some documentation and so on that you guys can can use absolutely people can go see the device catalog look for plug and play devices go look at the digital twins definition language go check out our blog for more info nice and you guys should stay on the lookout because Chris will be back on the AIT show was pamela for a deep dive on IOT plug and play yeah I can't wait so will will tell exactly when soon thanks for watching the IOT show and don't forget to subscribe

One Comment

  1. Gaurav Tempe said:

    Thank you.

    June 26, 2019

Leave a Reply

Your email address will not be published. Required fields are marked *