SlideShare a Scribd company logo
BLE + Beacon
@OhJia
How BLE communication works?
Peripheral Devices
● act like servers
Central Devices
● act like clients
Publish & Subscribe
● Peripheral publish
● Central subscribe, by reading or letting
peripheral notify when changes happen
BLE: Advertise and Connect
Advertising is one way: peripheral -> central
Packets can be up to 47 bytes
advertising communication
channels the access address
is always 0x8E89BED6
BLE: Advertise and Connect
After peripheral is discovered,
connection can be established
Central can then read or
write to peripheral
(GATT)
get temp/
humidity
readings
temp: x
humidity: y
set desired temp
temp: x
Beacons only advertise
Transmit packets of data in regular intervals, that gets
picked up by devices like smartphones
Data coming from an Estimote beacon:
You can capture such data with PacketLogger
(Download in Xcode/more developer tools
iBeacon advertisement format is
fixed by Apple
Data coming from an
Estimote beacon:
beacons in a chain of stores:
same UUID
beacons in one of the stores:
same Major #
in one store, every beacon has a
different Minor #
TX power is strength of signal used to
estimate distance
Beacon? iBeacon??
Every iBeacon is a Beacon.
iBeacon is built into iOS 7 that let devices
constantly scan for nearby bluetooth devices.
When iBeacon identifies a beacon, it can wake
up an app even if app is closed.
For this to work:
● bluetooth need to be on
● app using iBeacon needs to
be downloaded
● need to accept location
services in the app
Working with iBeacon
Building apps that are responsive to iBeacon:
Use Apple’s Core Location API
iBeacon scanning apps:
iOS: iB Locator
Android: iBeacon Scanner
These can be turned into iBeacon
iPhone 4S+, Android 5.0, Bluetooth 4 laptops, Raspberry Pi
Beacon uses outside of marketing
LA parking signs
Cuseum
Beacon uses outside of marketing
Beacons in SpaceWayfindr
Thank you!
References:
How do iBeacons work
Tom’s BLE docs from the BLE workshop
iOS Developer Library Core Bluetooth Programming
Guide
@OhJia

More Related Content

Similar to BLE+Beacon: Hows and Whats

Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]
Ivan Marković
 
Resume_Pratik
Resume_PratikResume_Pratik
Resume_Pratik
Pratik Panchal
 
Project report
Project reportProject report
Project report
rahul poteti
 
Mini Project- USB Temperature Logging
Mini Project- USB Temperature LoggingMini Project- USB Temperature Logging
9001 qb0904 prolog lite (web version)
9001 qb0904 prolog lite (web version)9001 qb0904 prolog lite (web version)
9001 qb0904 prolog lite (web version)
Carol Lang
 
Prolog Lite Temperature Monitoring System
Prolog Lite Temperature Monitoring SystemProlog Lite Temperature Monitoring System
Prolog Lite Temperature Monitoring System
Carol Lang
 
Temperature Monitoring System with 4 Sensors
Temperature Monitoring System with 4 SensorsTemperature Monitoring System with 4 Sensors
Temperature Monitoring System with 4 Sensors
vackerdxb
 
Dareadme
DareadmeDareadme
Dareadme
Vishwa Mohan
 
Introduction to beacon
Introduction to beaconIntroduction to beacon
Introduction to beacon
Upasana Chauhan
 
Select-Info Packet Power presentation
Select-Info Packet Power presentationSelect-Info Packet Power presentation
Select-Info Packet Power presentation
Kamel Abou-Faraj
 
H63ECH_1B_023799_OsamaAzim
H63ECH_1B_023799_OsamaAzimH63ECH_1B_023799_OsamaAzim
H63ECH_1B_023799_OsamaAzim
Osama Azim
 
Resume
ResumeResume
Resume
Anil Kumar
 
Xctumanual a
Xctumanual aXctumanual a
Xctumanual a
Barmir Mir
 
