Estimotes Have Arrived!!

Just thought I would share some exciting news. My developer package from Estimote arrived today and I will be working all week and weekend to get my house proximity aware. I will update this thread as I have updates, right now I am thinking about just integrating with multi-switch and ibeacons as that will allow for 8 switches to be integrated with a PLEG.

Count me in when the beta is available! I have a few iDevices that can be used to test as iBeacons.

I’ve been playing around with the estimote beacons and a Vera iOS app I’ve been working on and it’s been pretty amazing what uses there are.

Some ideas I’ve had…

If you put an ibeacon in every room, when you open the app, the app can take you directly to that rooms devices.

Put an ibeacon in your car and another at the end of your driveway and the app can detect and determine if you are leaving or arriving.

Put one by your door locks and as you approach, a notification can popup that if clicked, will launch the app and send a command to unlock the door.

The problem is how to best implement this. I’m thinking someone should come up with an iBeacon plugin that let’s app developers send events and range data to it so we can execute scenes from it.

Hit me up, I’d love to talk to you about this. They are really cool devices.

Sent from my iPhone using Tapatalk

[quote=“Albeebe, post:3, topic:180741”]I’ve been playing around with the estimote beacons and a Vera iOS app I’ve been working on and it’s been pretty amazing what uses there are.

Some ideas I’ve had…

If you put an ibeacon in every room, when you open the app, the app can take you directly to that rooms devices.

Put an ibeacon in your car and another at the end of your driveway and the app can detect and determine if you are leaving or arriving.

Put one by your door locks and as you approach, a notification can popup that if clicked, will launch the app and send a command to unlock the door.

The problem is how to best implement this. I’m thinking someone should come up with an iBeacon plugin that let’s app developers send events and range data to it so we can execute scenes from it.

Hit me up, I’d love to talk to you about this. They are really cool devices.

Sent from my iPhone using Tapatalk[/quote]

The current plan is to implement these the same way iViri implements geofences. Basically assign a iBeacon to a virtual switch plugin or multiswitch plugin on the Vera. iViri then handles the didEnterRegion and didExitRegion by switching those plugins on or off depending on enter or exit. So in the current version of the app in the apple store you could setup different geofences for outside your home and have a switch change status based on your device enter and exit of that region. With iBeacons we add this ability inside the home, so when you enter a room with a configured iBeacon a status is changed and then you can use PLEG to define the actions to those status changes and if you have multiple devices you home can react to multiple occupants! Excited to say I already have this working in my home now after one day of testing, can’t wait to see what I can get accomplished by Sunday.

Definitely consider letting people specify how close to the beacon you need to be in order for it to trigger the didEnterRegion. I can easily pickup signals from beacons that are in another room.

The switch idea is pretty cool

Sent from my iPhone using Tapatalk

With the estimotes you set the distance they broadcast through their app they have. For now I am working based off that as you can set them to broadcast as little as 5ft.

Sent from my iPhone using Tapatalk

With CoreLocation, once you enter an iBeacon region, you can then call the startRangingBeaconsInRegion: method which will notify your delegate when the users proximity to the iBeacon changes.

There’s four different proximity values.

CLProximityUnknown, (The proximity of the beacon could not be determined.)
CLProximityImmediate, (The beacon is in the user?s immediate vicinity.)
CLProximityNear, (The beacon is relatively close to the user.)
CLProximityFar (The beacon is far away.)

If you go this route, you can support ranging for all iBeacons and not be specific to Estimotes. Most people are probably going to experiment with this feature by turning their iPad or another iPhone into an iBeacon so they can play with it and see how it works before spending money on an Estimote kit or a standalone iBeacon.

[quote=“Albeebe, post:7, topic:180741”]With CoreLocation, once you enter an iBeacon region, you can then call the startRangingBeaconsInRegion: method which will notify your delegate when the users proximity to the iBeacon changes.

There’s four different proximity values.

CLProximityUnknown, (The proximity of the beacon could not be determined.)
CLProximityImmediate, (The beacon is in the user?s immediate vicinity.)
CLProximityNear, (The beacon is relatively close to the user.)
CLProximityFar (The beacon is far away.)

If you go this route, you can support ranging for all iBeacons and not be specific to Estimotes. Most people are probably going to experiment with this feature by turning their iPad or another iPhone into an iBeacon so they can play with it and see how it works before spending money on an Estimote kit or a standalone iBeacon.[/quote]

The code I have written does not rely on Estimotes API, I am using the basics of core location to use any iBeacon you would want to use, you just define the UUID of the iBeacon and the major/minor values and save it and it starts monitoring for it. The reason I am not using ranging or at least focusing on it right now is because ranging doesn’t work in the background and the whole goal in my mind is never to open the app, just have the PLEG code adapt to these switches and make your environment react to yourself. There are issues with the apple API at the current moment with accuracy and it will randomly say i am not near a estimote and then immediately say I am near one, which is annoying to your wife at 1am when your bedroom lights flash on and off so I am not sure this is ready just yet for prime time. I am working on getting it stabilized by playing with settings so my BETA testers can at least start playing around with it.

Just an update, I now have this working in v1.3 at my house. The basement lights all turn on when I enter the basement and the bedroom lights turn on when I walk in the bedroom. My front door unlocks as I walk up to it. They all turn off after a 20 second delay after an exit from a beacon region. I have also coded to make the false positives be ignored. I am pretty excited to see what people will do with this technology in the app.

Hi, I’m a paid iViri user. I am about to buy a pack of Estimote beacons and try out your feature.

Any user guide on how to configure both iViri and the beacons?

[quote=“jeff3lo, post:10, topic:180741”]Hi, I’m a paid iViri user. I am about to buy a pack of Estimote beacons and try out your feature.

Any user guide on how to configure both iViri and the beacons?[/quote]

Nothing at the moment. Its just like adding a Geofence, except requires a little more information. Once you have your estimotes, download their app, open it and select beacons. You will want to do this for one at a time, but select your beacon off of the radar shown in the app. You should be presented with a UUID of the beacon, a major and a minor number. Once you have all 3 of these for each estimote, you will be required to enter them in exactly how they are in the estimote app into iViri. You then select if your using a multi-switch or virtual switch and that specific device number, then you name it and save it. Once saved go ahead and switch on the cell ui-button to make sure it is enabled and then begin testing it out. If you want to mess with advertising interval or distance to broadcast you will need to go back into the estimote app and go to your specific beacon and adjust it down to 50ms for advertising and you can go as close as 5ft for broadcasting, which most of mine are set to 12ft.