SmartThings Community

How well do beacons work? (2018)

I’ve been wanting to use beacons for a while now a more fine tuned presence sensor for individual rooms or at least floors inside my home and exterior. However BeaconThings hasn’t been working for a while and not sure of how else to implement them. Additionally I don’t see all that many posts in the community about beacons and nothing recent so I’m wondering if there’s a reason for that. Hard to integrate? Do they not work very well? If anyone can shed some light on the subject it’d be appreciated.

Assuming you mean Ibeacons, I would say they work very well for the purpose for which they are designed. :sunglasses: I have used them in my house for about two years, as I have discussed in the forums. It’s quite easy to integrate them with SmartThings if you use a receiving station app which can generate an HTTP post ( webhook) as then you can use the IFTTT maker channel as the “if” and smartthings as the “that”. So a single Ibeacon is very good as an identifier for when a phone or tablet comes within a 360 degree range of that beacon.

But they aren’t going to work for Microlocation based on rooms or interiors very well unless you spend a lot more money and get a much more complex app. That’s because they are based on Bluetooth, which goes right through the walls (and the floor and the ceiling). There’s no concept of a “room” as a human defines it. The kitchen and a living room right next to it will be seen as the same-- and so will the bedroom one floor up.

They make good touchless switches if you set the range very small, like around foot. But I single I pbeacon just can’t identify a person walking into A room, because its detection zone is not stopped by the walls.

Estimote has an excellent microlocation system which is generally sold to stores and Sporting arenas, so that you could, for example, send someone one coupon if they are in the men’s department and a different coupon if they are in the shoes department next to it. But that requires at least three Ibeacons for each region, and just gets quite expensive for home automation.

Radius networks also has interesting devices and a good SDK especially if you want to write your own code. They also have the version which works better with android devices, although to be honest, they still work best with iOS.

https://www.radiusnetworks.com/

At my house, I use it to create a detection zone that just barely covers the wheelchair ramp at my front door, about 3 m long. That way when I enter the zone, my “I’m home” routines run, but if I’m still sitting on the bus halfway up the block waiting for the driver to unload me (I’m in a wheelchair), nothing happens. Which is exactly what I want. :sunglasses:

There are good discussions in the following thread. But as far as micro-location in multiple rooms, I would probably look for other technologies.

If you look in the community – created wiki on the progress lists in the project report section and choose the “presence” list you can see what some other people have done. Look for the topics tagged “microlocation.”

http://thingsthataresmart.wiki/index.php?title=How_to_Quick_Browse_the_Community-Created_SmartApps_Forum_Section#Quick_Browse_Links_for_Project_Reports.2FQuestions

Would these beacons work?

RadBeacon X4 - All-weather, Long-life Bluetooth Smart Proximity Multi-beacon Using iBeacon and AltBeacon Technology

As a side note, how do you insert the links in posts like others do and you did above?

There are three parts to any system based on I beacons.

One) there is a transmitter device, the IBeacon. All it does is transmit a tiny message over and over giving its device ID. Literally, that’s all it does. That’s why it is often compared to a lighthouse – – the lighthouse sends out its light whether there are ships in the area or not. It doesn’t know if the ships are there. It just keeps sending out the light.

The device that you linked to is an IBeacon, so it is going to transmit. Whether that’s going to be of any use to you will depend on the other two parts that you are using.

Two) there is a receiver device, typically a phone or tablet. It has an active Bluetooth radio that will receive the transmission from the IBeacon. But it’s just the receiver, on its own, it doesn’t do anything just because it received a message from the IBeacon.

Three) you need some kind of app that can recognize that the receiver device has received a transmission and then make a decision based on the ID of the message.

Most of the companies that make the transmitting Devices have their own apps that can do this.

Some have a full “SDK” ( software development kit) which is a set of programming tools for people who want to write their own receiving station app.

There are also some third-party receiving station apps that you can buy, although these are less common than they were two years ago because now many people write their own apps.

One way to integrate an Ibeacon with SmartThings is to use a receiving station app that can send a webhook (http post) based on the specific transmitter ID that it receives. You then set it up to send that webhook to the IFTTT maker channel. That allows you to use the IFTTT maker channel as the “if” in an IFTTT applet and to use the smartthings IFTTT channel as the “that” in the same applet. :sunglasses:

So as far as your question about whether that particular transmitter device will “work” it depends on what you are using for your receiver device and your receiving station app. It should work fine as a transmitter. But you still need the other two pieces, a receiver device ( typically a smartphone) and a receiving station app running on that phone.

1 Like

I’m sorry, I don’t understand this question. :disappointed_relieved: Which specific link are you referring to? I’m not doing anything special.

Never mind I figured it out - guess it’s called a one box…?

First of all I want you for taking the time out to help me.

Secondly I was thinking of using that and placing it my yard outdoors so it could literally be an arrival and departure sensor in my driveway. Thinking maybe I could use my iPhone as the receiver, but that’s my daily driver so does it need to be something dedicated to just being the receiver or can I use it for other stuff too? Lastly I do t know what to use for the app now that BeaconThings doesn’t work. There are these apps in the App Store from the company who manufactures that iBeacon called RadBeacon.

Another question: could I use the following iBeacon and plug it into the USB port on my car stereo and have it so that anytime my iPhone connects to the iBeacon it’ll turn on my goodbye routine and maybe when it disconnects turn on my I’m back routine? Not sure of the latter but worth asking.

