<<

Any questions please contact winhectpe@.com

AllJoyn Node

AllJoyn Thin Client

Other Proximal or Cloud Devices 72°

Device System Bridge AllJoyn Common Interface

Others

OSS Z-Wave example Bridge •

• • • • Adapter

Network Access Stack

Go to Visual Studio Gallery and search for “DSB” or Download here An Visual Studio extension developed by Microsoft IoT Explorer for AllJoyn

A Modbus variant used for communications over TCP/IP networks, connecting over port 502. Client/Server Model

Transaction ID Protocol ID Frame Field Unit ID Function Code Target Address Data bytes 2 Bytes 2 Bytes 2 Bytes 1 Byte 1 Byte 2 Bytes N bytes

1. Install the AllJoyn Device System Bridge Template

2. Launch Visual Studio 2015, click File > New > Project.

3. In the New Project dialog box, click Installed > Templates > Visual # > Windows > AllJoyn Device System Bridge to create a new AllJoyn Device System Bridge App project Access to non-AllJoyn Network specific

In case of Modbus TCP, the network stack does the following: DSB • Connects to the Modbus Gateway Network Stack • Sends Modbus TCP request to the Modbus MyModbusGateway Library Device • Listens and parses Modbus TCP response from the Modbus Device Instantiates and manages virtual devices on behalf of each device from the non-AllJoyn network

Adapter DSB Translates device schemas into internal Network Stack device objects MyModbusGateway Library Initialize Modbus Gateway • Connect to the Modbus Gateway

Adapter DSB Initialize Modbus Sensor Device

• Create ModbusSensorDevice class as a child of Network Stack IAdapterDevice MyModbusGateway Library

• Define device property and attributes: GetPropertyValue() • ModbusSensorAttribute::ReadAsync() • Creates a Modbus read request

• Sends the Modbus read request to the device Adapter DSB • Listens for the Modbus response from the device • Parses the response and updates Value.Data of the attribute Network Stack MyModbusGateway Library SetPropetyValue() • ModbusSensorAttribute::WriteAsync() • Check input values • Creates a Modbus write request • Sends the Modbus write request to the device • Listens for the Modbus response from the device

1. Install the AllJoyn Studio

2. Launch Visual Studio 2015, click File > New > Project.

3. In the New Project dialog box, click Installed > Templates > Visual C# > Windows > Universal to create a new AllJoyn App project Add and Remove Interfaces

Automatically add the generated files as a WinRT Component To modify the interfaces after the solution is created… Go to AllJoyn > Add/Remove Interfaces... to launch the Interface manager Add a “Using” clause to access the WinRT components Using Windows.Devices.AllJoyn; Using com.microsoft.ModbusAdapter.MyModbusSensor.interface_1; Implement the Watcher Create a new AllJoynBusAttachment Initialize the watcher with the AllJoynBusAttachment Register the watcher Added event Start the watcher

Register a consumer NOTE: One consumer for one producer. Get Attribute Value Interface_1GetAttributeResult myResult = await myConusmer.GetAttributeAsync(); if(myResult.Status != AllJoynStatus.Ok) return; double myValue = myResult.AttributeValue;

Set Attribute Value await myConusmer.SetAttributeAsync();

Use the predefined function calls om Interface_1Consumer.

ModbusSensorDevice::Initialize() • Define Signals • Implicit Signal Adapter • Explicit Signal DSB

Define a Event Handler of the Signal Network Stack MyModbusGateway Library

Call the Event Handler in GetPropertyValue() In Watcher_Added event Register events for the various Signals that the producer will emit. • Property changed signals are direct members of the consumer class. • Other signals are members of the Signals class under the Main Interface. Define an Event Handler for the Signal Send toast notification when received the temperature changed event. http://ms-iot.github.io/content/en-US/win10/AllJoyn.htm

git.allseenalliance.org/cgit/dsb.git

• Mock DSB Tutorial and Sample • Z-Wave DSB Tutorial and Sample • ZigBee DSB Tutorial and Sample • REST API DSB Tutorial and Sample (soon, keep checking) • GPIO DSB Tutorial • BACnet DSB Sample [email protected] Subscribe Join WinHEC LINE Community We want to hear from you! @winhec Please Complete the Evaluation Form and return it to our reception.

Your input is highly important to us! Thank you!! 