Network Connected Devices
Joseph Ngari| Program Manager
Easily connect and control your network devices
What are UPnP and PnP-X
4 MICROSOFT CONFIDENTIAL
About UPnP• It enables a standards based discovery and communication solution
for network connected devices.
5 MICROSOFT CONFIDENTIAL
UPnP in a nutshell• Device must implement http• Discovery (SSDP)
• Windows initiates multicast on port 1900 which contains special tag: M-SEARCH. • Device responds via unicast with URL to a device description document (DDD)• Host downloads the DDD from the URL• The DDD has pointers to the Service Control Protocol Description (SCPD) ,
eventing and presentation URLs. These additional services are not needed for discovery.
• Learn More: http://www.upnp.org/
6 MICROSOFT CONFIDENTIAL
PnP-X• Very easy. Its one xml tag in the DDD
• <pnpx:X_hardwareId>Microsoft/SampleDevice/10000/urn:microsoft-com:device:SampleDimmerDevice:1</pnpx:X_hardwareId>
• Enables an enhanced pairing experience with windows. • Only have to provide a PnP-X hardware ID and the device type.
• This lives in the DDD we covered above.• If you don’t use a PnP-X ID you will not be able to get connected.
Binding with the App
8 MICROSOFT CONFIDENTIAL
Device meta-data uses PnP-X IDThis goes in your DDD<pnpx:X_hardwareId>Microsoft/SampleDevice/10000/urn:microsoft-com:device:SampleDimmerDevice:1</pnpx:X_hardwareId>
You then add the ID to the meta-data as shown below. The prefix will be added by the device meta-data wizard.
Device Presence
10 MICROSOFT CONFIDENTIAL
Device Presence• Device has a dev node once it is paired and regardless of whether
the device is connected. • Windows keeps track of presence.
• Device should send periodic “alive” messages. • Device should send “byebye” before it disconnects otherwise the PC will think
the device is still connected for up to 30 minutes.
Communicating with the device
12 MICROSOFT CONFIDENTIAL
Retrieving the device• Device enumeration
• Once you get the IP address you can use any desired communication protocol. • We recommend UPnP.
• No need to invent a new protocol.• Enables anyone to talk to your device. • Will not conflict with other operating systems
13 MICROSOFT CONFIDENTIAL
Using the device• Get the Service Control Protocol Description (SCPD)• Invoke actions• Subscribe for events
• SOAP• UPnP uses soap to communicate• Additional Resources
14 MICROSOFT CONFIDENTIAL
Automatic Connection• Network Connected Device Automatic Setup (NCD-AS)
• Requirements• Must be on a private network and sharing must be enabled.• Must have less than 30 number of devices on the network.
• This includes all devices and not just UPnP devices. • Must fit into specific device categories
• General rule is that it is a shared device in the home• Device category must be correct.
This optional PnP-X tag describes the device category.
<pnpx:X_deviceCategory>HomeAutomation</pnpx:X_deviceCategory>
15 MICROSOFT CONFIDENTIAL
Resources• Windows Rally• UPnP• Dimmer Sample
Top Related