Android Wear and the Future of Smartwatch
-
Upload
koan-sin-tan -
Category
Engineering
-
view
1.145 -
download
20
Embed Size (px)
description
Transcript of Android Wear and the Future of Smartwatch

Android Wear and the Future of Smartwatch
koan-sin tan [email protected]
COSCUP, July 19, 2014, Taipei

who am i
• a open source user, learnt to use Unix on VAX 11/780 running 4.3BSD
• did several weird works: recently example, figuring out how iPhone 5s DVFS and thermal management work
• involved a bit in Android stuff at the company I am working for

Outline
• Introduction to Android Wear
• What know about smartwatch/bands and other things such as iOS HealthKit
• What can we anticipate in near feature

Android Wear• Android’s extension for wearable computing, currently,
specifically for smart watches
• possible merge with Google Glass
• possible unified notifications with other Android new extensions (TV and Auto)
• Android Wear Developer Preview in March, 2014
• Formally introduced in the keynote of Google I/O 2014
• a session named “Android Wear: The developer's perspective” in Google I/O 2014

http://developer.android.com/wear/index.html

http://developer.android.com/wear/index.html

Current Android Wear• Current SDK after Google I/O
• voice enabled, wearable apps, data exchanging and synchronization
• It’s kinda disappointed
• peripheral/auxiliary to your Android phone
• there are some inspiring bands/smartwatches already
• NO HealthKit like framework available (yet), Google Fit is not there (yet)
• to me, a guy watched Science Ninja Team Gatchaman (科學⼩小飛俠/科學忍者隊), that’s kinda lack of imagination
• Hopefully, future Android Wear releases will be much better

Current Android Wear watches

Ars Technica’s reviewhttp://arstechnica.com/gadgets/2014/06/reviewing-android-wears-first-watches-sometimes-promising-often-frustrating/

Some bands and smart watch
• Bands: Nike+ FuelBand, Jawbone UP24, and FitBit Force
• Smartwatches: Pebble Steel, Omate TrueSmart, Casio Sports Gear STB-1000, Meta Watch

“Bird go” (バード‧ゴー, ⽕火⿃鳥功)Gesture and voice command could enable transform/
change

–Alan C. Kay
“The best way to predict the future is to invent it”
http://en.wikipedia.org/wiki/Alan_Kay

digital watch and sci-fi• 2001: A Space Odyssey
• Arthur C. Clarke, Stanley Kubrick
• inspirations of many AI and other researches
• “In 1970, the first digital wristwatch with an LED display was mass-produced. Called the Pulsar, and produced by the Hamilton Watch Company, this watch was hinted at two years prior when the same company created a prototype digital watch for Kubrick's 2001: A Space Odyssey.” http://en.wikipedia.org/wiki/Digital_clock

Isaac Asimov’s world fair article
• there is a world fair in 1964 (50 years ago)
• Isaac Asimov wrote an article for the New York Times. He predicted what the world world be now in 50 years

• If you interested in knowing more about sci-fi and computer/computer scientist, this book is a good starting point
• “Out of Their Minds”, http://cs.nyu.edu/shasha/outofmind.html, http://www.amazon.com/Out-their-Minds-Discoveries-Scientists/dp/0387982698


How to read this Doraemon watch

a time stopper
• Do you call this a watch?

http://www.taipeitimes.com/News/taiwan/archives/2014/07/16/2003595241

Samsung Simband• Simband sensors
• PPG: photo sensing
• green and red light at difference wavelength
• pulse, blood concentration: e.g., blood oxygen levels
• bio-impedance
• heart rate, blood flow, respiration,
• Galvanic Skin Response (GSR)
• body temperature
• ECG
• two parts and a loop
• measure the rate and regularity of a wear’s heart beats
• PPG+ECG: blood pressure
• And more common ones, e.g., gyroscope
http://www.samsung.com/us/globalinnovation/innovation_areas/#digital-health http://www.pcmag.com/article2/0,2817,2458663,00.asp

iOS 8 HearthKit• no complete public documentation is available yet
• What available are WWDC slide decks
• Introduction to Health Kit
• Accessories
• accessories with built-in HealthKit support
• Heart rate monitor, glucose sensor, blood pressure monitor, health thermometer


Health Kit: a framework• A framework to enable sharing between health & apps
• what are health and fitness apps?
• Statistical Analysis (Graphs, Trends)
• Enter Information
• Application from Health Providers
• what does HealthKit to
• creating data
• saving data
• querying/retrieving data