Bluetooth quick start_guide / Controlanything India
Bluetooth quick start_guide / Controlanything IndiaBluetooth quick start_guide / Controlanything India
Bluetooth quick start_guide / Controlanything India
Dcube Tech Ventures
 
Smart parking system using IOT
Smart parking system using IOTSmart parking system using IOT
Smart parking system using IOT
Udit Deo
 
Bill redirect manual
Bill redirect manualBill redirect manual
Bill redirect manual
topomax
 
Project
ProjectProject
Project
ATUL KUJUR
 
Huetouch Partner Proposal 2009
Huetouch Partner Proposal 2009Huetouch Partner Proposal 2009
Huetouch Partner Proposal 2009
cookielady
 
Xctu manual
Xctu manualXctu manual
Xctu manual
Hasta' CLat
 
Prestigio_Smart_Home_Presentation_Q2_2015 - PR
Prestigio_Smart_Home_Presentation_Q2_2015 - PRPrestigio_Smart_Home_Presentation_Q2_2015 - PR
Prestigio_Smart_Home_Presentation_Q2_2015 - PR
Roman Harhalis
 

Similar to BLE+Beacon: Hows and Whats (20)

Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]
 
Resume_Pratik
Resume_PratikResume_Pratik
Resume_Pratik
 
Project report
Project reportProject report
Project report
 
Mini Project- USB Temperature Logging
Mini Project- USB Temperature LoggingMini Project- USB Temperature Logging
Mini Project- USB Temperature Logging
 
9001 qb0904 prolog lite (web version)
9001 qb0904 prolog lite (web version)9001 qb0904 prolog lite (web version)
9001 qb0904 prolog lite (web version)
 
Prolog Lite Temperature Monitoring System
Prolog Lite Temperature Monitoring SystemProlog Lite Temperature Monitoring System
Prolog Lite Temperature Monitoring System
 
Temperature Monitoring System with 4 Sensors
Temperature Monitoring System with 4 SensorsTemperature Monitoring System with 4 Sensors
Temperature Monitoring System with 4 Sensors
 
Dareadme
DareadmeDareadme
Dareadme
 
Introduction to beacon
Introduction to beaconIntroduction to beacon
Introduction to beacon
 
Select-Info Packet Power presentation
Select-Info Packet Power presentationSelect-Info Packet Power presentation
Select-Info Packet Power presentation
 
H63ECH_1B_023799_OsamaAzim
H63ECH_1B_023799_OsamaAzimH63ECH_1B_023799_OsamaAzim
H63ECH_1B_023799_OsamaAzim
 
Resume
ResumeResume
Resume
 
Xctumanual a
Xctumanual aXctumanual a
Xctumanual a
 
Bluetooth quick start_guide / Controlanything India
Bluetooth quick start_guide / Controlanything IndiaBluetooth quick start_guide / Controlanything India
Bluetooth quick start_guide / Controlanything India
 
Smart parking system using IOT
Smart parking system using IOTSmart parking system using IOT
Smart parking system using IOT
 
Bill redirect manual
Bill redirect manualBill redirect manual
Bill redirect manual
 
Project
ProjectProject
Project
 
Huetouch Partner Proposal 2009
Huetouch Partner Proposal 2009Huetouch Partner Proposal 2009
Huetouch Partner Proposal 2009
 
Xctu manual
Xctu manualXctu manual
Xctu manual
 
Prestigio_Smart_Home_Presentation_Q2_2015 - PR
Prestigio_Smart_Home_Presentation_Q2_2015 - PRPrestigio_Smart_Home_Presentation_Q2_2015 - PR
Prestigio_Smart_Home_Presentation_Q2_2015 - PR
 

Recently uploaded

How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 

Recently uploaded (20)

How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 

