Mobile Presence and iBeacon (discussion beginning 2015)

Wow! That’s amazing. Thank you Brice! :smiley:

1 Like

Try this one. The developer is grwat

Aaaand off into experimentation I go. Found an NRF based beacon basic board on ebay, ordered one just to see if it might work. I am hoping that it works with all of the NRF apps on the android play store. If it does, it should work with tasker pretty easily. If it doesn’t work, I’m not out that much.

http://www.ebay.com/itm/NRF51822-SENSOR-TAG-Bluetooth-4-0BLE-Wireless-Sensor-IBEACON-Networking-Module-/351473961515

@JDRoberts @obycode, since you guys seem to be the resident experts on iBeacons, I’m throwing this to you…

Can I use an old iPhone/iPad with BLE as an iBeacon transmitter? I thought I could, but I can’t find the definitive answer.

I have an iPad mounted on my fridge. I’d like to use it to help with presence, etc. Can I?

As long as its not too old (before BLE), then you should be able to, but the downside is that I believe you will have to leave the app running in the foreground to transmit.

I’ve used this one before - https://itunes.apple.com/us/app/locate-beacon/id738709014?mt=8

The short answer is yes if you have a compatible device, the medium answer is it depends, and the long answer is it depends but you may not want to. :wink:

Last things first: as @obycode noted, virtual beacons only work when they’re in the foreground which means the device can’t be doing anything else except transmitting as an IBeacon. . As soon as you have it do something else it stops transmitting. That may be OK, depending on your use case, but it also may not be OK. And you have to be really careful that changing the tablet to do something else doesn’t trigger all of your “I’m away” logic.

As far as the it depends answer, this isn’t a built-in consumer function. The capability is there, but you either have to access it at the developer level, or you have to use an app which will do that. Most people do the second. There are several free apps that can do this, and if you buy a physical IBeacon, its management app will also usually let you create a “virtual Beacon” to do testing with.

Note that some of these identify all virtual ibeacons with the same one UUID, so you can only have one in your house. And you have to be careful that you don’t pick up somebody else’s somewhere else and start executing logic on that basis.

And as far as the shortest of the answers, iPad three, iPad mini, iPhone 4s , iPod touch 5s, and above.

1 Like

Thank you guys. The app needing to be in the foreground is a tough pill to swallow. While I’ve never jailbroken any device, I believe there is some trickery you can do with multitasking. I believe the (jailbreak) app is called Background Manager. Will find out for sure.

Confirmed that the app is called Background Manager (available on Cydia) which allows you to run two apps at once. Now if I can only work up the nerve to jailbreak my iPad and give that a shot.