• Unit conversion
• HKUnit and HKQuantity
• Data: HKObjectType & HKObject
• Saving & Query:
• HKStoreStore, HKQuery

HKObjectType
Body Mass
BMI
Calories
Potassium
Perfusion Index
StepsDistance
Heart Rate
Blood Pressure
Blood GlucoseVitamin A
Vitamin B6
Vitamin B12
Vitamin C
Vitamin D
BACRespiratory Rate
Body Fat PercentageHeight
RR Interval
Nike Fuel
Oxygen Saturation Body Temperature

HKObjectTypeHKObject
HKObjectType
HKSampleType
HKQuantityType HKCategoryType
HKCharacteristicType
HKObject
HKSample
HKQuantitySample HKCategorySample

HKQuantityType identifiers
• Fitness
• Blood
• Nutrition
• Miscellaneous

// Fitness!HK_EXTERN NSString * const HKQuantityTypeIdentifierBodyMassIndex; // Scalar(Count), Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBodyFatPercentage; // Scalar(Percent, 0.0 - 1.0), Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierHeight; // Length, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBodyMass; // Mass, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierLeanBodyMass; // Mass, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierHeartRate; // Scalar(Count)/Time, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierRRInterval; // Time, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierStepCount; // Scalar(Count), Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDistance; // Length, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierBasalEnergyBurned; // Energy, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierActiveEnergyBurned; // Energy, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierActivityCount; // Scalar(Count), Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierFlightsClimbed; // Scalar(Count), Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierNikeFuel; // Scalar(Count), Cumulative!!// Blood!HK_EXTERN NSString * const HKQuantityTypeIdentifierOxygenSaturation; // Scalar, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBloodGlucose; // Mass/Volume, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBloodPressureSystolic; // Pressure, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBloodPressureDiastolic; // Pressure, Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierBloodAlcoholContent; // Scalar(Percent, 0.0 - 1.0), Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierPeripheralPerfusionIndex; // Scalar(Percent, 0.0 - 1.0), Discrete!HK_EXTERN NSString * const HKQuantityTypeIdentifierPerfusionIndex NS_DEPRECATED_IOS(8_0, 8_0, "Use HKQuantityTypeIdentifierPeripheralPerfusionIndex instead"); // Scalar(Percent, 0.0 - 1.0), Discrete!!// Nutrition!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryFatTotal; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryFatPolyunsaturated; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryFatMonounsaturated; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryFatSaturated; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryCholesterol; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietarySodium; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryCarbohydrates; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryFiber; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietarySugar; // Mass, Cumulative!HK_EXTERN NSString * const HKQuantityTypeIdentifierDietaryEnergyConsumed; // Energy, Cumulative!

What are done automatically • Get information from built-in sensors
• Pedometer (step counter) data -> distance
• activity recognition
• connecting with some BLE devices
• Heart rate monitor
• glucose sensor
• blood pressure monitor
• health thermometer


Connecting wearable with Android/iOS devices
• Android Wear
• Android 4.3/Google Play Services/Bluetooth, for now
• HealthKit
• not limited
• built-in Bluetooth Low Energy (BLE) support for certain devices
• BLE+GATT
• ExternalAccessory framework, CoreBluetooth, USB, and Wi-Fi can be used if appropriate

we are often limited by
current form factors
Cover of Byte Apr, 1981 issue

Wearable• should not be limited to watches and glasses
• in the Science Ninja Team Gatchaman, e.g., special clothes
• in case you don’t know, clothes (hey, that’s wearable) are also a topic with long history and extensive literature
• you know more and more hardware is getting more intelligent because of software

–Douglas Adams
"so amazingly primitive that they still think digital watches are a pretty neat idea.”

backup slide

Q&A of the Google I/O Android Wear talk
• Or say, why some people are excited enough
• Google Play Services: 4.3 or later
• 30 seconds timeout on home screen
• gyroscope or other sensors on wearable, collect on the wearable and send to your phone
• switch between app: use voice
• your voice commands see documentation
• voice time series, record memo. CODEC problem. stream the bytes to the phones.
• directly connect to internet? NO full http stack on the wearable (yet)
• no speaker on the two devices
• voice commands are not the same with Google Glass's
• AOSP, open source part? AOSP --> AOSP, Google Play Service <--- proprietary