Estimote Beacons - world most popular iBeacon implementation

59
EFFECTIVE DASHBOARD DESIGN why your baby is ugly

description

Presentation about Estimote Beacons - world most popular iBeacon implementation prepared for CocoaHeads Tricity

Transcript of Estimote Beacons - world most popular iBeacon implementation

Page 1: Estimote Beacons - world most popular iBeacon implementation

Estimote Beacons World most popular iBeacon implementation Mateusz Klimczak

Page 2: Estimote Beacons - world most popular iBeacon implementation

Agenda �  iBeacons � Bluetooth Low Energy � Estimote Beacons � Potential uses � Potential problems � Alternatives to Estimote � Development – get started

Page 3: Estimote Beacons - world most popular iBeacon implementation

What is iBeacon? � Apple Trademark for an indoor

positioning system � Extends Location Services in iOS � Your device alert apps when you approach

or leave a location with an iBeacon � Designed for building location/context-

aware applications

Page 4: Estimote Beacons - world most popular iBeacon implementation

What iBeacon is not? �  iBeacon is not a device nor is it a software

application �  iBeacon is nothing more than a set of

services (APIs) that operate between operating system (OS) and apps

Page 5: Estimote Beacons - world most popular iBeacon implementation

iBeacons characteristics � Almost all of the logic for iBeacon is done

by the supporting application on the device

� The only role of the iBeacon is to advertise to the phones of its own existence at the physical location

�  iBeacon do not actively push out notifications nor track nearby users - the application on the phone must handle that logic

Page 6: Estimote Beacons - world most popular iBeacon implementation

iBeacon compability � Compatible with Bluetooth Low Energy

(BLE) devices: �  iOS7: iPhone 4S+, iPad 3+, iPad Mini 1+,

iPod Touch 5+ �  Android 4.3+ �  Mac computers with OS X Mavericks (10.9)

Page 7: Estimote Beacons - world most popular iBeacon implementation

iOS 7.1 boost � The biggest improvement is the ability of

the operating system to detect iBeacons even when an iBeacon-compatible app is shut down

� Earlier it was possible only when application was working in background

� The functionality persist even when the device is rebooted

Page 8: Estimote Beacons - world most popular iBeacon implementation

Bluethooth low energy � Bluetooth 4.0 – nothing like his older brother � Compared to „Classic” Bluetooth, BLE is

intended to provide considerably reduced power consumption while maintaining a similar communication range

� Originally introduced under the name Wibree by Nokia in 2006. It was merge into the main Bluetooth standard in 2010

� AKA Bluetooth Smart

Page 9: Estimote Beacons - world most popular iBeacon implementation

iBeacon (BLE) vs NFC

iBeacon (BLE) NFC

Range Up to 100 m (Estimote handles up to 70 m)

Up to 20 cm (optimal range is < 4cm)

Price $5 - $35 per beacon $0.10 - $0.60 per tag

Passive mode No Yes

Apple support Yes No

Page 10: Estimote Beacons - world most popular iBeacon implementation

iBeacon (BLE) vs NFC

Page 11: Estimote Beacons - world most popular iBeacon implementation

iBeacon (BLE) vs NFC � While BLE and NFC are both wireless

communication technologies, each is designed to serve different need and functions

� But since Apple is not supporting NFC (and probably will never do) iBeacons may be the only way to implement mobile payments…

Page 12: Estimote Beacons - world most popular iBeacon implementation

Estimote Beacon � Small, wireless device which broadcast

tiny radio signals to smart devices � Smartphones that are in range are able to

'hear' these signals and estimate their location, as well as to communicate with the beacon

� Developed by Polish startup from Cracow � More than 20k developers worldwide

Page 13: Estimote Beacons - world most popular iBeacon implementation

Estimote construction � Built-in:

�  2.4 GHz Bluetooth Low Energy radio �  Thermometer �  Accelerometer

� Sticky back side (Gecko) � Silicon cover � Lithium battery

Page 14: Estimote Beacons - world most popular iBeacon implementation

Potential uses � Micromarketing � Payments � Sport � Transport � Loyalty programs � Virtual guides � And many others – it is limited only by our

imagination

Page 15: Estimote Beacons - world most popular iBeacon implementation

Potential uses by Estimote

Page 16: Estimote Beacons - world most popular iBeacon implementation

Another potential use

Page 17: Estimote Beacons - world most popular iBeacon implementation

Everytap � Loyalty program invented by PituPitu � Earn points for buying products in

restaurants, clubs, pubs, etc. � Spend these points to get free ones! � All you need to do after transaction ist o put

your phone next to barman's Estimote Beacon (NFC like)

Page 18: Estimote Beacons - world most popular iBeacon implementation

Potential problems � Risk of spamming users � Security threads (more about it later) � Bluetooth must be turned on � Mobile app required � Distance estimation is poor � From iOS7.1 occurs a problem - sometimes

iBeacons just stop being visible until we restart the device – so we are very platform dependent

Page 19: Estimote Beacons - world most popular iBeacon implementation

Security problems � Unprotected read/write! � Everything that our Beacon broadcast

can be read by anyone and anyone can write to our Beacon!

� This makes it barely usable in production � Estimote announced that they will

implement security measures in the beginning of January… few weeks ago they released SDK 2.0 and there is still nothing

Page 20: Estimote Beacons - world most popular iBeacon implementation

Alternatives � Kontakt.io

�  Also from Cracow

� Boni � Roximity iBeacon � And many more � Various development states

Page 21: Estimote Beacons - world most popular iBeacon implementation

Why is Estimote most popular?

� Contacts � One of first companies to produce

beacons � Attractive appearance, marketing, etc.

Page 22: Estimote Beacons - world most popular iBeacon implementation

Developer kit � 99$ for 3 beacons

Page 23: Estimote Beacons - world most popular iBeacon implementation

Development – configuration 1.  Get SDK – using CocoaPods!

�  Dependency manager for objective-c �  How to use:

https://github.com/CocoaPods/CocoaPods �  Searching for Pods:

http://cocoapods.org/

Page 24: Estimote Beacons - world most popular iBeacon implementation

Development – configuration 2.  Add required frameworks to your project

�  CoreBluetooth.framework �  CoreLocation.framework �  SystemConfiguration.framework

Page 25: Estimote Beacons - world most popular iBeacon implementation

Development – configuration 3.  Add Background Modes in your project

Capabilities: �  Uses Bluetooth LE accessories �  Acts as a Bluetooth LE accessory �  Background fetch �  Remote notifications

Page 26: Estimote Beacons - world most popular iBeacon implementation

Development – lets code! �  Implement ESTBeaconManagerDelegate � Add ESTBeaconManager � Add ESTBeaconRegion

Page 27: Estimote Beacons - world most popular iBeacon implementation

Development – lets code! �  Initialize beacon manager �  Initialize beacon region � Start ranging beacons in region

Page 28: Estimote Beacons - world most popular iBeacon implementation

Development – lets code! �  Implement beaconManager

didRangeBeacons inRegion method � Handle your beacons!

Page 29: Estimote Beacons - world most popular iBeacon implementation

Development – lets code! � Do not forget to stop looking for beacons

when you no longer need them

Page 30: Estimote Beacons - world most popular iBeacon implementation

The end � Thank you for your attention! � Any questions?