Hands-on

Bluetooth Low Energy

O'Reilly Solid - June 23, 2015

Alasdair Allan @aallan

Don Coleman @doncoleman

Sandeep Mistry @sandeepmistry

Lightbulb Service

  • Light Switch
  • Dimmer Setting

Lightbulb Service - FF10

16 bit UUIDs

0000FF10-0000-1000-8000-00805F9B34FB

0000FF11-0000-1000-8000-00805F9B34FB

0000FF12-0000-1000-8000-00805F9B34FB

Lightbulb Service - FF10

Properties

Attributes

Permissions

Descriptors

Advertising

Advertising

  • 5425B44A-024A-4D39-88D2-D9F016199B29
  • Services: [ 0x180A, 0xFF10, 0XFF20, …]
  • Manufacturer Data: <00007465 6d70>
  • Connectable: True
  • TX Power Level: 4
  • RSSI: -80
  • Name: Smart Lightbulb

Scan and Discover Peripherals

Connect

Explore

  • Get a list of services
  •   For each service, get a list of characteristics
  •     For each characteristic, get properties
  •       Save handle to read or write later
  •       Subscribe to be notified on changes

Read Value

Write Value

Write Command

Heart Rate Service - 180d

org.bluetooth.service.heart_rate.xml
org.bluetooth.characteristic.heart_rate_measurement.xml

Notification

Indication

Peripheral

Provides services

Central

  • Discover advertising peripherals
  • Connect using MAC Address or UUID
  • Explore the services and characteristics
  • Read and write characteristics
  • Subscribe to be notified of changes

Arduino

http://arduino.cc

RedBearLab Blend

Arduino BLE Peripheral

https://github.com/sandeepmistry/arduino-BLEPeripheral

PhoneGap

http://phonegap.com

Bluetooth Low Energy

Cordova Plugin

https://github.com/don/cordova-plugin-ble-central

Thank You

Alasdair Allan @aallan

Don Coleman @doncoleman

Sandeep Mistry @sandeepmistry

http://don.github.io/slides/

 

 

Creative Commons License
Hands-on Bluetooth Low Energy by Don Coleman
is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Based on a work at https://github.com/don/.../2015-06-23-solidcon-hands-on-bluetoothle.