從App developer角度來介紹BLE

2,558 views
2,344 views

Published on

在物聯網跟穿戴式裝置正夯的時代,身為App Developer不能不了解的BLE

Published in: Technology
0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,558
On SlideShare
0
From Embeds
0
Number of Embeds
909
Actions
Shares
0
Downloads
46
Comments
0
Likes
8
Embeds 0
No embeds

No notes for slide

從App developer角度來介紹BLE

  1. 1. 在穿戴式裝置與物聯網正夯的時代 身為App Developer你不能不了解的BLE Sam Lee (misgod.tw@gmail.com)
  2. 2. lInternet
  3. 3. lBLE (Bluetooth Low Energy) lBluetooth Smart lBluetooth 4.0 (June 2010) lBluetooth 4.1 (Dec 2013) l低成本 (?) l範圍: ~ 100m l省電: 鈕扣電池可以撐1年以上 l速度: 理論上限(1Mbit/s), App (270Kbit/s)
  4. 4. Overview lBroadcast & connection lShort packets lClient/Server 架構 lEverything has STATE l非同步傳送資料
  5. 5. Device Classic Bluetooth BLE support Pre-4.0 Bluetooth Yes No 4.x Single-Mode No Yes 4.x Dual-Mode Yes Yes
  6. 6. 廣播
  7. 7. 連線
  8. 8. 如何省電
  9. 9. Protocol ?? Profile ?? lGATT Based Profiles
  10. 10. l2.4G Hz l40 channels l3 advertising channel lFixed rate: 1 Mbit/s l高斯頻移鍵控(GFSK) lFrequency Hopping (AFH)
  11. 11. lBluetooth Device Address l48-bit (Public/Random) l4 roles lAdvertiser & Scanner lMaster & Slave l1 format 2 types packets lAdvertising & Data lConnection (7.5ms~4s) l 27bytes, but ~20 bytes lAdvertising (20ms ~ 10.24s) l31 bytes data payload lActive/Passive scanning
  12. 12. l搭起友誼的橋樑
  13. 13. l協定多工器 l封包重組與分配 lData payload: 23 bytes lSimilar to TCP
  14. 14. lInitiator → Responder lCentral → Peripheral (GAP) lSecurity Procedures lPairing lBonding lEncryption Re-establishment lPairing Algorithms lJust Works lPasskey Display lOut Of Band
  15. 15. lClient->Server lRequest → Response lStrict Sequencing lServer Initiated lIndication/Confirmation lNotfiication l Handle lType l(UUID) lAttribute Value l Permissio ns l2B 2/4/16B l0~512B
  16. 16. lControl layer lRoles lBroascaster & Observer lCentral & Peripheral lGAP Service(GATT) lDevice name lApprearance lPPCP
  17. 17. lData Layer lRoles lClient & Server lBluetoothBaseUUID lxxxxxxxx-0000-1000-8000- 00805F9B34FB lShortened UUID(16 or 32 bit)
  18. 18. lFirst Release lJellyBean MR 4.3 (API 18) lPeripheral Mode lAndroid L (Coming Soon)
  19. 19. http://developer.android.com/guide/topics/connectivity/bluetooth-
  20. 20. 搭配: TI SensorTag CC2541 l 兩顆按鈕 l 陀螺儀 l 加速計 l 溫濕感測 l 氣壓計 l 磁力計 l IR溫度感測器
  21. 21. Coding Steps 1. Use BLE Permissions 2. Setup BLE 3. Scan LE device 4. Connect to GATT Server 5. Discovery Services 6. Read Data l Read Characteristic(Attrubutes) l Receiving notification
  22. 22. 簡易型簡報器
  23. 23. 實際的應用案例
  24. 24. http://shopping.pchome.com.tw/prod/CBAFJ0-
  25. 25. http://24h.pchome.com.tw/prod/DGBT4W-
  26. 26. Oral-B
  27. 27. August Smart Lock http://www.august.com/
  28. 28. iBeacon
  29. 29. Zuli https://www.kickstarter.com/projects/zuli/zuli-smartplugs
  30. 30. https://www.youtube.com/watch?v=g8h_i8qv1FY
  31. 31. Mimo Kimono http://mimobaby.com/

×