Bringing Legacy Devices Online
14 June 2016, Berlin – IoT Tech Expo
Bernd Behler, CTO tresmo
©tresmoGmbH
Bringing Legacy Devices Online
“As a manufacturer, I want to connect my
legacy devices to the internet so that I can
offer new services and enable my customers
to control their devices remotely.”
©tresmoGmbH
Bringing Legacy Devices Online
?
? ? Cloud
Option A
©tresmoGmbH
Bringing Legacy Devices Online
+
Option B
Internal IoT Gateway
©tresmoGmbH
Bringing Legacy Devices Online
External Gateway
Option C
?
External IoT Gateway
©tresmoGmbH
Bringing Legacy Devices Online
Service Ports
©tresmoGmbH
Bringing Legacy Devices Online
Gateway Service Port Connection
Option C
Service port
©tresmoGmbH
Bringing Legacy Devices Online
IoT Gateways
Gateways can make a legacy device IoT capable:
- talks device specific protocols on one side
- talks IoT protocols on the other side
- one or more devices can be connected to a gateway (wireless or wired)
©tresmoGmbH
Bringing Legacy Devices Online
Gateway Usage Example
Cloud
Gateway
Device
Example: Connecting a Heating Appliance to the Cloud
App
©tresmoGmbH
Bringing Legacy Devices Online
IoT Gateways
Typical Gateway Functionality
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
connecting
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
read / write
connecting
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
read / write
send / receive
connecting
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
read / write
connecting
send / receive
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
local buffering
read / write
connecting
send / receive
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
local buffering
read / write
connecting
send / receive
trigger rules
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
local buffering
read / write
connecting
send / receive
trigger rules
local applications
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
local buffering
read / write
connecting
send / receive
trigger rules
local applications
local connection
endpoint
©tresmoGmbH
Bringing Legacy Devices Online
Gateway - Typical Functionality
Cloud
Gateway
Device
App
firmware updates
data preprocessing
local buffering
read / write
connecting
send / receive
trigger rules
local applications
device id
local connection
endpoint
©tresmoGmbH
Bringing Legacy Devices Online
Device Identification
At the time the gateway is
produced, you usually do
not know what device is
going to be connected to it.
There must be a device
identification mechanism to
detect which device (with
which firmware version) is
connected.
©tresmoGmbH
Bringing Legacy Devices Online
Device Identification
“Who are you?”
“I am a heating appliance of type XYZ
with firmware version 1.2.3 “
Device
Gateway
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Definitions
The gateway itself has no
knowledge about what
“datapoints” to read from
the device
The IoT cloud has to tell the
gateway which datapoints to
read.
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Definitions
“Who are you?”
“I am a heating appliance of type
XYZ with firmware version 1.2.3 “
Device
Gateway
Cloud
I have a heating appliance XYZ
with firmware 1.2.3. Please tell
me what datapoints to read.
List with datapoint definitions
for the device.
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Definitions
Example:
- address 0x1234
- datatype byte
- length 1
- scaling factor 1
- unit celsius
- min 10
- max 35
- stepping 1
- description temperature setting
- ...
datapoint definitions
for all devices
Datapoint Definition
Database
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Value Propagation
Cloud
Gateway
Device
App
gateway reads from address
0x1234
1
2
cloud forwards datapoint
address value to app:
0x1234 = 00011000
24°
3
app shows
temperature
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Value Propagation
Cloud
Gateway
Device A
App
cloud forwards datapoint
values to app:
0x1234 = = 00011000
Device B
address 0x1234
24°
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Value Propagation
Cloud
Gateway
Device A
App
cloud forwards datapoint values to app:
Device A: 0x1234 = = 00011000
Device B: 0x5678 = 1011110000
Device B
address 0x1234
address 0x5678
Problem: different devices store values
under different addresses.
How does the app know what
those addresses mean?
24°
©tresmoGmbH
Bringing Legacy Devices Online
Semantic Datamodel
Datapoint Mapping
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Mapping
Device A
Device B
address 0x1234
address 0x5678
Semantic Metamodel
/heating/temperature
= 24 °
App
24°
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Mapping
1
Semantic Metamodel
Define a semantic
metamodel across your
devices
2
Mapping Rules
Define mapping rules
to convert:
- raw device datapoint
values to metamodel
values
- metamodel values to
raw device datapoint
values
3
Conversion Engine
Use a conversion
engine to perform
conversions between
datapoint values and
metamodel based on a
given set of mapping
rules
©tresmoGmbH
Bringing Legacy Devices Online
Datapoint Value Propagation
Cloud
Gateway
Device A
App
cloud forwards datapoint values to app:
Device A: /heating/temperature = 24°
Device B: /heating/temperature = 24°
Device B
address 0x1234
address 0x5678
Datapoint
Standardization
24°
©tresmoGmbH
Bringing Legacy Devices Online
Summary
Internal or external gateways can be used to connect legacy
devices to the Internet.
A device identification mechanism has to be in place, when
different devices are to be connected.
Datapoint definitions can be loaded from the cloud on demand.
Metamodel mapping is important if datapoints differ from device
to device.
1
2
3
4
©tresmoGmbH
Bringing Legacy Devices Online
We are a 360° digital agency with passion for the IoT
Digital Transformation
Consulting
Software
Development
Digital Analytics /
Big Data
©tresmoGmbH
Bringing Legacy Devices Online
How can we help you with your IoT project?
Bernd Behler
Bernd Behler
bb@tresmo.de
IoT Tech Expo booth #14
www.tresmo.de
#tresmo360