BLE+Beacon: Hows and Whats

  • 2. How BLE communication works? Peripheral Devices ● act like servers Central Devices ● act like clients Publish & Subscribe ● Peripheral publish ● Central subscribe, by reading or letting peripheral notify when changes happen
  • 3. BLE: Advertise and Connect Advertising is one way: peripheral -> central Packets can be up to 47 bytes advertising communication channels the access address is always 0x8E89BED6
  • 4. BLE: Advertise and Connect After peripheral is discovered, connection can be established Central can then read or write to peripheral (GATT) get temp/ humidity readings temp: x humidity: y set desired temp temp: x
  • 5. Beacons only advertise Transmit packets of data in regular intervals, that gets picked up by devices like smartphones Data coming from an Estimote beacon: You can capture such data with PacketLogger (Download in Xcode/more developer tools
  • 6. iBeacon advertisement format is fixed by Apple Data coming from an Estimote beacon: beacons in a chain of stores: same UUID beacons in one of the stores: same Major # in one store, every beacon has a different Minor # TX power is strength of signal used to estimate distance
  • 7. Beacon? iBeacon?? Every iBeacon is a Beacon. iBeacon is built into iOS 7 that let devices constantly scan for nearby bluetooth devices. When iBeacon identifies a beacon, it can wake up an app even if app is closed. For this to work: ● bluetooth need to be on ● app using iBeacon needs to be downloaded ● need to accept location services in the app
  • 8. Working with iBeacon Building apps that are responsive to iBeacon: Use Apple’s Core Location API iBeacon scanning apps: iOS: iB Locator Android: iBeacon Scanner These can be turned into iBeacon iPhone 4S+, Android 5.0, Bluetooth 4 laptops, Raspberry Pi
  • 9. Beacon uses outside of marketing LA parking signs Cuseum
  • 10. Beacon uses outside of marketing Beacons in SpaceWayfindr
  • 11. Thank you! References: How do iBeacons work Tom’s BLE docs from the BLE workshop iOS Developer Library Core Bluetooth Programming Guide @OhJia

Editor's Notes

  1. peripheral: provide data from sensors as readable and provide read/writable chars to control motors, lights, etc (like a server) central: read and write data from peripherals (like a client) multiple centrals can read from same peripheral
  2. For advertisement communication channels, the access address is always 0x8E89BED6. For data channels, it is different for each connection. The PDU in turn has its own header (2 bytes: size of the payload and its type – whether the device supports connections, etc.) and the actual payload (up to 37 bytes). Finally, the first 6 bytes of the payload are the MAC address of the device, and the actual information can have up to 31 bytes
  3. GATT is an acronym for the Generic Attribute Profile, and it defines the way that two Bluetooth Low Energy devices transfer data back and forth using concepts called Servicesand Characteristics. It makes use of a generic data protocol called the Attribute Protocol (ATT), which is used to store Services, Characteristics and related data in a simple lookup table using 16-bit IDs for each entry in the table. GATT comes into play once a dedicated connection is established between two devices, meaning that you have already gone through the advertising process governed by GAP.
  4. For advertisement communication channels, the access address is always 0x8E89BED6. For data channels, it is different for each connection. The PDU in turn has its own header (2 bytes: size of the payload and its type – whether the device supports connections, etc.) and the actual payload (up to 37 bytes). Finally, the first 6 bytes of the payload are the MAC address of the device, and the actual information can have up to 31 bytes
  5. iBeacon prefix - proximity UUID: beacons in a chain of store -> same UUID - major number: group related set -> beacons in one store -> same major number - minor number: individual beacons - > where customer is in the store - TX power: strength of signal measured at 1 meter from the device, strength of signal decreases as get further, iOS calculate the distance obstacles such as furniture, people or communication congestion can weaken the signal. distance is estimate
  6. every iBeacon is Beacon, not every Beacon is iBeacon anyone can build Beacon device, need Apple certify to build iBeacon device any platform that support BLE can use Beacon and iBeacon purpose: Apple control end user experience of beacon-enabled apps on iOS and to market beacon tech as something Apple developed iBeacon is built into iOS 7 that let devices constantly scan for nearby bluetooth devices. When iBeacon identifies a beacon, can wake up app even if app is closed. iPhones and iPads can be beacons to wake up apps in other iPhones. iBeacons receive notification from downloaded apps and when bluetooth is turned on, also need to accept location services