The app I had been using to act as the iBeacon was called EZ Bescon. (https://appsto.re/us/UmmoY.i) which seemingly allows you to generate your own UUID. So there’s no worry of picking up someone else’s beacon and you can use multiple in the house.

Has anyone started working with the android SDK for estimote to create an android app for estimote beacons? I’ve gotten six beacons and can’t find any real apps that can connect it to ifttt or smartthings.

One of the things the estimote guys showed me, and we might have to do this until an actual app is created, but check this out:

@shawneric in the original post of the thread, @Kristopher explained how he is using Tasker to monitor for iBeacons and then using SharpTools (an app I developed) to send commands to SmartThings.

Later in the thread, he recommended Bluetooth Detection by Kanetik, so I imagine that’s what he’s using for detecting the iBeacons and triggering the events in Tasker, but perhaps he will respond here directly with clarification.

1 Like

Wish I’d found @davglass’s code before I wrote my own. Anyway, if you have an iBeacon and want to use it for presence, then I have some code to help you:

This uses the native GeoHopper App, virtual presence sensor and a SmartApp Endpoint. I thought I was the only person who was crazy enough to invest in iBeacons. I’m currently using them to suppress alerts from my outdoor cameras (which aren’t tied to ST), but will now use them for presence at work/home/car.

Geohopper just announced that beginning in 2016 they will charge $5/month to send notifications. This was formerly free when you purchased their device.

If you are using beecon+ or another app to manage your beacons this will not affect you, but if you’ve been using the geohopper app, it will.

@obycode - how do you make this app work for uk users, ? Got the app, but can’t authorize ?

Thanks

BeaconThings is going to need to go through the same update and approval process that SmartRules has gone through to work in other regions outside of the US. This is on the todo list, but for now, I would not recommend UK users to purchase it from the US app store.

Thanks for the update, shout if you need beta tester

I may have skimmed too quickly, but does anyone have any ideas about whether or not it’s possible and/or how to use Android devices as Bluetooth beacons?

I’m not talking about using an app on Android to interact with iBeacons.

I want to actually use the Android devices that I already have mounted on walls all over my house as the beacons. Since I already have Bluetooth devices all over the place, it would be really cool to be able to use them like this.

A special thank you to @JDRoberts, a tremendous contributor to our community, who inspired this iBeacon application, and @DavGlass for his SmartApp that made it possible. Here is a link to a blog posting on Proxidyne’s website (the company behind the Geohopper referenced by JD) that describes the installation of an iBeacon with an external antenna to allow a sliding entrance gate to be triggered via SmartThings when the iBeacon is detected by an iPhone running Beecon+:

http://www.proxidyne.com/2016/08/18/bleu-station-installation-with-external-antenna/

1 Like

Very nice! :sunglasses:

@sosaudio1 asked for the details of using IFTTT with IBeacons in another thread, so here they are. :sunglasses:

Beacons don’t run any commands. All the beacon device does every few seconds is send out its own ID. So basically it’s just saying “I am here. I am here. I am here.”

Now you have to have a receiving station app on a phone/tablet that will receive that message. Once it gets the message, it’s up to the receiving station app to decide what to do next, based on the ID of the Beacon sending the message.

The usual metaphor for this is a lighthouse. The beacon is the lighthouse, sending out its light. It has no idea if there any ships nearby or not. It just keeps sending the same light over and over. It is up to each ship to decide what to do when it sees the light. The ship is the receiving station app, which runs on a phone or a tablet.

OK, so the receiving station app knows that beacon 12345 is nearby. It also has some idea of how near it is, based solely on the signal strength of the message received.

So how do we integrate that with IFTTT?

The usual way is to use the IFTTT maker channel/service. In this case, the receiving station app receives the Beacon message from Beacon 12345. It has a rule which says that when it receives a message from that particular Beacon, it should do a HTTP post to the IFTTT maker channel. That becomes the “if” in the IFTTT applet.

OK, so now we are reaching IFTTT when the Beecon is detected. What should we use for the “that” in the applet?

Well, you can do anything you can do in the smartthings IFTTT service/channel. You could turn on a specific light. You could unlock a door. You could turn on A switch which then initiates a routine. You could flip the switch on a virtual presence sensor which also has switch capability.

This last is useful because it basically lets you turn detecting a Beacon into a SmartThings arrival sensor. And from then on you treat it like any other presence in SmartThings. You can turn it on when you come within range of the beacon and turn it off when you leave the range again.

But if you would rather just have Beacon detection trigger a specific SmartThings event, you could do that instead. Whatever works best for your use case.

And if you want to have multiple things happen at once, either use a routine or use Core ( ask in the core peer Assistance thread if you want to explore that option) or set up one IFTTT applet for each event, all triggered by the same maker service “if.”

So…

  1. set up a beacon Device using the transmission strength you want

  2. choose a receiving station app which can do webhooks (an HTTP post)

  3. create a rule in the receiving station app to send the HTTP post to your IFTTT accounts maker service/channel (see the IFTTT documentation on using the maker channel for more details)

  1. if you want, create a virtual presence sensor with switch capability
  1. create an IFTTT applet where the maker service receiving the post from your IBeacon receiving station app is the “if” and smartthings is the “that.”

So that’s the IFTTT method.

There are other alternatives. If you have android, you should be able to use a combination of Tasker and SharpTools. Or you can post directly to an end point in your smart things account if you know how to write Web services smart apps. Start at the top of this thread for more discussion. :sunglasses:

2 Likes