Thoughts on how Internet Standards - HTTP, TCP/IP, WiFi, Bonjour - can be used in conjunction with Semantic Web technologies to create the Internet of Things. The emphasis of this document is the home / LAN, hence "The Intranet of Things", but the broad themes are universally applicable.
Things that are up in the air are marked in read. Everything IMO.
Also see http://iotdb.org - a work in progress.
9. Communications
• How will things talk to things?
• How will we talk to things?
Wednesday, 17 July, 13
10. Protocols
• Wi-Fi
• TCP/IP
• HTTP
• JSON / XML ... for things to things
• HTML ... for us to things
• Bluetooth Low Energy (special case)
Wednesday, 17 July, 13
11. Bluetooth Low Energy
• Ships in all modern iOS devices
• Ships in many new Androids
• 30m range (50m claimed)
• Coin-cell-sized devices
Wednesday, 17 July, 13
12. BLE purpose
• for small sensors and devices
• for personal area networks
• for health stuff ... scales, heart-rate
monitors, etc.
Wednesday, 17 July, 13
13. BLE use
• Think of it as “invisible wires”
• Will be controlled...
• directly by mobile devices
• indirectly through hubs
Wednesday, 17 July, 13
25. Can...
• devices easily talk to each other?
• devices be controlled from one UI?
• “novel” devices be effortlessly introduced?
Wednesday, 17 July, 13
26. Standards?
• Fine grained / line level ... not on
• Everyone always does their own thing
Wednesday, 17 July, 13
27. But we’re almost there!
• Our standards stack gets us a long way
• i.e.Wi-Fi, HTTP, REST, HATEOAS, JSON
• We just need one last bit of translation
Wednesday, 17 July, 13
28. The Semantic Web
• A kind of wide-open database, use what
you need, infinitely extendable
• Everything described by URLs
Wednesday, 17 July, 13
29. schema.org
• Vocabulary for describing things and
products (and more)
• e.g. this is aToshiba 42” FlatscreenTV
Wednesday, 17 July, 13
30. iotdb.org
• A work in progress!
• Vocabulary for describing how to control
IoT things
• e.g. this is a light, this can be turned on and
off, this has a brightness control, this has a
color
Wednesday, 17 July, 13
31. JSON-LD
• Links JSON documents to the Semantic
Web
• Too clumsy / difficult for the IoT
• Developers are not likely to adopt ...
• ... but the technique is perfect
Wednesday, 17 July, 13
32. The Rosetta Stone
• Add a single definition term to APIs
{
"@iot" : "/definitions/light",
"on" : true,
"brightness" : 0.5,
"color" : "#FFFFFF"
}
• Defines every term in the API semantically
with well-known definitions
• Another work in progress!
Wednesday, 17 July, 13
34. We Can’t...
• Hide the devices / APIs
• Make everyone log into every device
• Get this wrong!
Wednesday, 17 July, 13
35. Considerations
• Some attributes can be read by everyone
but only set by a few ... e.g. temperature
• Current implementations are bad
• AirPlay: wide open
• UPnP: broken
Wednesday, 17 July, 13
36. Wide open
• Sorry, I’ve got nothing
• This can’t be half-baked
Wednesday, 17 July, 13
38. Not that smart
• We need information outside the device
• e.g. Belkin WeMo: I can be on, I can be off
• There’s so much more we need to know!
Wednesday, 17 July, 13
39. What is it really?
• Consider the WeMo
• connected to a table lamp
• connected to a space heater
• It doesn’t know!
• Same interface, effectively / collectively a
very different device
Wednesday, 17 July, 13
40. Where is it?
• Is it in the kitchen? in the living room?
• Both? ... e.g. a door open sensor
• Many? ... e.g. a HVAC subsystem
Wednesday, 17 July, 13
41. Wide open
• Assume there’s data that needs to be
“outside” the device
• But we don’t want to “go to the Internet”
to control our house!
• Open problem
Wednesday, 17 July, 13
42. Get in touch!
David Janes
@dpjanes
davidjanes@davidjanes.com
http://imadeit.davidjanes.com/
Wednesday, 17 July, 13