Deep Dive: Build Solutions and Certify Devices with IoT Plug and Play


>>HI EVERYONE. WELCOME TO THE IoT SHOW DEEP DIVE. THANK YOU FOR WAITING ON THE LIVE CHAT RIGHT NOW. I AM HERE WITH CHRIS GREEN WHO IS ALSO ON THE AZURE IoT TEAM. WE ARE GOING TO BE TALKING ABOUT BUILDING WITH PLUG AND PLAY WITH THE SOLUTIONS, AND ALSO HOW TO CERTIFY YOUR DEVICES. THIS IS PERFECT FOR YOUR DEVICE MAKERS OUT THERE. IT IS PERFECT FOR YOUR SOLUTION DEVELOPERS OUT THERE. WE ARE REALLY EXCITED FOR YOU TO JOIN. CHRIS, DID YOU WANT TO GIVE A LITTLE BACKGROUND ON WHAT YOU ARE WORKING ON?>>THANK YOU FOR HAVING ME ON THE SHOW. EXCITED TO BE HERE. I AM THE PM LEAD FOR THE IoT PLUG AND PLAY IN THE IoT AZURE GROUP. WE ARE THE PLATFORM TEAM WE OWN THINGS LIKE IoT HUB, THE SDK’S I IoT EDGE AND OTHER THINGS. BROUGHT A WHOLE TEAM WITH ME TODAY TO PRESENT THE VARIOUS ASPECTS OF PLUG AND PLAY SINCE IT IS A REALLY BIG TOPIC AND IT’S A LOT OF GREAT TECHNOLOGY WE WANT TO SHOW.>>WE HAVE A PARTY. WE HAVE ABOUT FOUR OTHER PEOPLE WHO WILL BE JOINING US GIVING LIVE TECHNICAL DEMOS. WE ARE ALSO GOING TO BE DOING WHITEBOARDING AS WELL. MAYBE WE WILL JUMP RIGHT INTO IT. THOSE WHO HAVE NEVER BEEN TO A DEEP DIVE, WE HAVE THESE MONTHLY. ALSO IT IS LIVE. IF YOU HAVE A QUESTION, I AM HERE AS YOUR HOST. SO I WILL BE ON CHAT LOOKING DOWN ON MY COMPUTER, AND IF YOU HAVE A QUESTION I WILL MAKE SURE IT GETS ANSWERED. MAYBE LET’S GO AHEAD AND GET STARTED. SO FOR THE AGENDA TODAY CHRIS IS GOING TO GIVE AN OVER VIEW OF WHAT IS PLUG AND PLAY? WE DID A HUGE ANNOUNCEMENT AT BUILD. WE ALSO DID A BIG ANNOUNCEMENT A COUPLE WEEKS AGO WE WENT PUBLIC PREVIEW WHICH IS AWESOME.>>YEAH, WE HAVE SHIPPED. PEOPLE HAVE BEEN WAITING PATIENTLY FOR THIS. WE ARE HEARING A LOT, A LOT OF FOLKS OUT THERE WHO ARE INTERESTED IN HOW DO WE SIMPLIFY THAT EXPERIENCE OF CONNECTING A DEVICE FROM A DEVICE MAKER TO A SOLUTION DEVELOPER WHEN BUILD AN IoT SOLUTION. I AM GOING TO GO AHEAD AND LET CHRIS RUN AND YOU CAN DO AN OVER VIEW.>>FOR THOSE OF YOU WHO MAY NOT BE AS FAMILIAR WITH PLUG AND PLAY, WE REALLY INTRODUCED THIS TO SOLVE A REAL CHALLENGE THAT WE ARE SEEING WITH MANY OF OUR CUSTOMERS AND PARTNERS IN THE MARKET WHERE, THEY WILL TAKE OUR STACK OF TECHNOLOGY TO GO AND IMPLEMENT AN IoT SOLUTION BUT KU — QUITE OFTEN WHAT WE HAVE COME TO REALIZE HOWEVER THEY DO THAT WHEN IT COMES TO INTEGRATING THE IoT PRODUCTS OR DEVICES WITH THAT CLOUD SOLUTION, THAT IT ENDS UP THAT THEY ARE VERY TIGHTLY COUPLED TO THAT SOLUTION. THERE IS THIS CUSTOM DATA CONTRACT BETWEEN THE DEVICE AND AT ALL. TION THAT ISN’T PORTABL- WHAT WE ARE TRYING TO DO IS DE COUPLE THOSE TWO ASPECTS IN ORDER TO PROVIDE SOLUTION BUILDERS WITH AN ECOSYSTEM OF PRODUCTS THAT THEY CAN CHOOSE FROM TO EASILY INTEGRATE THEIR SOLUTION. IT TURNS OUT WE HAVE SEEN A SIMILAR CHALLENE IN THE PAST WITH WINDOWS WHERE IN THE BEGINNING IN THE EARLY VERSIONS OF WINDOWS WHEN YOU WANTED TO CONNECT TO MAYBE A PERIPHERAL LIKE A PRINTER IT WAS REALLY COMPLICATED IN ORDER TO DO THAT. YOU WOULD HAVE TO GET A BUNCH OF DRIVERS, KNOW WHICH ONES TO USE, INSTALL THEM, HOPEFULLY SEE THEM WORK. HOW DID WE SOLVE THAT WITH MICROSOFT WHERE WE USED DWOINS PLUG AND PLAY WHERE WE INTRODUCED A PROTOCOL AND TECHNOLOGY TO ALLOW THE PER RIVER — PERIPHERALS TO UNLOCK THIS PERIPHERAL ECOSYSTEM AND MAKE IT EASIER FOR WINDOWS USERS. WE HAVE BORROWED THE NAME AND THE CONCEPT AND TAKEN THAT TO IoT WHERE WE ARE NOW INTRODUCING IoT PLUG AND PLAY TO ALLOW FOR SOLUTION BUILDERS TO VERY QUICKLY AND EASILY INTEGRATE IoT PLUG AND PLAY DEVICES AND START BUILDING OUT SOLUTIONS USING THOSE. WE ARE DEVELOPING AND FOSTERING AN ECOSYSTEM OF THESE HARDWARE PRODUCTS AND APPEALING TO OUR DEVICE PARTNERS AS WELL TO START BUILDING THEIR HARDWARE PRODUCTS TO SUPPORT IoT PLUG AND PLAY. PLUG AND PLAY IS CENTERED AROUND DEVICE MODELING. WE HAVE RELEASED AN OPEN DEFINITION LANGUAGE WE CALL THE DIGITAL TWIN DEFINITION LANGUAGE, WHICH INTRODUCES A FEW MODELING CONCEPTS THAT WE ARE GOING TO BE TALKING ABOUT TODAY AND SHOWING. SO THE FIRST BEING THE DEVICE CAPABILITY MODEL. WHICH IS REALLY A JSON DOCUMENT THAT DECLARES A SET OF CAPABILITIES FOR THAT IoT PRODUCT. THE CAPABILITY MODEL CAN THEN BE BROKEN DOWN INTO A SET OF REUSABLE INTERFACES EACH OF WHICH DECLARE TELEMETRY, COMMANDS, PROPERTIES. THESE ARE THINGS THAT A DEVICE SUPPORTS ON ITS FIRM WARE OR EMBEDDED CODE. WE WILL BE SHOWING DIFFERENT ASPECTS OF THAT THROUGHOUT THE HOUR TODAY.>>I AM EXCITED THIS IS AN OPEN STANDARD TOO. I KNOW THERE ARE A LOT OF STANDARDS ALREADY OUT THERE. I THINK IT IS GREAT WE HAVE THIS OPEN SOURCE AND WE ARE TRYING TO FIND A WAY TO MAKE IT EASIER FOR ANY OF THE DEVICE MAKERS A STARTING POINT.>>IoT PLUG AND PLAY IS COMPLETELY OPEN. THERE IS NO ADDITIONAL CHARGE TO USE IT ON AZURE. WE ARE TRYING TO MAKE IT AS OPEN AS POSSIBLE.>>PERFECT, YEAH.>>THAT KIND OF WRAPS UP THE INTRO. NOW WE HAVE SANDEEP.>>THANK YU SO MUCH, CHRIS. NOW WE ARE GOING TO GO IN TO FOR THE SOLUTION DEVELOPERS SANDEEP WILL BE JOINING US. HE WILL BE GIVING A DEMO INTO IoT CENTRAL AND HE WILL BE SHOWING US WHAT ARE SOME OF THE CAPABILITIES. FOR THOSE OF YOU WHO SAW THE VIDEO WE LAUNCHED THIS MONDAY ABOUT IoT CENTRAL, THIS IS EXTENSION. IF YOU SAW THE DEEP DIVE THIS IS NOT A REHASH OF THAT. WE ARE GOING TO DEEP DIVE IN THERE. HEY SANDEEP. WELCOME TO THE PLUG AND PLAY PARTY.>>I AM REAL LICK– REALLY EXCI TO BE HERE. I WILL GIVE A QUICK INTRO OF WHAT I WILL BE TALKING ABOUT. I AM SANDEEP A PROGRAM MANAGER ON THE IoT SOLUTIONS IoT CENTRAL SPACE FOCUSING ON DEVICE CONNECTIVITY, DEVICE MODELING AND PLUG AND PLAY RISK IS THE KEY PIECE THERE. EXCITED TO SHIP OUR PUBLIC PREVIEW AND WE CAN TALK A LITTLE MORE ABOUT THAT.>>PERFECT.>>I WILL GAVE GIST OF WHAT PLUG AND PLAY MEANS SO YOU CAN UNDERSTAND THE OVERALL KEY VALUES IT UNLOCKS. IT ESSENTIAL LYNN LOCKS TWO KEY MOTIONS THERE. ONE IS SIMPLIFYING IoT SOLUTION. WHEN YOU THINK OF IT THEY ARE ALREADY DOING A MEASURED PART OF IT BY SIMPLIFYING THE SOLUTIO DEVELOPMENT ASPECT FROM THE CLOUD SITE. SO YOU DIDN’T HAVE TO WRITE A THIN LINE OF CODE. YOU COULD BUILD END-TO-END SOLUTION PRETTY MUCH WITHIN A FEW HOURS LITERALLY. THAT WAS ALREADY THE PROMISE. WHAT PLUG AND PLAY DOES IT TAKES IT ONE — STEP FURTHER. THE DEVICE ASPECTS ARE SIMPLIFIED WITH PLUG AND PLAY. MEANING NOW YOU CAN DE COUPLE THE WHOLE PROCESS WHERE THE DEVICE DEVELOPER BUILDS THE DEVICE CODE AGAINST THE STANDARD CAPABILITY MODEL THAT CHRIS WAS CALLING OUT AND NOW YOU HAVE THE DEVICES THAT ARE READY TO GO AND CONNECTED TO A SOLUTION. THAT IS ONE ASPECT.>>ONE OF THE BIGGEST FEEDBACK WE WERE HEARING WITH IoT CENTRAL IS THESE EXAMPLES ARE GREAT ON THE MX CHIP OR THE OTHER DEVICES OR OTHER EXAMPLES. WHAT ABOUT MY DEVICE? IT IS GREAT WE HAVE PLUG AND PLAY TO CONTINUE THAT STORY.>>ABSOLUTELY. THE FIRST ASPECT. THE SECOND ASPECT YOU REALLY NICELY TEED UP. THE SECOND ASPECT WE WANTED TO HAVE A VERY HAVE A THRIVING ECOSYSTEM OF DEVICE DEVELOPERS AND SOLUTION DEVELOPERS COME ON TO THE SAME PLACE AND HAVE THE SYSTEM OPERATE. PLUG AND PLAY ENABLES THAT. YOU HAVE DEVICE DEVELOPERS WHO CAN BUILD AGAINST THE CAPABILITY MODELS CERTIFY THEIR DEVICES AND NOW THEY HAVE THIS PLATFORM ON CENTRAL WHERE THEY CAN PUBLISH THESE DEVICE CAPABILITY MODELS AND DEVICES AND FROM A SOLUTION BUILDER’S POINT OF VIEW. NOW WE HAVE A RANGE OF DEVICES THAT CAN PICK UP. SO IF YOU LOOK AT IT SFIRPS WAS SIMPLIFY SECOND STEP WAS BUILD THE BEAUTIFUL ECOSYSTEM SO IT CAN BUILD ON ITSELF. ALL OF THAT BASICALLY ENABLES AND QUICKENS THE IoT DEVELOPMENT OPTION. THAT’S THE STORY.>>THAT’S GREAT. I WILL DO A QUICK MENTION THAT WITH PLUG AND PLAY WE ARE SHOWCASING WITH IoT CENTRAL. YOU CAN ALSO USE IoT HUB AS WELL. PLUG AND PLAY HAS MANY DIFFERENT WAYS THAT YOU CAN USE IT.>>ABSOLUTELY. TO ADD ON TO IT ANY CERTIFIED DEVICE, P AND P CERTIFIED DEVICE WILL WORK WITH CENTRAL.>>THAT’S A QUESTION I HAVE BEEN GETTING A LOT.>>WHAT WE WILL DO TODAY IS I WILL QUICKLY WALK OVER A LITTLE MORE FOCUSED AROUND THE SOLUTION BUILDER’S ASPECT. THE PREVIOUS VIDEO WE HAD FOCUSED ON HOW TO CONNECT THE DEVICE. WE HAVE A MAKESHIFT DEVICE AND WE HAVE TUTORIALS WE CAN USE AND GET THE DEVICE CONNECTED. WHAT WE WILL FOCUS TODAY IS ON THE SOLUTION BUILDER’S ASPECT OF IT. A SOLUTION BUILDER CAN JUST COME IN AND PICK A DEVICE AND THEN GET GOING WITH IT. WE WILL LOOK AT THAT. WHAT YOU SEE ON MY SCREEN IS ESSENTIALLY THE DASHBOARD OF THE PREVIEW APPLICATION. IT LOOKS FAIRLY SIMILAR TO WHAT CENTRAL WAS. IT HAS A LOT OF NEW FEATURES ADDED. I AM GOING TO GO TO DEVICE TEMPLATES. THE MOMENT I — LET’S SAY WE WANT TO ADD A NEW DEVICE TEMPLATE FOR THE SOLUTION. SO YOU WILL SEE THAT THE DEVICE CATALOG IS INTEGRATED ALREADY IN CENTRAL. TESE ARE CERTIFIED P AND P DEVICES THAT ARE AVAILABLE. THE SOLUTION DEVELOPER CAN PICK ONE OF THESE DEVICES AND GET GOING. FOR OUR PURPOSES TODAY LET’S PICK A CAMERA AND SEE HOW WE CAN QUICKLY BUILD A SOLUTION ON TOP.>>PERFECT.>>SO I ALREADY HAVE — THE MOMENT I SELECTED THAT DEVICE, THE DEVICE CAPABILITY MODEL WHICH CHRIS IS CALLING OUT GOT IMPORTED INTO CENTRAL AND YOU HAVE A DEVICE TEMPLATE. ALONG WITH THAT WE CREATED A BUMP OF DEFAULT VIEWS SO THAT YOU ALREADY HAVE A JUMP START OF BUILDING THE SOLUTION. YOU LOOK AT THE — THESE ARE THE VIEWS PART OF IT. THESE ARE THE PAGES WHERE YOU BUILD THE SOLUTION OF THE DASHBOARD. SO LET’S LOOK AT ONE THING AT A TIME. LET’S SAVE THIS FOR A MINUTE. IF YOU LOOK AT THE TOP SECTION HERE, THIS IS THE ENTIRE MODEL THAT WAS BUILT BY THE DEVICE DEVELOPER AND THAT WAS SORT OF CERTIFIED AS PART OF THE PROCESS AS NOW SORT OF IMPORTED AVAILABLE INSIDE OF CENTRAL. IF YOU LOOK AT IT THESE ARE ALL OF THE CAPABILITIES OF THE DEVICE. FOR EXAMPLE THERE ARE ELEMENTS OF CP USAGE. MEMORY AND A BUNCH OF ASPECTS OF THE DEVELOPERS THEMSELVES. THE BEAUTY OF CENTRAL IS, YOU GET SOME DEFAULT ASPECTS FROM THE DEVICE. BUT YOU WANT TO ADDITIONAL THINGS ON TOP FROM A CLOUD PERSPECTIVE. LET’S SAY YOU WANT TO ADD, I WANT TO HAVE THIS MOBILE CAMERA BUT I WANT TO SORT OF ADD, LET’S SAY I CAN ADD A CLOUD PROPERTY. IT IS NOT COMING FROM THE DEVICE. THIS IS ON THE SOLUTION SIDE ON THE CLOUD. LET’S SAY I WANT TO ADD LOCATION HERE. I JUST ADD THAT. P AND P PROVIDE A BUNCH OF SEMANTICS DEVICES ENRICHING WHAT THE DATA IS AND HAVING THIS INNATE MEANING. PICKED UP LOCATION. WHEN I SALOCATION IT PICKS UP THE SC– SO WHEN I SEE THE LOCATION IT PICKS UP THE DATA. YOU CAN ADD ADDITIONAL PROPERTIES TO THE DEVICE TO THE CLOUD AND MAKE YOUR SOLUTION MUCH MORE RICHER. THAT IS ONE ASPECT. THE OTHER ASPECT IS YOU GET STANDARD — THE CAPABILITY MODEL COMES IN. AS A SOLUTION DEVELOPER YOU WANT TO CUSTOMIZE IT. SAY YOU GOT SOME NAMES THAT YOU WANT TO SORT OF UPDATE HERE FOR EXAMPLE LET’S SAY YOU HAVE MEMORY REMAINING HERE. YOU WANT TO CHANGE THAT TO SOMETHING ELSE. YOU CAN QUICKLY CHANGE THAT TO SOMETHING ELSE RIGHT HERE. WE ARE GOING TO CHANGE THAT TO REMOVE THE REMAINING PART AND LET’S SAY SAVE AS AN EXAMPLE.>>THIS WILL SAVE ON IoT CENTRAL SIDE? WHAT ABOUT ON THE DEVICE IF YOU WANTED TO DO ANY CHANGES ON THE DEVICE SIDE?>>THIS IS ON THE SOLUTION SIDE. ALL OF THIS CUSTOMIZATION IS FOR THE SOLUTION DEVELOPER SO HE DOESN’T GET STUCK WITH WHATEVER DEVICE CAPABILITY MODEL COMES THROUGH. HE CAN GO CHANGE SOME OF THAT. THAT IS THE CUSTOMIZATION WE ARE TALKING ABOUT. WHEN YOU SEE THAT YOU ACTUALLY SEE THAT AS BEING CUSTOMIZED AS AN ELEMENT. THAT IS ANOTHER ADDITIONAL ASPECT OF THE SOLUTION SO YOU CAN GO CUSTOMIZE SOME OF THIS. THEN YOU CAN, AS WE TALKED ABOUT THERE ARE DEFAULT DASHBOARDS THAT SHOW UP. BUT YOU CAN GO AND CUSTOMIZE THEM THE WAY WANT OR ADD NEW PAGES. ONE OF THE KEY THINGS WE HAVE DONE IN THIS VERSION OF CENTRAL, IF YOU SAW OUR CURRENT VERSION WHEN YOU CREATE A DEVICE OR DEVICE TEMPLATE YOU GET STANDARD PAGES LIKE SETTLE AM AND PROPERTIES. HERE IT WILL HELP FREE-FORM. YOU GO ADD VIEWS FOR YOUR DEVICE. THE IDEA IS, DEVICES ARE DIFFERENT. THE EXPERIENCES WOULD BE PROBABLY DIFFERENT. NOT EVERY DEVICE WILL LOOK THE SAME SO YOU CAN OPTIMIZE THE EX OBEDIENCE BASED ON THAT. YOU CAN ADD AS MANY VIEWS AS YOU WANT. SO WHAT I AM TRYING TO DO RIGHT NOW IS I AM ESSENTIALLY ADDING OR MODIFYING THE VIEW OR THE DASHBOARD PAGE FOR THIS DEVICE. WANT TO SAVE IT HERE. WE WILL SAVE THIS DEVICE.>>WITH SIMULATED DEVICES ONCE YOU HAVE PLUG AND PLAY YOU CAN EASILY CREATE THE SIMULATED DEVICES.>>THIS IS NO DIFFERENT THAN WHAT YOU HAVE IN CENTRAL YOU CAN CREATE A VICE TEMPLATE AND SIMULATE THE DEVICE. YOU CAN QUICKLY VISUALIZE HOW IT WILL LOOK LIKE. GO AHEAD AND ADD A DEVICE HERE AND THEN WE WILL START QUICKLY SEEING THE DATA THERE. SO THAT IS THE KEY ASPECT WHERE YOU ARE ABLE TO QUICKLY PICK UP A DEVICE CAPABILITY MODEL FROM THE CATALOG AND BUILD AN EXPERIENCE END-TO-END WITHIN MINUTES. WE HAVEN’T CONNECTED A SINGLE DEVICE. ONCE YOU HAVE DONE THAT YOU ARE HAPPY WITH THAT YOU CAN BRING A DEVICE THAT IS CONNECTED TO JUST WORK. THE PROMISE OF CERTIFIED DEVICES IS THOSE DEVICES ARE ALREADY BEING TESTED AND TRIED WITH PLUG AND PLAY DEVICES. THAT’S THE IDEA.>>ONE QUESTION WE ARE GETTING IS WHAT HAPPENS IF YOU HAVE A DEVELOPMENT BOARD AND YOU GIVE IT TO A BUNCH OF DIFFERENT CUSTOMERS, BUT IT IS — YOU DON’T KNOW WHAT TYPE OF CENSOR THEY ARE GOING TO CONNECT TO IT. WHAT WOULD YOU GIVE AS A RECOMMENDATION FOR THOSE FOLKS?>>SO WE GET THAT QUESTION PRETTY OFTEN. SO AGAIN THAT ASPECT WOULD BE WHEN YOU ARE ACTUALLY BUILDING A SOLUTION. THAT IS WHEN YOU BASICALLY AUTHOR THE MODELS. CENTRAL HAS A FIRST CLASS SORT OF SUPPORT TO ACTUALLY BUILD A CAPABILITY MODEL. SO IF YOU GO TO DEVICE TEMPLATES HERE AND HIT NEW AND SAY START CUSTOM I CAN SAY — JUST GOING TO GIVE YOU A CUSTOM TEMPLATE FOR OUR DEVELOPER PURPOSES. YOU CAN CREATE AN INTERFACE AS WELL. AND THEN YOU CAN START ADDING THE CAPABILITIES BASED ON THE POINT WHEN YOU ARE ADDING THE SENSORS AND WHAT OTHER CAPABILITIES LOOK LIKE AT THAT POINT. CERTIFIED DEVICES ARE NOT THE ONLY WAY TO GO. YOU ALSO HAVE THE DEVICES THAT THEY GET ADDED LATER AND YOU CAN ALD THE CAPABILITY MODELS AT THAT POINT.>>GREAT. THANK YOU SO MUCH FOR SHOWING THIS DEMO.>>PERFECT.>>IT LOOKS LIKE WE HAVE MIGUEL WHO IS GOING TO BE NEXT. THIS WAS A GREAT VIEW OF FOR THE SOLUTION DEVELOPERS WHAT ARE SOME WAYS THEY CAN CUSTOMIZE IT? FOR THE SOLUTION DEVELOPERS WHERE IS THE BEST PLACE TO GO? THE IoT CENTRAL DOTS.>>IoT CENTRAL DOCKS WOULD BE THE RIGHT PLACE TO GO. WE HAVE SPECIAL DOCUMENTATION FOR PLUG AND PLAY AS WELL. IF YOU ALREADY HAVE THE APPLICATION, JUST GOT TO GIVE ME ONE SECOND. THERE ARE LINKS OFF OF THE DASHBOARD SO YOU CAN CLICK ON THEM AND GO DIRECTLY TO THE DOCUMENTATION.>>THE LINKS ARE ALREADY THERE FOR YOU.>>THANK YOU SO MUCH SANDEEP. THANK YOU FOR JOINING THE PARTY. WE WILL SEE YOU SOON. THANK YOU.>>THANKS AGAIN.>>ALL RIGHT. BY POPULAR DEMAND OR POPULAR REQUEST, BRING BACK THE WHITEBOARD. HE IS GOING TO BE GOING OVER TH I AM GOING TO GET OUT OF YOUR WAY. BEFORE I DO THAT YOU WANT TO GIVE A LITTLE BIT ABOUT WHAT YOU ARE WORKING ON.>>I AM WORKING ON THE PLUG AND PLAY TEAM. WE ARE DEVELOPING THE SERVICES THAT ARE NEEDED TO SUPPORT P AND P.>>ALL RIGHT. I WILL LET YOU WORK YOUR MAGIC.>>WE ARE GOING TO DO HIGH LEVEL ARCHITECTURE OF WHAT P AND P IS BEHIND THE SCENES. LET ME MOVE TO THE WHITEBOARD. LET ME SCROLL DOWN HERE A LITTLE BIT. LET’S FIRST GO WITH SOME OF THE CONCEPTS ON P AND P. I THINK WE — ABOUT THIS BEFORE WE HAD AN INTERFACE. AN INTERFACE DEFINES WHAT ARE THE CAPABILITIES OF THE COMPONENT WITHIN THE DEVICE. ESSENTIALLY WE — WE DEFINED WHAT ARE THE PROPERTIES, WHAT ARE THE COMMANDS, WHAT IS THE TELEMETRY OF A PARTICULAR PART OF THE DEVICE IS CAPABLE OF? A DEVICE IS BASED ON MULTIPLE OF THIS INTERFACES. THEY ARE ALL GROUPED IN WHAT WE CALL A DZM, DEVICE CAPABILITY MODEL. LET’S GIVE A SAMPLE OF WHAT THIS WILL BE IN THE REAL WORLD. THIS WE ARE DESCRIBE SOMETHING MARKED THERMOSTAT. THIS INTERFACES WOULD DEFINE THE TEMPERATURE CENSOR OR HUMIDITY SORENS, PRESSURE. IT HAS SOMETIMES HUMIDITY CENSOR, PRESSURE. NOW THAT WE HAVE ESTABLISHED WHAT DZM WHAT AN INTERFACE IS AND HOW THEY ARE GROUPED TOGETHER LET’S GO ON THE STARTING POINT WHICH IS A DEVICE. THIS IS P AND P ENABLE DEVICE ONE. IT ALL STARTS WITH THIS DEVICE TO REGISTER WHAT ARE THE INTERFACE, THE DZM AND INTERFACES THAT ARE REGISTERED FOR THIS SMART THERMOSTAT. IT WILL SEND THE DZM, IED AND INTERFACE ID’S FOR THIS DEVICE. THIS WILL BE SENT TO IoT HUB. IoT HUB WILL ACKNOWLEDGE THE DEVICE, WILL REGISTRATION AND GENERALLY BE AWARE OF THIS IS MORE THERMOSTAT AND THESE ARE ARE SUPPORTED. NTERFACES THAT – SO AT THIS POINT IoT IS AWARE OF THE DEVICE. ON THE OTHER END WE HAVE WHAT ARE THE SOLUTION BUILDERS. ON THIS END WE HAVE IN HOUSE APPLICATION THAT IS USED TO CONTROL IS MARKED THERMOSTAT. THIS IS CLOUD SOLUTION. AND THIS NOW WANTS TO GET INFORMATION FROM THIS DEVICE AND POSSIBLY DO OPERATIONS AND FETCH SOME INFORMATION. IT STARTS INTERACTING THROUGH THE END POINT MADE AVAILABLE THROUGH THE IoT HUB. IT IS EXPOSED THROUGH THE DIGITAL TWIN P AND P END POINT. AND THIS END POINT LIE L– ALLOS THEM TO DO DIFFERENT THINGS. WE ARE GOING TO DISCUSS THIS A LITTLE MORE LATER. ALLOWS TO SEND COMMANDS INTO THE DEVICE FOR EXECUTION, AND IT ALSO ALLOWS TO GET THE DEFINITION OF THE INTERFACES. AT THIS POINT WE HAVE BEEN TALKING IN THE CONTEXT OF ID’S. SO THIS IS A DZM ID AND INTERFACE ID. THESE ARE DEFINED IN URN FORMAT, UNIQUE RESOURCE NAME. WE MAY WANT TO GET THE ACTUAL CONTENTS OF THAT INTERFACE. RIGHT? AS PART OF THIS END POINT WE ARE ALSO EXPOSING FUNCTIONALITY TO GO THROUGH THE P AND P REPOSITORY, WHICH IS A LOCATION WE HAVE MADE AVAILABLE FOR PUBLIC PREVIEW SUCH THAT CUSTOMERS CAN START UP LOADING THEIR DEFINITION CENTER. WE HAVE THE P AND P REPOSITORY. THIS REPOSITORY HAS TWO MAIN DATA STORES. A PRIVATE AND A PUBLIC. PRIVATE IS MEANT FOR INTERNAL DEVELOPMENT. YOU HAVE A USER GOING IN AND ITERATING AS THEY ARE TRYING TO DEFINE WHAT WILL BE THE INTERFACE AND DZM’S. THEY MAY MAKE CHANGES INITIALLY IN THE PRIVATE REPOSITORY. ONCE THEY ARE READY THEY MOVE THEIR INTERFACES INTO WHAT IS THE PUBLIC REPOSITORY. IF THE CLOUD SOLUTION WANTS TO GET THAT INFORMATION OFF AN INTERFACE THEY CAN CALL AND WE WILL GO FETCH IT FROM THE PUBLIC REPOSITORY. PUBLIC P AND P REPOSITORY. WE DISCUSSED A LITTLE BIT ABOUT WHAT IS EXPOSED ON THIS END POINT WHICH IS CLOUD PROPERTIES. WE ALSO TALKED ABOUT COMMANDS, AND THE OTHER ONE WAS RESOLVING INTERFACE IN THIS END. FROM THE PERSPECTIVE OF THE DEVICE, THE DEVICE TYPICALLY INTERACTS WHAT WE CALL THE DEVICE PROPERTIES. AND IT CAN ALSO SEND TELEMETRY. SO NOW WHAT’S THE DIFFERENCE BETWEEN DEVICE PROPERTY AND CLOUD PROPERTY. DEVICE PROPERTY, IT IS OWNED BY THE DEVICE. LET’S SAY THIS IS THE DEVICE PROPERTY THAT TELLS THE CLOUD WHAT IS THE TEMPERATURE ON THE DEVICE. THIS IS WHAT THE DEVICE PROPERTY IS MEANT FOR. A CLOUD PROPERTY IS SOMETHING THAT THE CLOUD OWNS. LET’S SAY IT WANTS TO SET SOMETHING INTO THE DEVICE. THIS DEVICE WAS MODELLED IN A WAY THAT YOU ARE — YOU WANT TO UPDATE THE SET TEMPERATURE ON THE DEVICE. SO YOU USE CLOUD PROPERTIES TO INSTRUCT THE DEVICE. I WANT YOU TO SET THE TEMPERATURE TO 70, 70 FAHRENHEIT. THIS CALL GOES INTO OUR END POINT. A MESSAGE GETS DELIVERED INTO THE DEVICE, AND THE DEVICE KNOWS THAT IT NEEDS TO INCREASE OR DECREASE THE TEMPERATURE IN THE ROOM, AND STARTS EMITTING DEVICE PROPERTY TEMPERATURES INTO THE CLOUD SO THE CLOUD CAN MONITOR WHAT WAS THE STATE BASED ON WHAT WAS INSTRUCTED. A COMMAND IS JUST MEANT TO EXECUTE SOMETHING, AN OPERATION INTO THE DEVICE. LET’S SAY THAT YOU WANT TO RESTART IT OR TURN ON OR OFF A PARTICULAR FEATURE. WE DISCUSSED ALREADY WHAT WAS THE RESOLUTION UPON THE INTERFACE. WE HAVE ANY QUESTIONS?>>YEAH, I THINK I HAVE A COUPLE OF QUESTIONS. ONE I KNOW THAT WE HAVE GATEWAY SUPPORT. AND I KNOW A LOT OF PEOPLE WORKING IN MANUFACTURING CARE ABOUT MOD BOSS AND OPCUA PROTOCOLS ON THE DEVICE SIDE. WE HAVE NATIVE MOD BOSS SUPPORT. WHAT ARE OTHER SUPPORTS WE HAVE WITH PUG AND — PLUG AND PLAY AD WHAT ARE WAYS THAT PEOPLE CAN CONTRIBUTE.>>IN THE P AND P REPOSITORY WE HAD — WE CREATED A LIBRARY TO VALIDATE AND MODEL WHAT THIS FILE SHOULD BE. THAT TOO IS THE ONE THAT IS MEANT TO VALIDATE AND IT IS MEANT TO VALIDATE AND UP LOAD THE INTERFACES INTO THEIR REPOSITORY. THAT IS SOMETHING THAT WILL BE IN PUBLIC PREVIEW. IN THE FUTURE WE WILL HAVE P AND P — THERE WILL BE PUBLIC REPOSITORY ASPECT OF THIS THAT WILL BE PUBLIC SO CUSTOMERS DO NOT HAVE TO RELY ON THE REPOSITORY. AND THEN CREATE THEIR OWN ESSENTIALLY.>>OKAY, PERFECT.>>AND SO FOR FOLKS WHO ARE INTERESTED IN I SQUARE C AND ALL OF THAT, WE DON’T HAVE SUPPORT RIGHT NOW, RIGHT?>>WE DON’T.>>IT IS SOMETHING THEY CAN ADD.>>EXACTLY. EXACTLY.>>PERFECT. I DON’T THINK WE HAVE ADDITIONAL QUESTIONS ON THE LIVE CHAT, BUT I THINK A LOT OF PEOPLE WERE INTERESTED IN WHAT PROTOCOLS WE SUPPORT NOW AND THEN ALSO SUPPORT FOR THE SDK’S FOR OUR SDK’S. I THINK WE HAVE NODE AND C. WILL WE GET SUPPORT FOR OTHER LANGUAGES?>>YEAH. SO RIGHT NOW THE COMMUNICATION BETWEEN THE DEVICE AND THE HUB IS THROUGH MQTT. FOR PUBLIC PREVIEW WE EXPOSE THE CSDK. FOR GA WASN’T TO ENABLE THIS FOR ALL OF THE LANGUAGES FOR WHICH WE ALREADY HAVE SUPPORT IN THE HUB. THE COMMUNICATION BETWEEN THE CLOUD SOLUTION AND THE P AND P END POINT IS THROUGH [INDISCERNIBLE].>>I KNOW DIGITAL TWINS IS A HOT, HOT TOPIC. YOU MENTIONED THE DIGITAL TWINS THERE WITH THE NAMING. DOES THAT HAVE ANYTHING TO DO WITH DIGITAL TWINS OR ANY FEEDBACK THERE?>>YEAH. SO DIGITAL TWINS IS THE WAY THAT WE ENVISION MODELING NOT ONLY DEVICES BUT PHYSICAL SPACES. AND DEVICES BEING ONE OF THOSE ASPECTS TO THE ECOSYSTEM. THAT’S WHY WE DECIDED TO MODEL OUR API’S IN A DIGITAL TWIN FORMAT. AND ALL OF THE DIGITAL TWIN ELEMENTS NOT ONLY DEVICES ARE GOING TO BE SPEAKING THE SAME P AND P LANGUAGE. THAT’S OUR VISION ON DIGITAL PRINTS.>>IF YOU SEE THAT DON’T GET CONFUSED. PERFECT. WELL THANK YOU SO MUCH MIGUEL. PEOPLE WANTED TO BRING BACK THE I LOVE THE WHITEBOARDING. THIS IS GREAT. EVEN YOUR PERSON WAS SPOT ON. THANK YOU SO MUCH MIGUEL. AND THEN IF PEOPLE HAVE QUESTIONS THEY CAN CONTINUE TO PUT THOSE INTO CHAT AND WE ALSO HAVE THE IoT TECH COMMUNITY AS WELL WHERE THEY CAN REACH OUT AND IF THEY HAVE MORE FEEDBACK OR QUESTIONS, WE CAN BRING THEM TO YOU.>>ABSOLUTELY. WE LOVE FEEDBACK.>>GOOD TO BE HERE.>>I LOVE THE HANDSHAKE. WE ARE GOING TO BRING BACK CHRIS.>>IT IS LIKE A TALK SHOW.>>IT IS LIKE WE NEVER SEE EACH OTHER. WE ARE ON THE SAME TEAM.>>WE ARE BRINGING BACK CHRIS. HE IS GOING TO BE GIVING THE OTHER DEMO ESPECIALLY FOR THESE DEVICE MAKERS.>>WE ARE GOING TO SWITCH GEARS A LITTLE BIT AND TALK ABOUT THE DEVICE BUILDING PROCESS AND CERTIFICATION PROCESS TO GIVE IT A BIT MORE INSIGHT. WE HAVE DONE A LOT OF INVESTMENT SEAMLESS AND SCALABLE FOR DEVICE PARTNERS. FIRST OFF, IF I CAN ADVANCE MY SLIDE HERE, I WILL GIVE AN OVER VIEW OF WHAT THE PROCESS WOULD LOOK LIKE FOR A DEVICE BUILDER. THEY CAN BUILD OUT PRODUCTS WITH IoT PLUG AND PLAY AND THIS THEM WORK SEAMLESSLY WITH AZURE. WE HAVE DEVICE MODELING. THAT’S A KEY SFIRPS. — FIRST STEP. WE WANT TO MODEL THE BEHAVIOR OF A DEVICE WITH THE CONTRACT WITH AZURE AND HOW IT CAN WORK WITH AZURE. IT’S A KEY SFIRPS. TO MAKE IT EASIER FOR CUSTOMERS AND PARTNERS, WE PARTNERED WITH OUR TEAM IN VS CODE TO ENABLE SOME TOOLING TO PROVIDE AN ABILITY TO DO SOME MODELING OF THAT CAPABILITY MODEL AND INTERFACES SO AUTHORING THE MODEL ITSELF. TO BUILD OUT SOME CODE THAT WILL IMPLEMENT THE MODEL. SOME CO GENERATION IS ALSO BUILT IN. I AM GOING TO SHOW A BIT OF THIS IN THE DEMO. SO ONCE THE MODEL IS ESTABLISHED AND DEFINED, THEN A BUILDER WOULD BUILD OUT THE APPLICATION OR FIRM WEAR THAT SUPPORTS THAT MODEL BEHAVIOR. THAT IS REASONABLY DONE WITH OUR SDK. YOU WERE TALKING WITH MIGUEL ABOUT THE SDK. WE HAVE OUR SERVICE SDK AND DEVICE SDK. WE HAVE BEEN ABLE TO SET API IN THE CS FM DK TO MORE EASILY BUILD OUT THE DEVICES. THAT’S A FIRST STEP TO BUILD OUT THE APPLICATION OR FIRM WEAR. ONCE THAT’S DONE A DEPARTMENT CAN GO CERTIFY WITH AZURE. WITH THIS PUBLIC PREVIEW WE HAVE INTRODUCED A NEW CATALOG PORTAL THAT ALLOWS BUILDERS TO LOG IN TO MANAGE THEIR PRODUCTS THEY WANT TO SUBMIT WITH CERTIFICATION AND GO THROUGH THE PORTAL. THIS IS A BIG STEP TOWARDS ALLOWING US TO SERVE OUR PARTNERS BETTER BY GIVING THEM A FASTER TURN AROUND TO CERTIFY AND SERVICE THESE DEVICES INTO THE DEVICE CATALOG. ONCE THEY CERTIFY AND THE PRODUCTS ARE SHOWCASED IN THE CATALOG WE HAVE A STAND ALONE CATALOG WEBSITE YOU CAN GO AS A SOLUTION BUILDER AND FIND SUITABLE DEVICES. AS SANDEEP SHOWED IN THE PREVIOUS DEMO THE DEVICES WILL SHOW UP IN CENTRAL ITSELF. I CLEARLY FORGOT TO DISABLE MY NOTIFICATIONS. MY BOSS IS CALLING ME.>>THE BIG GUY.>>WITH THAT DEVICE CATALOG LOTS OF TIMES WHEN I WAS WORKING WITH CUSTOMERS BUILDIG THESE SOLUTIONS, A LOT OF QUESTIONS WERE WHICH DEVICES HAVE SUPPORT FOR WHAT. I THINK THE DEVICE CATALOG ESPECIALLY INCERTAINLY WITH THE PARTNERS THEY HAVE BEEN DRIVING FOLKS THROUGH THE DEVICE CATALOG SO THEY CAN SEE WHAT HAS BEEN CERTIFIED ALREADY AND SO FAR WE HAVE QUITE A FEW PLUG AND PLAY DEVICES ALREADY CERTIFIED.>>THEY ARE PREFER SIDE. SINCE WE ARE IN A PREVIEW RIGHT NOW WE ARE CALLING THEM PRECERTIFIED. BETWEEN NOW AND GA WE WILL HAVE THE PARTNERS GO AND FORMALLY CERTIFY BASED ON OUR GA BIT. WE HAVE A NUMBER OF GREAT PARTNERS WHO HAVE GONE AND INVESTED IN PLUG AND PLAY ALREADY. THEY SEE STRONG POTENTIAL WITH IT.>>WHAT ABOUT AZURE SPHERE? DO WE HAVE A TEMPLATE FOR AZURE SPHERE FOR PLUG AND PLAY?>>SPHERE PROVIDE ITS OWN ESSENTIALLY DEVICE SDK THAT BUILDS ON TOP OF THE ONE WE PROVIDED IN AZURE IoT. THEY ARE WORKING ON EXPOSING THE SAME DIGITAL TWINS IN THAT SDK AS WELL.>>WE HAVE ONE MORE QUESTION. WHEN WE ARE TALKING ABOUT THE INTERFACES, THE UNIQUE ID, IS THAT GLOBALLY UNIQUE OR SOMETHING SET BY THE MANUFACTURER?>>SO IT IS SET BY THE MANUFACTURER BASED ON THEIR OWN NAME SPACE. SO THEY WILL CLAIM A NAME SPACE THAT WILL TYPICALLY CORRESPOND TO MAYBE THEIR WEBSITE DOMAIN. FROM THERE ON THEY CN DEFINE THE ID FOR THAT MODEL. ONCE IT GOES INTO OUR GLOBAL MODEL REPOSITORY IT IS CLAIMED GLOBALLY. THEN THEY OWN THAT ID.>>GREAT, GREAT. WHY DON’T WE SWITCH OVER INTO THE ACTUAL DEMO. I AM GOING TO EXIT OUT OF THIS. THE FIRST THING I AM GOING TO SHOW IS THE VS CODE PORTION OF THE DEMO. IS THIS RENDERING OKAY? I WANT TO MAKE SURE. I SAW MY SCREEN RESOLUTION CHANGE. WANT TO MAKE SURE IT IS SHOWING UP OKAY. WHY DON’T I JUST REBOOT OR PLUG IT IN AGAIN AND SEE IF THIS WILL FIX THE PROBLEM. TECHNICAL ISSUES, FOLKS.>>WE ARE LIVE.>>LIVE TV THIS HAPPENS.>>WHILE YOU ARE PULLING UP — OKAY, WE GOT IT NOW. GREAT. AS I SAID WE HAVE PARTNERED WITH THE VS CODE TEAM. THEY HAVE A BUNDLE OF EXTENSIONS CALLED THE AZURE IoT TOOLS EXTENSION THAT PROVIDE A WHOLE SET OF FUNCTIONALITY AROUND BUILDING IoT DEVICES OR INTEGRATING WITH IoT HUB. THEY HAVE EXPOSED SOME COMMANDS IN THE S CODE TO GET YOU STARTED WITH AUTHORING A PLUG AND PLAY MODEL. YOU HAVE A QUESTION?>>WE DIDN’T PLAN THAT. SO YOU ARE IN VS CODE NOW, BUT YOU CAN USE VISUAL STUDIO. PEOPLE HAVE SEEN PAST DEEP DIVES. I THINK I HAVE DESCRIBED A LOT THAT I AM A FAN GIRL FOR VS CODE AND EXTENSIONS. WE HAVE SUPPORT WITH VISUAL STUDIO AND SUPPORT WITH OUR COMMAND LINE. WANTED TO THROW THAT OUT THERE.>>WE HAVE INTRODUCED A BUNCH OF TOOLING FOR PLUG AND PLAY. THE IDE FEATURES ARE IN VS CODE. YOU CAN BUILD AM THEM IN VISUAL STUDIO. WE HAVE THE CLI — THE AZURE CLI WILL HAVE PLUG AND PLAY SUPPORT. WE HAVE ANOTHER TOOL CALLED THE AZURE EXPLORER WHICH IS A GOOEY TOOL BUT IT HELPS IN THE DEVELOPMENT CYCLE. COMING BACK TO VS CODE. I AM STARTING UP A NEW PROJECT TO AUTHOR A MODEL FOR MY DEVICE. WHEN I BRING UP THE COMMAND EXTENSION AFTER INSTALLING THE IoT TOOLS EXTENSION, I BRING UP THE COMMAND PALLET AND I CAN SEE THERE ARE A SET OF COMMANDS RELATED TO IoT PLUG AND PLAY. WHAT I WANT TO DO FIRST IS START WITH MODELING AN INTERFACE. I AM JUST GOING TO HIT THAT AND IT IS GOING TO ASK ME, WELL, I NEED A FOLDER WHERE I AM GOING TO CREATE THIS PROJECT. I WILL DO THAT IN MY DEMO FOLDER AND CALL THIS CHRIS IN CENSOR. YOU CAN GUESS WHAT DEVICE I AM GOING TO BUILD. WE OFTEN USE THIS IN OUR SAMPLES. I GIVE THE INTERFACE A NAME. I AM GOING TO CALL IT ENVIRONMENTAL CENSOR. AGAIN THINK OF THESE INTERFACES AS BEING REUSABLE ACROSS PRODUCTS OR DEVICES. SO YOU WANT TO THINK ABOUT HOW CAN I NORMALIZE DIFFERENT GROUPS OF FUNCTIONALITY INTO DIFFERENT INTERFACES. IF I USE THE SAME ENVIRONMENTAL INTERFACE I CAN DEFINE THAT. ONCE I RUN THAT COMMAND, IT CREATES A DEFAULT JSON INTERFACE DOCUMENT. THIS IS KIND OF A STARTING POINT SO I CAN GO AND KIND OF JUST MAYBE MODIFY THIS OR I CAN START FROM SCRATCH. A KEY THING COMING BACK TO THE ID QUESTION SO I CAN PUT IN MY OWN — I WILL CALL IT CHRIS G CORP. THAT WILL BE THE BASE NAME SPACE FOR ALL OF MY INTERFACE AND MODELS. I CAN GO THROUGH I CAN SEE AGAIN THERE ARE EXAMPLES HERE I FILLED IN. ONE THING ABOUT USING VS CODE IF I WANT TO ADD ANYTHING NEW — I AM GOING TO ADD A COMMA SO IT GETS RID OF THAT SQUIGGLY. I CAN START ENTERING BASED ON THE DTDL WHAT ARE THE DIFFERENT FILL IN FOR EACH OF THE NEW CAPABILITIES THAT I AM TRYING TO ADD. I AM JUST GOING TO ADD NORTEL LEM TREE POINT. THIS ONE IS GOING TO BE FOR HUMIDITY. SO THE TYPE BEING TELEMETRY, I CAN ADD DESCRIPTIONS OR COMMENTS. BUT WHEN I HAVE GOT A NUMBER OF REQUIRED AND OPTIONAL FIELDS I CAN FILL IN ONE REQUIRED ONE IS THE ACTUAL NAME. THE NAME THEN BECOMES EXPOSED WHEN I AS A SOLUTION DEVELOPER TRY TO INTERACT WITH THIS IoT DEVICE, I CAN REFERENCE THAT TELEMETRY POINT BY THIS NAME. IT ALSO REQUIRES THAT I USE A — I SPECIFY THE SCHEMA. THINK OF THE SCHEMA AS THE TYPE. YOU CAN HAVE SIMPLE TYPES WHICH ARE LISTED HERE. YOU CAN ALSO HAVE MORE COMPLEX TYPES OR OBJECTS.>>SOME EXAMPLES THERE?>>IF I WANT TO MAYBE DESCRIBE LIKE MULTIPLE DATA POINTS OBJECT THAT MIGHT HAVE A COMBINATION OF TELEMETRY AND HUMIDITY AND DERIVED PROPERTIES I WOULD BE ABLE TO DEFINE THAT IN A MORE COMPLEX OBJECT. THIS ONE I AM GOING TO AGAIN DESCRIBE AS A DOUBLING. THEN THOSE ARE THE REQUIRED FIELDS. THEN I CAN ADD MORE LATER. AND SO REALLY THE NEXT STEP IS THEN I WANT TO SORT OF CAPTURE ALL OF THIS IN A CAPABILITY MODEL. WHICH IS SORT OF THE BASE MODEL FILE THAT I USED TO GIVE YOU A CLEAR IMAGE OF ALL OF THE CAPABILITIES THAT ARE DESCRIBED INCLUDING ANY REUSABLE INTERFACES THAT I AM USING. I AM GOING TO CALL THIS ENVIRONMENTAL CENSOR X100. THIS CORRESPONDS TO THE PRODUCT OR A SKEW THAT I AM GOING TO BE BUILDING. THIS IS LIKE A PHYSICAL PRODUCT RATHER THAN SOMETHING THAT I WOULD EXPECT TO BE REUSABLE ACROSS DIFFERENT PRODUCTS. I WILL GO AHEAD AND DO THAT. IT AUTO FILLS IN SOME OF THE PORTIONS OF THE CAPABILITY MODEL. I WILL AGAIN SET UP THE BASE NAME SPACE AND THEN THE OTHER THING I WANT TO DO IS WITHIN THE CAPABILITY MODEL, YOU ARE DECLARING WHICH OF THE INTERFACES THIS DEVICE WILL IMPLEMENT. THERE IS ALREADY ONE FILLED IN WHICH IS CALLED THE STANDARD INTERFACE. STANDARD INTERFACES ARE THE ONES WHERE MICROSOFT HAS GONE AND PREDEFINED THAT THEY WANT TO ENCOURAGE IN FACT IF YOU ARE CERTIFYING WILL REQUIRE ALL PLUG AND PLAY DEVICES WILL AM USE THOSE DEVICES. WHEN THEY ARE USED IN A SOLUTION, THE DEVELOPERS USING THE SOLUTIONS CAN EXPECT A COMMON OR CORE FUNCTIONALITY. WHATEVER DEVICE I QUERY I WILL HAVE THE DEVICE PROPERTIES IN THE DEVICE INTERFACE. THAT’S ALREADY THERE. I WILL ADD THE OTHER ONE WHICH IS THE ONE THAT I DEFINED. I AM GOING TO GIVE IT THE INTERFACE ID. I WILL ALSO GIVE IT A NAME. THE NAME ALLOWS FOR ME TO REFERENCE THIS INTERFACE THROUGH OUR API’S, AND SO I AM GOING TO CALL IT IN CENSOR. THAT IS A REALLY GOOD EXAMPLE BUT I AM DONE. GOING BACK TO THE WHEEL I SHOWED THE NEXT STEP WOULD BE I HAVE TO BUILD OUT THE APPLICATION OR FIRM WARE CODE TO SUPPORT THIS BE FAVOR. TO D TO DO — THIS BEHAVIOR. I HAVE BUILT OUT STUBBED OUT CODE THAT I CAN START WITH. I BROUGHT THE COMMAND PALLET. p CAPABILITY MODEL AND I AM GOING TO GIVE THE PROJECT NAME. I WILL CALL THIS [email protected] AND HIT ENTER. RIGHT NOW WE ONLY SUPPORT THIS FOR C. OUR AMBITION IS TO SUPPORT ALL OF THE SDK LANGUAGES. I CAN BUILD THIS OUT USING C MAKE. DO I WANT TO CONNECT THIS DIRECTLY TO AN IoT HUB OR PROVISION THE DEVICE THROUGH DPS WHICH ENDS UP BEING A REQUIREMENT ALSO FOR OUR CERTIFICATION.>>ALL DEVICES NEED TO GO THROUGH A DEVICE VOE PROVISIONING SERVICE?>>IT WORKS WITH DPS AND ALSO WORKS THROUGH CENTRAL. WE WANT TO ENSURE CUSTOMER WHEN IS THEY PICK UP A PLUG AND PLAY DEVICE WE CAN SEE THAT ACROSS THE SERVICES. WE ARE GOING TO CHOOSE THAT OPTION AND ONCE THEY DO THAT VS CODE WILL GO AHEAD AND WE WILL BUILD OUT THE SCAFFOLDING FOR THAT PROJECT. IT BRINGS UP A NEW WINDOW AND I CAN SEE ON THE LEFT THERE I HAVE A SET OF C FILES, AND A LOT OF THE CODE FOR CONNECTING WITH IoT HUB FOR PROVISIONS IODS THEY ARE ALL PRE-POPULATED EVEN WITH FAKE DATA THERE.>>THAT’S NICE.>>IT IS A NICE WAY TO GET STARTED. WE HAVE A BIT MORE WORK TO DO IN TERMS OF JUST MORE CAPABILITIES WE WANT TO ADD TO THIS. IT IS A REALLY GOOD START TO GET GOING WITH BUILDING OUT THIS FIRM WEAR. I WILL SKIP AHEAD BECAUSE WE ARE DOING A BIT OF A BAKING SHOW. THE NEXT STEPLY GO T– I WILL G THROUGH IS THE CERTIFICATION PROCESS.>>ARE WE ABLE TO STORE LINKS USER FILES, USER MANUALS PDF’S MAYBE IN A CAD FILE CAPABILITY MODEL AND THE INTERFACE MODEL?>>SO RIGHT NOW OUR EXPECTATIONS, THAT TYPE OF THING WOULD BE DONE OUTSIDE OF THE CAPABILITY MODEL. FOR EXAMPLE, THIS MIGHT BE A GOOD SEGUE, BUT IF WE GO TO OUR CERTIFICATION PORTAL WHICH WE HAVE JUST LAUNCHED, I CAN ACTUALLY START SPECIFYING OR CREATING NEW PRODUCTS UNDER MY OWN TENANT SO AS A DEVICE HOLDER I WOULD HAVE A TENANT. I CAN CREATE THESE PRODUCTS AND I CAN ASSOCIATE DIFFERENT COLLATERAL WITH THAT PRODUCT. SO FOR EXAMPLE IF I GO TO, I HAVE SORT OF BUILT OUT A PRODUCT FOR THIS SAMPLE I HAVE BEEN WORKING ON, AND IF I GO AND LOOK AT THAT I CAN SEE A BUNCH OF MORE I WOULD SAY MARKETING INFORMATION ABOUT THE PRODUCT. I HAVE DESCRIPTION. I HAVE SPECS ABOUT THE PHYSICAL SHAPE AND SIZE. I CAN INCLUDE SHAPES WHERE I CAN PURCHASE THE DEVICE. A LOT OF THOSE WOULD BE SHOWING IN A DEVICE CATALOG. WHEN THEY PICK UP THE PRODUCTS THEY CAN GO AND DOWNLOAD FIRM WEAR AND ALL OF THE ABOVE.>>IF THAT’S A FEATURE OR ANY TYPE OF FEATURE THAT YOU ARE SEEING, THAT MAYBE WE DON’T HAVE RIGHT NOW. PICK US UP ON IoT TECH COMMUNITY. THERE WILL BE A LINK AT THE END. JUST LET US KNOW.>>FROM HERE I HAVE CREATED A PRODUCT AND SO NOW I WANT TO CERTIFY THIS DEVICE THAT I HAVE IMPLEMENTED, HOW DO I DO THAT? THAT’S PRETTY EASY NOW WITH THE NEW PORTAL I CAN GO AND RUN THE CONNECT AND STEP TEST FOR ANY PRODUCT I HAVE ENTERED. SO TO DO THAT WHEN I BRING THAT UP IT BRINGS ME A SERIES OF STEPS IN ORDER TO CONNECT MY PRODUCT THROUGH THE SERVICE GO THROUGH THE CERTIFICATION NUMBER PROCESS AND PUBLISH IT INTO THE CATALOG. FIRST OF ALL I NEED TO SELECT AN AUTHENTICATION METHOD. TODAY WE SUPPORT SEM METRIC KEYS AS WELL AS SO59. I AM DOING THAT TO GIVE A SET OF CREDENTIALS I CAN USE TO PROVISION THE DEVICE INTO THE CERTIFICATION SERVICE. THAT INCLUDES THE SEM METRIC KEY, REGISTRATION ID, DPSID. ALL OF THAT I WOULD ENTER INTO THE CODE OR PREFERABLY CONFIGURE THE DEVICE LIKE MANY OF THEM LIKE THE ONE SANDEEP WAS SHOWING HAS A WI-FI ACCESS POINT CONNECTION YOU CAN GO TO AND ENTER THESE THINGS AND KIND OF A CONFIGURATION STEP. I HAVE DONE THAT ALREADY WITH THE TEST APPLICATION I HAVE BUILT. SO I AM GOING TO GO AND RUN THAT. I AM RUNNING THAT AS A SIMULATED DEVICE ON MY DESKTOP FOR THE SAKE OF SPEED. SO IT IS GOING TO START UP AND START CONNECTING AND PROVISIONING INTO THIS CERTIFICATION SERVICE AND SENDING TELEMETRY. YOU CAN SEE THAT STARTING TO HAPPEN NOW. NEXT I AM GOING TO HIT CONNECT SERVICE TO START WATCHING FOR TRAFFIC FROM THIS DEVICE. SO NOW IT IS CONNECTED. IF I GO TO THE NEXT STEP, I CAN SEE THAT THROUGH THE REGISTRATION AND DISCOVERY PROCESS MIGUEL TALKED ABOUT THE SERVICE CAN NOW SEE ALL OF THE INTERFACES THAT ARE SUPPORTED BY THIS DEVICE AND REGISTER. THE DEVICE IT IS ALL DONE BY PRESIDENT REFLECTION THE SERVICE CAN DO ON THE DEVICE ITSELF. DEVICE INFORMATION, ENVIRONMENTAL CENSOR WHICH IS THE ONE I CREATED. THERE’S ANOTHER ONE JUST NATIVELY SUPPORTED BY THE SDK TO GIVE INFO ABOUT WHAT LANGUAGE IS BEING USED. NEXT I CAN GO AHEAD AND START RUNNING THE TESTS. TO DO THAT, YOU KNOW, IN THE PREVIOUS STEP I MAY NEED TO ENTER SOME INFORMATION. SOMETIMES THESE ARE REQUIRED FIELDS IN ORDER TO LET THE DEVICE WORK PROPERLY. ONCE I DO THAT I CAN GO AHEAD AND KICKOFF THE TEST. NOW THE CERTIFICATION SERVICE IS GOING AND EXERCISING EACH OF DECLARED IN THE MODEL. WRE – IT IS SENDING COMMAND AND TRY, – SETTING AND GETTING PROPERTIES. AS IT GOES THROUGH THAT PROCESS I CAN WATCH THAT IT IS HAPPENING. I CAN EVEN LOOK AT LOGS IF SOMETHING HEAVEN FORE BID IT DIDN’T WORK I CAN GO AND FIGURE OUT WHY. IT IS STRAIGHT FORWARD.>>YOU HAVE DONE THIS A COUPLE OF TIMES.>>YEAH. I MADE SURE IT WILL WORK FOR THE DEMO. ONCE I GO THROUGH AND TEST THE RESULTS FOR THE INTERFACES THE LAST STEP IS TO GO AND PUBLISH FOR THE CATALOG. IT IS CONSIDERED CERTIFIED. I DO HAVE THE NEXT STEP AND I CAN GO AND PUBLISH IT TO THE CATALOG WHICH IS WHERE OUR SOLUTION BUILDERS WILL FIND IT.>>IS IT EASY TO EDIT AFTERWARDS WITH THE DETAILS AND DEBTS DESCRIPTIONS IN THE PORTAL?>>YES. YOU CAN COME BACK IN AND MANAGE ALL OF YOUR MARKETING INFORMATION ABOUT THE PRODUCT. ONE OTHER STEP I DIDN’T TALK ABOUT IS PUBLISHING THE MODELS TO THE REPOSITORY. THAT’S WHERE THE CERTIFICATION WILL HAVE IT TO THE MODELS. I WILL USE THE INTERFACES. SOME OF THEM ARE TESTED ONES THAT WE HAVE BEEN USING SINCE THIS IS A TEST ENVIRONMENT. I CAN MANAGE MY MODELS AND INTERFACES THERE. I CAN SEE WHICH ONES HAVE GONE INTO THE PUBLIC REPO, AND BE ABLE TO MANAGE THOSE LIFE CYCLES.>>THIS IS GREAT. I AM REALLY EXCITED ABOUT THIS. I LOVE THAT THE EXPERIENCE IS A LOT BETTER WHETHER GOING INTO OUR DEVICE CATALOG. YOUR TEAM HAS BEEN SPENDING A LOT OF TIME IMPROVING THAT EXPERIENCE.>>WE WANT TO BUILD OUT A LARGE ECOSYSTEM. WE THOUGHT THE TOOLS WOULD HELP THIS HAPPEN.3 >>THANK YOU SO MUCH, CHRIS. I THINK WE GOT EVERYONE’S QUESTIONS. THANK YOU FOR COMING HERE. WE HAVE ONE MORE DEMO FOR THE OEM DEVELOPERS. I WON’T GIVE YOU HANDSHAKE. WE HAVE KNOWN EACH OTHER FOR A COUPLE YEARS. WE ARE GOING TO HAVE DANIELLE COME SHE IS ON THE PLUG AND PLAY TEAM AS WELL. SHE IS GOING TO BE GIVING A DEMO ESPECIALLY FOR THE EMOJI FOLKS OUT THERE ON THE DEVICE MAKERS. SO SHE IS GOING TO BE SHOWCASING DISCOVERY OF THESE MODELS.>>DID YOU WANT TO GIVE A LITTLE BIT OF WHAT YOU ARE DOING ON THE PLUG AND PLAY TEAM?>>I AM WORKING ON THE AZURE DEVICE SDK TEAM. AS DOING THIS I WILL BE MODELING THE DEFINITION SPECIFICALLY THAT COMES UNDER MODEL DISCOVERY AND INTERFACES. THE MODEL DEFINITION SAME THING AS DTDL IS SOMETHING THAT WE WANT TO EITHER HAVE IT ON GLOBAL REPO OR PRIVATE REPO AS CHRIS SHOWED. IT CAN ALSO LIVE ON THE DEVICE ITSELF. THE IDEA IS TO REGISTER OR INTERFACE ON THE DEVICE THAT CAN SUPPORT GETTING THIS MODEL.>>PERFECT.>>FOR THIS DEMO I WILL BE USING VISUAL STUDIO. WE WILL BE USING THE CSDK THAT HAS THE PUG AND PLAY SUPPORT. HAS THE AZURE EXPLORE TOOL.>>THIS IS BRAND NEW TOOL.>>IT IS A NEW TOOL AND ALSO A FREE TOOL. YOU CAN FIND THE LINK IN THE RESOURCES AGAIN. ALSO HERE OM. ARE WE GOOD NOW?>>THERE WE GO.>>PLUGGING IN SO WE CAN SHOW HER HER LAPTOP. >>SO THAT’S THE IoT EXPLORER TOOL THAT WE ARE GOING TO USE. I AM GOING TO GO OVER JUST A QUICK LITTLE BIT OF WHERE WE CAN FIND THE SOURCE CODE FOR THE DIGITAL TWIN OR PLUG AND PLAY SUPPORT. ON THE CSDK YOU WANT TO GO TO PUBLIC PREVIEW P AND P BRANCH AND ALL OF IT CAN BE FOUND UNDER DIGITAL TWIN CLIENT. WE ARE SPECIFICALLY GOING TO GO FOR THE SIMPLE INTERFACE. IN THIS CASE IT IS ENVIRONMENTAL CENSOR WE ARE GOING TO QUERY THE DTDL FOR. FOR THAT OF COURSE THE DEVICE NEEDS TO SUPPORT THE MODEL DEFINITION INTERFACE AND THAT’S WHAT WE ARE GOING TO GO THROUGH. IN THIS TOOL I ALREADY CREATED A DEVICE. IF YOU LOOK AT THE MY CENSOR, RIGHT NOW THERE IS NO OTHER INTERFACES REGISTERED ON THIS. THIS IS A MODEL INFORMATION WHICH GIVES YOU THE INTERFACES THAT THE DEVICE SUPPORTS. IT SHOWS ALL OF THE INTERFACES. IT IS THE MODEL DISCOVERY. SO NOW WE ARE GOING TO GO THROUGH THE SAMPLE AND SEE SDK WANT TO BUILD A SAMPLE DEVICE FOR THIS WHICH IS REGISTERING ALL OF THIS INTERFACES THAT IS REQUIRED, ESPECIALLY THE ENVIRONMENTAL CENSOR WHICH IS WHAT WE ARE INTERESTED IN.>>AND THIS IS THE MODEL THAT LIVES ON THE ACTUAL DEVICE, IT IS NOWHERE ELSE, JUST ON THE DEVICE.>>THE ENVIRONMENTAL CENSOR DTDL IS NOT PUBLISHED TO THE MODEL, THE COMPANY ALL OF THE GLOBAL REPO. THAT’S A GOOD QUESTION, BECAUSE THE NEXT THING I WANTED TO SHOW, LET’S GO BACK TO THIS DEVICE. IF YOU SEE NOW ALL OF THIS OTHER INTERFACES DTDL AND THE INFORMATION IS PUBLISHED HERE. WE WERE INTERESTED IN THE ENVIRONMENTAL CENSOR INTERFACE. I WILL JUST SHOW HOW THE DTDL FOR THIS LOOKS LIKE, AND IF YOU SEE THIS IS THE ID THAT I AM GOING TO REQUEST THE DTDL FOR. LET’S GO TO THE MODEL DEFINITION. AND FOR THAT — >>WHILE YOU ARE PULLING THIS UP, CAN YOU GIVE THE MAIN SCENARIO ON WHY YOU WOULD JUST WANT THE MODEL ON THE DEVICE SIDE? IS THIS MORE FOR THE PROTOTYPING STAGE?>>YEAH. SO LIKE WHENEVER YOU WANT TO HAVE LIKE MAYBE FOR OEM’S IN THE PROTOTYPING STAGE AND THEY WANT TO HAVE THE MODEL ON THE DEVICE.>>WITHOUT BEING PUBLISHED.>>OR EVEN USING THE PRIVATE REPOSITORY. FOR ANY REASON THEY CAN HAVE IT ON THEIR DEVICE AND ALSO GET QUERIED. WE HAVE SMALLER DEVICES YOU DON’T WANT TO STORE IT ON THE DEVICE ITSELF.>>THAT MAKES SENSE.>>IT CAN BE STORED ON THE PRIVATE REPO. IF YOU LOOK AT THIS THE MODEL DEFINITION INTERFACE HAS A SUPPORT FOR THE COMMON CALLED GET MODEL DEFINITION. THAT’S WHAT WE ARE GOING TO TEST. WE ARE GOING TO GO TO THE COMMAND, AND PUT THE ID FOR ENVIRONMENTAL CENSOR. THIS SHOWS THAT IT IS SUCCESSFULLY GOT THE INTERFACE WHICH IS BECAUSE WE HAVE THE SUPPORT FOR THE MODEL DEFINITION ON THE DEVICE.>>THAT’S GREAT.>>WE CAN ALSO SHOW WHERE THE IoT EXPLORER TOOL INFORMATION IS. THERE’S ONE MORE THING I WANTED TO SHOW ON THE TOOL IS THAT IF YOU GO TO THE DEVICE AND THEN ON THE SETTING YOU CAN ALSO ADD YOUR COMPANY THAT WAS INFORMATION HERE. THE OTHER THING IS YOU CAN HAVE THIS ORDER SWITCHED SO THE WAY THE DTDL IS LOOKED FOR IS MAYBE YOU WANT TO SEARCH IT ON THE DEVICE FIRST BEFORE GOING TO THE PUBLIC REPO AND YOU CAN SWITCH THIS ORDER HERE AND HAVE IT DONE THAT WAY.>>IT WOULD GO TO THE FIRST AVAILABLE ONE AT THAT POINT.>>IT WOULD GO TO THE DEVICE FIRST. IF IT DOESN’T FIND THE INTERFACE IT GOES TO THE PUBLIC REPO IN THAT SCENARIO. BEFORE THIS THE PUBLIC REPO AND THEN THE DEVICE. IF YOU HAVE A COMPANY REPOSITORY YOU CAN ADD A CONNECTION STRING HERE.>>WHAT WOULD BE THE BENEFIT FOR THEM TO SWAP THEM, LET’S SAY YOU HAVE BOTH OF THOSE OPTIONS, CHOOSING THE DEVICE OVER THE ONE THAT IS IN THE PUBLIC?>>I MEAN, IT WILL BE THE UNIQUE ID FOR YOUR INTERFACE. IT WOULD BE BENEFICIAL TO JOOUS FOR THE DISCOVERY OF THE MODEL AS IT IS ON THE DEVICE AND YOU WANT TO PRIORITIZE THAT COMPARED TO — OR THE MODELS THAT YOU — MOST OF THE MODELS YOU ARE STORING ON THE DEVICE LET’S SAY THERE’S ONLY A FEW OF THEM ON THE PUBLIC REPO. IN THAT CASE IT MIGHT MAKE SENSE TO SWITCH THIS ON CONNECTED DEVICE FIRST.>>PERFECT, YEAH. GREAT SEEING THIS. THE SAMPLE CODE, WHERE CAN WE FIND THIS?>>YES, THAT’S ON THE CSDK. YOU CAN GO TO THE PUBLIC PREVIEW P AND P BRANCH. THAT’S ALREADY HERE. AM THE SOURCE CODE IS HERE AND THE SAMPLES FOR THIS, FOR THE SAMPLE DEVICE ENVIRONMENTAL SENSE SOERP AND MODEL IS RIGHT HERE. ALSO ALL OF THE DOCUMENTATION OF HOW TO BUILD IT, ALL THAT IS ALSO IN HERE.>>IS THAT LINKD FROM YOUR MICROSOFT DOCKS AT THE MOMENT?>>YES.>>MORE WAYS FOR US TO FIND IT. THIS IS GREAT. ANY TOP FEEDBACK TO GIVE TO OR INSIGHTS YOU WANT TO GIVE TO THE DEVICE MAKERS AT THE MOMENT?>>FOR THE MODEL IT IS OPTIONAL INTERFACE. THE DEVICE DOESN’T NEED TO HAVE IT. FOR THE OEM’S IT IS FOR THEM IT IS A GOOD IDEA TO USE THE CLOUD REPOSITORY AND INSTEAD OF STORING IT ON THEIR DEVICE TO USE FOR THE SIZE CONSTRAINTS.>>THAT SMANGS. YOU ARE OUR LAST GUEST. THE LAST PERSON AT THE PARTY. THANKS FOR COMING HERE AND FOR I THINK WE ARE GOING TO PULL UP OUR RESOURCE SLIDE REAL QUICK. BUT IF YOU ARE INTERESTED IN LEARNING MORE, I REFERENCE IoT TECH COMMUNITY A LOT DURING THIS DEEP DIVE, BUT I AM GOING TO BE POSTING THE SLIDES ON THE IoT TECH COMMUNITY TODAY. IF YOU ARE INTERESTED IN GETTING THE SLIDES AND LEARNING MORE ABOUT PLUG AND PLAY CHECK OUT THE VIDEOS FOR THE INTROS. THIS WILL BE ON DEMAND. IF YOU HAVE ANY TYPE OF FEEDBACK OF WHAT YOU WANT IN THE FUTURE FOR DEEP DIVES LET ME KNOW. I AM OPEN TO ANY TYPE OF AM SUGGESTION. YOU CAN FIND ME ON TWITTER OR IoT TECH COMMUNITIES. THANK YOU FOR JOINING US. HAVE A GOOD DAY. BUY. — BYE. {OFF {OFF-LINE}

2 comments

Leave a Reply

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