Bringing Legacy Devices Online

  • 1.
    Bringing Legacy DevicesOnline 14 June 2016, Berlin – IoT Tech Expo Bernd Behler, CTO tresmo
  • 2.
    ©tresmoGmbH Bringing Legacy DevicesOnline “As a manufacturer, I want to connect my legacy devices to the internet so that I can offer new services and enable my customers to control their devices remotely.”
  • 4.
  • 5.
  • 6.
    ©tresmoGmbH Bringing Legacy DevicesOnline + Option B Internal IoT Gateway
  • 8.
    ©tresmoGmbH Bringing Legacy DevicesOnline External Gateway Option C ? External IoT Gateway
  • 9.
  • 10.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway Service Port Connection Option C Service port
  • 11.
    ©tresmoGmbH Bringing Legacy DevicesOnline IoT Gateways Gateways can make a legacy device IoT capable: - talks device specific protocols on one side - talks IoT protocols on the other side - one or more devices can be connected to a gateway (wireless or wired)
  • 12.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway Usage Example Cloud Gateway Device Example: Connecting a Heating Appliance to the Cloud App
  • 13.
    ©tresmoGmbH Bringing Legacy DevicesOnline IoT Gateways Typical Gateway Functionality
  • 14.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App
  • 15.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates
  • 16.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates connecting
  • 17.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates read / write connecting
  • 18.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates read / write send / receive connecting
  • 19.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing read / write connecting send / receive
  • 20.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing local buffering read / write connecting send / receive
  • 21.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing local buffering read / write connecting send / receive trigger rules
  • 22.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing local buffering read / write connecting send / receive trigger rules local applications
  • 23.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing local buffering read / write connecting send / receive trigger rules local applications local connection endpoint
  • 24.
    ©tresmoGmbH Bringing Legacy DevicesOnline Gateway - Typical Functionality Cloud Gateway Device App firmware updates data preprocessing local buffering read / write connecting send / receive trigger rules local applications device id local connection endpoint
  • 25.
    ©tresmoGmbH Bringing Legacy DevicesOnline Device Identification At the time the gateway is produced, you usually do not know what device is going to be connected to it. There must be a device identification mechanism to detect which device (with which firmware version) is connected.
  • 26.
    ©tresmoGmbH Bringing Legacy DevicesOnline Device Identification “Who are you?” “I am a heating appliance of type XYZ with firmware version 1.2.3 “ Device Gateway
  • 27.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Definitions The gateway itself has no knowledge about what “datapoints” to read from the device The IoT cloud has to tell the gateway which datapoints to read.
  • 28.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Definitions “Who are you?” “I am a heating appliance of type XYZ with firmware version 1.2.3 “ Device Gateway Cloud I have a heating appliance XYZ with firmware 1.2.3. Please tell me what datapoints to read. List with datapoint definitions for the device.
  • 29.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Definitions Example: - address 0x1234 - datatype byte - length 1 - scaling factor 1 - unit celsius - min 10 - max 35 - stepping 1 - description temperature setting - ... datapoint definitions for all devices Datapoint Definition Database
  • 30.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Value Propagation Cloud Gateway Device App gateway reads from address 0x1234 1 2 cloud forwards datapoint address value to app: 0x1234 = 00011000 24° 3 app shows temperature
  • 31.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Value Propagation Cloud Gateway Device A App cloud forwards datapoint values to app: 0x1234 = = 00011000 Device B address 0x1234 24°
  • 32.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Value Propagation Cloud Gateway Device A App cloud forwards datapoint values to app: Device A: 0x1234 = = 00011000 Device B: 0x5678 = 1011110000 Device B address 0x1234 address 0x5678 Problem: different devices store values under different addresses. How does the app know what those addresses mean? 24°
  • 33.
    ©tresmoGmbH Bringing Legacy DevicesOnline Semantic Datamodel Datapoint Mapping
  • 34.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Mapping Device A Device B address 0x1234 address 0x5678 Semantic Metamodel /heating/temperature = 24 ° App 24°
  • 35.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Mapping 1 Semantic Metamodel Define a semantic metamodel across your devices 2 Mapping Rules Define mapping rules to convert: - raw device datapoint values to metamodel values - metamodel values to raw device datapoint values 3 Conversion Engine Use a conversion engine to perform conversions between datapoint values and metamodel based on a given set of mapping rules
  • 36.
    ©tresmoGmbH Bringing Legacy DevicesOnline Datapoint Value Propagation Cloud Gateway Device A App cloud forwards datapoint values to app: Device A: /heating/temperature = 24° Device B: /heating/temperature = 24° Device B address 0x1234 address 0x5678 Datapoint Standardization 24°
  • 37.
    ©tresmoGmbH Bringing Legacy DevicesOnline Summary Internal or external gateways can be used to connect legacy devices to the Internet. A device identification mechanism has to be in place, when different devices are to be connected. Datapoint definitions can be loaded from the cloud on demand. Metamodel mapping is important if datapoints differ from device to device. 1 2 3 4
  • 38.
    ©tresmoGmbH Bringing Legacy DevicesOnline We are a 360° digital agency with passion for the IoT Digital Transformation Consulting Software Development Digital Analytics / Big Data
  • 39.
    ©tresmoGmbH Bringing Legacy DevicesOnline How can we help you with your IoT project? Bernd Behler Bernd Behler bb@tresmo.de IoT Tech Expo booth #14 www.tresmo.de #tresmo360