The document discusses beacon technology and potential uses. It begins by providing background on beacon APIs and how retailers began using beacons. It then discusses technical details of beacons, including UUIDs, majors, and minors. Several potential uses are outlined, such as guiding blind users, tracking foot traffic, and connecting teachers to student groups. The document concludes by encouraging the use of beacons to solve real problems and lists examples like making spaces more inclusive.
11. User Journey Analysis
Before - Walk in - ‘Nice bag!’ - buy it - pub.
!
After - Walk in - vibrate - get phone out of tight
pocket - unlock phone - go to app - agree to the terms -
read the guff - swipe a bit - find price - reject spam …
17. UUID etc
UUID = The group the beacon belongs to (Design Museum,
Tate Modern, Simon’s Pub, etc)
e.g. E2C56DB5-DFFB-48D2-B060-D0F5A71096E0
!
Major = The sub group the beacon belongs to (Gallery A,
Building 2, etc)
e.g. 33995
!
Minor = The specific beacon (Object 1, Painting B, etc)
e.g. 59204
18. Combine all that together and you get this
!
d6 be 89 8e 40 24 05 a2 17 6e 3d 71 02 01 1a 1a ff 4c 00 02
15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00
00 c5 52 ab 8d 38 a5
20. Hack some beacons and the API to let you
triangulate your position in 3 dimensions and
measure the gap between them instead of just
knowing which distance bracket you were in?
21. - (CGPoint)getTrilatterationCoordinateWithBeaconOne:(CGPoint)one beaconTwo:(CGPoint)two beaconThree:(CGPoint)three distanceOne:(CGFloat)dOne distanceTwo:(CGFloat)dTwo distanceThree:(CGFloat)dThree {
CGFloat W, Z, x, y, y2;
W = beaconOne*distanceOne - distanceTwo*distanceTwo - beaconOne.x*beaconOne.x - beaconOne.y*beaconOne.y + beaconTwo.x*beaconTwo.x + beaconTwo.y*beaconTwo.y;
Z = distanceTwo*distanceTwo - distanceThree*distanceThree - beaconTwo.x*distanceTwo.x - distanceTwo.y*distanceTwo.y + beaconThree.x*beaconThree.x + beaconThree.y*beaconThree.y;
! x = (W*(beaconThree.y-beaconTwo.y) - Z*(beaconTwo.y-beaconOne.y)) / (2 * ((beaconTwo.x-beaconOne.x)*(beaconThree.y-beaconTwo.y) - (beaconThree.x-beaconTwo.x)*(beaconTwo.y-beaconOne.y)));
y = (W - 2*x*(beaconTwo.x-beaconOne.x)) / (2*(beaconTwo.y-beaconOne.y));
y2 = (Z - 2*x*(beaconThree.x-beaconTwo.x)) / (2*(beaconThree.y-beaconTwo.y));
! y = (y + y2) / 2;
return CGPointMake(x, y);
}
22.
23. Can you turn every bluetooth
device - every phone and tablet
and laptop - into a beacon if it’s
not Apple hardware?
24.
25. Can you reprogram a commercial
flight controller to hunt for a
beacon signals and therefore build
an autonomous flying drone?
26.
27.
28. Can you write a
technology demo in 2
weeks for a MeetUp?
42. Build an audio guide for blind people
which describes where they are,
what is around them, and directs
them safely to where they are going.
43. Track the flow of people through your spaces in real time
and push this data to Google Analytics. Identify popular
exhibitions and objects or areas of obstruction.
!
Talk to people in specific areas in real time with
notifications.
44. Connect teachers to school groups.
!
Child leaves the building
=
your phone tells you.
45. Pre-plan a learning tour and let the
device guide the group, offer up
appropriate content, and mark off
each area completed.