androidとiosのbleな事情 3
DESCRIPTION
iOSとAndoridのBLEとPheripheraとかCentralとかiBeaconあたりの話をつめこみました。Android 5.0 LollipopでのPeripheralサポートされた話まで対応。TRANSCRIPT
AndroidとiOSのBLEな事情 3
2014/01/28 created 2014/03/23 2014/12/23 updated
@youten_redo
Bluetooth Low Energyhttp://www.bluetooth.com/Pages/Bluetooth-Brand.aspx
Central and Peripheral
PP P
C
Scan
P
CC
Advertise
PAd
Ad
P
discovered!
CC
Ad
Ad
Ad
Connect
P
C
connected!
P
C
Service discover
P
CServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ProfileServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ProfileServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
Profile
Find Me Profile (FMP)
Profile
Immediate Alert Service
Alert Level Char. - Write without Response
Proximity Profile (PXP)
Immediate Alert Service
Alert Level Char. - Write without Response
Link Loss Service
Alert Level Char. - Read/Write
Tx Power Service
Tx Power Level Char. - Read
M M
O
O
M M
M
M
UUIDProfile
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ProfileServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
ServiceCharacte
ristic
Characteristic
Characteristic
Characteristic
UUID UUID UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID UUID UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
UUID
Characteristic - Broadcast, Read, Write without Response, Write, Notify, Indicate, Signed Write, Reliable Write, Writable Auxiliaries
P
C
Characteristic
Value Value
Read, Write, Notify
P
C
P
C
Characteristic
P
C
Characteristic
Value Value Value
Characteristic
Write without Response, Indicate
P
C
Characteristic
P
C
Value Value
Characteristic
ExampleTry
iOS 5 can be Central.
iPhone - StickNFind
P
C
StickNFind
P
LightBlue
Device Information Service
P
CDevice Information Service
Manufacturer Name Char. - Read
Model Number Char. - Read
Serial Number Char. - Read
Hardware Revision Char. - Read
Software Revision Char. - Read
Read - Manufacturer Name
P
CDevice Information Service
Manufacturer Name Char. - Read“StickNfind”
Immediate Alert Service
P
C
Immediate Alert Service
Alert Level Char. - Write without Response
※StickNFindは2014.04ごろのアップデートによりIAS等を標準UUIDで公開せず、独自UUIDでの動作となってしまいましたた
め、現状は試行できません。
Write - Alert Level
P
C
Immediate Alert Service
Alert Level Char. - Write without Response
0x03
LED Flash and Beep!
Android 4.3 can be Central.
Android - StickNFind
P
C
Read - Manufacturer Name
P
CDevice Information Service
Manufacturer Name Char. - Read“StickNfind”
Write - Alert Level
P
C
Immediate Alert Service
Alert Level Char. - Write without Response
0x03
LED Flash and Beep!
※StickNFindは2014.04ごろのアップデートによりIAS等を標準UUIDで公開せず、独自UUIDでの動作となってしまいましたた
め、現状は試行できません。
BLERW
Characteristic Read/Write Example for Android
https://github.com/youten/BLERW
for Android 4.3 or Later
Recommend Nexus 5 with Android 4.4 KitKat
iOS 6 can be Peripheral.
Android - iPhone
P
C
ImmPeri
Peripheral (as Immediate Alert Service Device) Example for iOS
https://github.com/youten/ImmPeri
for iOS 7
iBeacon
A particular format Advertisement.
PiBeacon Ad
iBeacon Ad
Include UUID and 2 number.
PiBeacon Ad
iBeacon Ad
fixed proximity UUID major minor Tx Power
Unique 128-bit value like “6E15D0C4-01F3-4507-84F4-D4BC26C363E0”
16-bit unsigned int
Can detect on both iOS and Android.
PiBeacon Ad
CC CCiBeacon! iBeacon!
iBeacon Ad
iBeacon Detector
scan BLE device and detect iBeacon App.
https://github.com/youten/iBeaconDetector
for Android 4.3 or later
Mavericks can be Central and Peripheral.
Mavericks is Strong!
PiBeacon Ad
CC CCiBeacon! iBeacon!
iBeacon Ad
XBeacon
OS X iBeacon App. running on Status Bar.
https://github.com/youten/XBeacon
for Mavericks Mac being available BLE.
But Yosemite can’t adv as iBeacon.
Android 5.0 Lollipop can be Peripheral.
Android - Android
P
C
But, Available only Nexus 6 and 9.
https://code.google.com/p/android-developer-preview/issues/detail?id=1570#c52
Status:WontFix
"Due to hardware chipset dependency, older Nexus devices (4/5/7) will not have access to the feature on Lollipop.”
aBeacon
(1) Peripheral that Advertise iBeacon compatible.
(2) Find Me Profile Peripheral, include Device Information Service and Immediate Alert Service.
https://github.com/youten/aBeacon
For Android 5.0 Lollipop, I’ve tried with Nexus 9.