Post on 10-May-2015
IOTLondon 22nd May '12
Quest for alow-power home hub
@paul_tanner
Scenario
● Many devices● Many services● Many protocols● Standards? DHYB● Crazy mess of
visualisations● Exploding routers!● It can only get worse
Hub
● Handle diverse sensors/ actuators
● Interact with various cloud services
● Single connection to home router
● Modularity/ Openness
HUB
sensors/ actuators
devices
sensors/ actuators
cloud services
Requirements
● Modular protocols● Downloadable config.● Buffer storage● Rule support● Open source● Durably packaged● Affordable● Low power
Local Devices
● 433 Mhz (prop)● 868 Mhz (prop)● Zigbee (profiles)● One-wire● 6LowPAN● RS232 Serial● UDP on LAN
Cloud Services● Cosm/ pachube
● Incl. SSL
● Thingiverse● Nimbits● AMEE● Wunderground● Proprietary APIs
● AlertMe● etc ...
Available Tech
● Nanode (Atmel)
● OpenKontrol
● SK Pang (MBED)
● BeagleBone (ARM)
● Raspberry Pi
● FriendlyARM
● Digi ConnectPort
● NSLU2 (Slug)
● Hacked routers etc.
c
SWOT – SKP Gateway
● MBED● Performance● Memory● Libraries
● Slot for 2nd RFM12● Robust packaging● Only one slot for
Xbee/ XRF
SWOT - OpenKontrol
● Two radio slots in addition to RFM12
● Lower cost processor● Restricted memory● Daughterboard
(Ethernet port)● Promise of lower
power● Indicators
Others
● Nanode
● used by OEM● BeagleBone (ARM)
✔ linux stack + node.js✔ “capes”
● FriendlyARM
● Pi (unobtainable any time soon)
✔ linux stack✗ hardware ecosystem
Example App
● Monitors emit UDP multicast
● Temperature from XRF-based sensors
● Additional data from AMEE and wundergr.
● Energy and temperature to pachube
● Feedback in graphs, twitter alerts etc.
Tests So Far
● Building kits with minimal doc?
● Some things feasible with each platform
● e.g. TCP sockets● Current library issues
● No UDP multicast for Arduino
● linux with node.js version discrepancies www.nodejs.org
Issues
● Concurrency● O/S or not?
● Support in libraries● e.g. multicast
● Memory requirements● Packaging● IDE, languages
● nodejs/ python vs. c++ www.asmithillustration.com
Conclusions
● Today: jury is still out● Initially O/S and
libraries will decide● Packaging is soluble● Memory could
therefore be a killer● Finally, power use
Questions?
www.slideshare.net/paul_tanner
@paul_tannerwww.e-ssociation.com/blog
Comparative Factors
Platform O/S On (W) S/Save (W)
Sleep multicast enclosure
OK Gateway
* 0.7 Y
MBED * 1.7 Y
Beaglebone linux 2.5 Y
NSLU2 linux
iMac OS/X 75 50 2 Y
PC Win7 100 52 1 Y
* could use qp, FreeRTOS, Contiki etc.