Your SlideShare is downloading. ×
0
In Touch with Smart DevicesThe future is connected.Masanori FujitaZühlke Engineering GmbH                              Sli...
What about Android@Home?                                                •   Android@Home announced at                     ...
•   Lighting•   Heating system•   Washing Machine•   Dish washer•   Weather sensors•   Door bell•   Audio & Video
Supported interfaces types                                                      GSM/3G                                   U...
Traditional Roles                                                          Accessory                            Master Dev...
New Roles                                                          Accessory                            Master Device     ...
USB Host Mode                                                  •   USB host is required to provide                        ...
Open AccessoryDevelopment Kit     USB Host     USB Slave
Android                PhoneDev. Machine
ADK Initialization Process                                                                            Wait for Android    ...
Android: Many form-factors       Samsung Galaxy S II                                                                      ...
USB Support in Android                                                                                                    ...
•   Reliable and high speed    connection•   Easy handling for user and    developer•   Power supply and form-    factors ...
Which Bluetooth profiles does your phonesupport?                                                SPP                       ...
The built-in Bluetooth Stack                                                Android API                                   ...
What the API offers…•      Scan for devices•      Listen for incoming RFCOMM connections•      Establish RFCOMM connection...
Not all profiles use RFCOMMExample: HID                         Human Interface Device Profile                            ...
You should only rely on serialcommunication, unless…•      you can implement a profile in Java that solely builds       up...
•   Supported by most devices•   Handling might be tricky for    user•   Only serial communication is    guaranteed
Borrowed from nfc-forum.org
Reading and writing tags•      Support for different       types of tags       – NFC Forum Type 1-4       – Mifare *•     ...
Beaming to and from your smart device•      Android Beam™ is technically an NDEF push       in peer-to-peer mode       – G...
Android as a Card•      Card emulation is not exposed in Android API•      Would add many valuable scenarios•      Also co...
•   Future Android devices will    probably have support for    NFC•   Easy handling for user and    developer•   Need to ...
What is the best way to connect to yourdevices and accessories?                                                Which UX do...
TCP / UDPover WiFi and Mobile Network
Home Automation made easypowered by ELVELV pluggable sensors and actorsIn Touch with Smart Devices | Masanori Fujita   Mar...
Home Automation made easypowered by ELVELV pluggable sensors and actors                                                UAR...
Introducing Arduino•      Open Source prototyping board•      ATmega328 @ 16 MHz•      14 digital and 6 analog I/O pins•  ...
Home Automation made easypowered by ELV + Arduino + AndroidELV pluggable sensors and actors                               ...
Udp.begin(localPort);    server.begin();    Serial.begin(9600);    while(timeStatus() == timeNotSet) {      unsigned long ...
SMA Solar Inverter                     Bluetooth
Stiebel-Eltron Heating System                                RS232
Internet ofThings
Build upon small and open       components
   Thermometer   Accelerometer   External Sensors   WiFi      Twitter      Email      Text Messaging
We can make it happen.       Today.
Masanori Fujitamfu@zuehlke.com@matterlobby
In touch with smart devices
In touch with smart devices
In touch with smart devices
In touch with smart devices
Upcoming SlideShare
Loading in...5
×

In touch with smart devices

498

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
498
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "In touch with smart devices"

  1. 1. In Touch with Smart DevicesThe future is connected.Masanori FujitaZühlke Engineering GmbH Slide 1 March 2012 Masanori Fujita © Zühlke 2012
  2. 2. What about Android@Home? • Android@Home announced at Google I/O in May 2011 • Vision: “think of your entire home as an accessory” – Control lighting – Collect sensor data – Play media • new wireless protocol to communicate with accessories • so far, no updates on thisIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 2 © Zühlke 2012
  3. 3. • Lighting• Heating system• Washing Machine• Dish washer• Weather sensors• Door bell• Audio & Video
  4. 4. Supported interfaces types GSM/3G USB WiFi NFC BluetoothIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 4 © Zühlke 2012
  5. 5. Traditional Roles Accessory Master Device Accessory • PCs • Input Devices • Mass Storage • Printer • Camera • MP3 Players • SmartphonesIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 6 © Zühlke 2012
  6. 6. New Roles Accessory Master Device Accessory • PCs • Input Devices • Smartphones • Mass Storage • Printer • Camera • MP3 Players • SmartphonesIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 7 © Zühlke 2012
  7. 7. USB Host Mode • USB host is required to provide 500mA current • USB On-the-Go is used to act as limited USB host • USB Host Mode is optional Accessory AccessoryIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 8 © Zühlke 2012
  8. 8. Open AccessoryDevelopment Kit USB Host USB Slave
  9. 9. Android PhoneDev. Machine
  10. 10. ADK Initialization Process Wait for Android Request USB device to connect device descriptor Accessory Power On Android device connected Request accessory support Android Device Send no OEM’s vendor and product ID Wait for accessory to connect Power On Device in accessory mode? Send yes Google’s vendor and product IDIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 11 © Zühlke 2012
  11. 11. Android: Many form-factors Samsung Galaxy S II HTC Velocity 4G Motorola Pro+In Touch with Smart Devices | Masanori Fujita March 2012 Slide 12 © Zühlke 2012
  12. 12. USB Support in Android Oct-11 4.0 Feb-11 May-11 Jul-11 3.0 3.1 3.2 Oct 09 Jan 10 May 10 Dec-10 2.0 2.1 2.2 2.3 Sep-08 Feb-09 Apr 09 Sep-09 1.0 1.1 1.5 1.6 Sep 2008 Mar 2012 ADK (since 3.1 + 2.3.4) USB Host Mode (since 3.1)In Touch with Smart Devices | Masanori Fujita March 2012 Slide 13 © Zühlke 2012
  13. 13. • Reliable and high speed connection• Easy handling for user and developer• Power supply and form- factors might be an issue for accessory designers
  14. 14. Which Bluetooth profiles does your phonesupport? SPP HDP DUN SIM HID FAX HFP OPP OPP HSPIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 16 © Zühlke 2012
  15. 15. The built-in Bluetooth Stack Android API Socket (android.bluetooth.*) Serial Port Profile (SPP) Virtual serial port Service Discovery RFCOMM Protocol L2CAP Link Manager Layer Bluetooth Baseband Controller Radio LayerIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 17 © Zühlke 2012
  16. 16. What the API offers…• Scan for devices• Listen for incoming RFCOMM connections• Establish RFCOMM connections• Communicate with HFP, HSP, HDP, A2DP devices• Implement new Bluetooth profilesIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 18 © Zühlke 2012
  17. 17. Not all profiles use RFCOMMExample: HID Human Interface Device Profile Service Discovery Protocol L2CAP Link Manager Layer Bluetooth Baseband Controller Radio LayerIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 19 © Zühlke 2012
  18. 18. You should only rely on serialcommunication, unless…• you can implement a profile in Java that solely builds upon RFCOMM and SDP.• you have a defined set of target devices – accessing the native BT driver – create native extensions – add profiles to API – compile custom ROM• Google defines other profiles to be mandatory for Android devices and offer them as APIIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 20 © Zühlke 2012
  19. 19. • Supported by most devices• Handling might be tricky for user• Only serial communication is guaranteed
  20. 20. Borrowed from nfc-forum.org
  21. 21. Reading and writing tags• Support for different types of tags – NFC Forum Type 1-4 – Mifare *• API features – Reacting on tag discovery – Reading and writing passive tag with serial NDEF messages passive number, deployment – Sector level I/O access date, date of last inspection etc. active Card emulation providing live status information, allow device settingsIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 24 © Zühlke 2012
  22. 22. Beaming to and from your smart device• Android Beam™ is technically an NDEF push in peer-to-peer mode – Google’s own NDEF Push Protocol (NPP) – NFC Forum’s new Simple NDEF Exchange Protocol (SNEP)• No bi-directional data exchange using lower layers active Realtime status information, allow device settingsIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 25 © Zühlke 2012
  23. 23. Android as a Card• Card emulation is not exposed in Android API• Would add many valuable scenarios• Also consider discussion around secure elements – in a SIM card – embedded in a chip – on stickersIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 26 © Zühlke 2012
  24. 24. • Future Android devices will probably have support for NFC• Easy handling for user and developer• Need to find workaround for missing card emulation mode
  25. 25. What is the best way to connect to yourdevices and accessories? Which UX do you desire? ? What about security? How does the device’s environment look like? Can you define the How much data will deployment targets? you produce?In Touch with Smart Devices | Masanori Fujita March 2012 Slide 29 © Zühlke 2012
  26. 26. TCP / UDPover WiFi and Mobile Network
  27. 27. Home Automation made easypowered by ELVELV pluggable sensors and actorsIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 31 © Zühlke 2012
  28. 28. Home Automation made easypowered by ELVELV pluggable sensors and actors UARTIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 32 © Zühlke 2012
  29. 29. Introducing Arduino• Open Source prototyping board• ATmega328 @ 16 MHz• 14 digital and 6 analog I/O pins• USB• UART• I2C• SPI• Many many shieldsIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 33 © Zühlke 2012
  30. 30. Home Automation made easypowered by ELV + Arduino + AndroidELV pluggable sensors and actors 3G Internet DSL WiFi UART EthernetIn Touch with Smart Devices | Masanori Fujita March 2012 Slide 34 © Zühlke 2012
  31. 31. Udp.begin(localPort); server.begin(); Serial.begin(9600); while(timeStatus() == timeNotSet) { unsigned long t = getNtpTime(); if (t > 0) { setTime(t); } } setSyncProvider(getNtpTime); setSyncInterval(60);}bool event_1_triggered = false;bool event_2_triggered = false;void loop(){ time_t t = now(); for(int i = 0; i < EVENT_COUNT; i = i + 1) { // check whether On-Event was not fired and On-Time has beenreached if (!triggered_events[i*2] && hour(t) == time_table[i*FIELDS] &&minute(t) == time_table[i*FIELDS+1]) { fs20.send_cmd(time_table[i*FIELDS+4], CMD_ON, 0xFF); triggered_events[i*2] = true; triggered_events[i*2+1] = false; } // check whether Off-Event was not fired and Off-Time has beenreached if (!triggered_events[i*2+1] && hour(t) == time_table[i*FIELDS+2]&& minute(t) == time_table[i*FIELDS+3]) { fs20.send_cmd(time_table[i*FIELDS+4], CMD_OFF, 0xFF); triggered_events[i*2] = false; triggered_events[i*2+1] = true; } } // wait for a new client: Client client = server.available(); // when the client sends the first byte, say hello: if (client) { if (client.connected() && client.available()) { // read the bytes incoming from the client: char c1 = client.read(); char c2 = client.read(); char c3 = client.read(); fs20.send_cmd(c1, c2, c3); } }
  32. 32. SMA Solar Inverter Bluetooth
  33. 33. Stiebel-Eltron Heating System RS232
  34. 34. Internet ofThings
  35. 35. Build upon small and open components
  36. 36.  Thermometer Accelerometer External Sensors WiFi  Twitter  Email  Text Messaging
  37. 37. We can make it happen. Today.
  38. 38. Masanori Fujitamfu@zuehlke.com@matterlobby
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×