It would be a start, but again, the IBeacon is only the transmitter. You would have to have a receding station app on your phone that knew what to do when the transmission was received.

What app would you recommend?

Ok. I finally bought an iBeacon and wondering how to get it into SmartThings when SmartThings doesn’t use Bluetooth. I’m trying to use a simulated iBeacon and plugged in the UUID information using that but not sure if it’s going to work.

It’s the same process described in all the other Beacon threads in the forum.

  1. choose the Beacon hardware that you want to use and set it up

  2. choose a receiving station app ( or write your own) for the phone/tablet that you want to have recognize the beacon which can issue a “webhook,” typically an http “post”

  3. set that receiving station app on your phone/tablet so that whenever the beacon’s signal is recognized, the webhook is sent either to either the IFTTT webhooks channel or to a web services smartapp that you write for yourself. Most people who are not programmers just use the IFTTT webhooks channel.

So when the I beacon comes in range of your phone/tablet, the message gets sent to IFTTT, and that becomes the “if” in your IFTTT applet

So once you get this far, you have an event which recognizes when the IBeacon either goes in range or out of range.

Now choose the “that”

So the next question is what do you want to do for the “that” in your IFTTT applet? You are definitely going to use the SmartThings channel, but how are you going to use it?

You could just use it to trigger any single given smartthings – controlled device that shows up in the IFTTT SmartThings channel.

For example:

“If my phone comes in range of this particular Beacon, turn on the porch light.”

" if my phone goes out of range of this particular Beacon, lock the door."

Notice that it doesn’t matter whether it’s the phone that is moving or the beacon that is moving, an event is generated when they are close enough that the phone can detect the Beacon. That’s what the receiving station app is for.

If you want to use the Beacon like a more general presence device, then first create a virtual presence sensor that can be turned on and off like a switch. The following is a good one:

Authorize IFTTT To access that virtual device through the SmartThings IFTTT channel.

Then you can use turning on the virtual presence sensor as the “that” in your IFTTT applet.

“If this particular Beacon is detected {webhook received}, turn on the virtual presence sensor”

So from there it works like any other presence device in SmartThings.

If you are writing your own web services smartApp, it’s the same idea. Receive the webhook, then either run a single event or turn on a virtual presence sensor.

But you never need a virtual ibeacon. And you never need to detect the IBeacon directly from SmartThings. The communication is from that Ibeacon to the receiving station app on your phone, then from the receiving station app on your phone to the IFTTT Webhooks channel, which then triggers the IF in your IFTTT applet and so sends a request to smartthings.

Again, this is exactly the same process discussed in the other four existing IBeacon threads, I’ve just posted a summarized version here to make it a little clearer for less technical people. :sunglasses:

1 Like

I’m having trouble locating a receiving station app for iOS capable of web hooks. Surely at this point I wouldn’t need to write my own. I did stumble upon the ProximityEvents app on the App Store, which seems good except it hasn’t been updated in 3 years. Any other suggestions? Thanks!

Most of them haven’t been updated in three years because that’s when both estimote and radius networks begin providing their SDKs and people just started writing their own. It’s not that difficult, but I do understand if you don’t want to do that.

BTrigger Is a very simple free app that another forum member recommended recently and I’m just starting to take a look at. As with the others, it hasn’t been updated for a while, but it seems to work fine.

I personally use a paid app, beecon+ from beaconsandwich , which is much more polished and that I like a lot, but I don’t recommend it anymore because the developer has moved on to other things and they no longer provide any support except for the FAQs on the website. If you’re willing to risk $10 on it and give it a try, you could see what you think. But again, no support at this time. It’s working for me, but I can’t guarantee it would work for anyone else as a new install.

Have you found beacons with your phone as receiving station a good backup to your phone as SmartThings presence sensor or IFTTT geofence presence? I’m curious because it seems that your phone sleeping would be what prevents all of those approaches from working, suggesting they would all fail at the same time. Is that everyone’s experience or not?

If you’re using an iPhone, you still get ibeacon detection. It’s only android that has the sleep problem.

In my case, I’m using them in reverse – – the people carry the beacons and we have two tablets set up as receiving stations/Home automation dashboards, one on each side of the house. I have an IBeacon on my wheelchair and my housemate has one in his backpack. So when the person comes within range of the tablet, it fires off the arrival event for that specific iBeacon. This works very well for us. :sunglasses:

1 Like

Hi,

So from my understanding I don’t need a transmitter (since my iPhone can be the transmitter)? But I do need a receiver so my transmitters (i.e iPhone’s) can connect to it? Is this correct?
What kind of transmitter do you recommend?

I basically have 4 phones that I want to monitor (that come home/leave)…hopefully something more reliable compared to smartthings presence.

It’s the other way around. You buy a small device called an I beacon and that is the transmitter.

Then you put an app on your phone or tablet, and that becomes the receiver.

So your phone knows when your phone has come within range of the IBeacon because the IBeacon is transmitting and the app on your phone receives that transmission.

Then it is up to the app on your phone to decide what to do about the fact that it is now within range of Beacon 123.

If the app can send a Webhook, then you can use that as the “if” in an IFTTT applet.

1 Like

Do you recommend any transmitters and app for the phone?
Thanks

Read this thread from the top, both are discussed. :sunglasses:

1 Like