I’m trying to determine about “discovering” Gimbal beacons with standard iOS libraries. According to Radius Networks and Blue Sense Networks - Gimbal beacons do not broadcast standard iBeacon formatted protocol and thus cannot be discovered without using the Gimbal iOS SDK.
"Gimbal beacons on the other hand broadcast a rolling encrypted code to ensure only users with the correct privileges can see the beacon's information. Basically this means that every time a Gimbal beacon emits a signal, it contains different data. Furthermore, any BLE enabled smartphone can see the Gimbal beacon advertisements, but since they change on every broadcast essentially this means the smartphone will detect the same physical beacon multiple times and will consider each detection a different device. So in order to properly use a Gimbal beacon a developer has no other choice but to do it through their proprietary SDK." - Blue Sense Networks
I've seen some conflicting statements about accessing these beacons but I havent seen any concrete examples. Is it possible? Are there any?
I haven't worked with the Gimbal beacons directly yet (I did order some of their $5 beacons and should receive them soon) but I did talk to a customer service rep. Their beacons have three broadcast modes. One mode is iPhone-compatible, the signal is unencrypted. Another mode is the 'proprietary signal' mode, this is where it sends out an encrypted packet. When it gets received by an application on a phone you have to send the packet to the Gimbal service over the internet for decryption and you get back the contents. I don't yet know if all Gimbal beacons running in encrypted mode can be interrogated in this way or just ones you registered - or maybe you can select public or private. The third broadcast mode toggles between the other two modes.
--update; I received the beacons and turned one on. I do not have an iPhone, only Android. The Gimbal Manager runs only on iPhone. I do have an iPad, but amazingly the Gimbal Manager is not compatible with iPad! As a result I was not able to configure the beacon, will have to borrow someone's iPhone to do it. I wrote a simple BTLE scanner app for my Android phone and it detects the beacon, but the address shows as a different value on each scan. Apparently this is the behavior in Gimbal mode.
You can make the gimbal beacons discoverable as if it was an iBeacon. @james frost had the answer in his comment. Check out this post https://stackoverflow.com/a/22666967/1496517 I just did it and it works like a charm.
I wasn't able to see them with the estimote demo app but I was with the radius networks demo app. (probably because I didn't set the appropriate uuid)
Doing it this way will also let you get around the issue that gimbal has not released proximity on android, but you can use the radius network demo if you needed to.
You can also still seem them as a gimbal beacon as well as an iBeacon with the gimbal management app.
First and foremost Gimbal beacons are not iBeacon compatible, although the underlying technology is Bluetooth Low Energy.
You can't work with them using standard iOS libraries as they change their advertising packet - in essence on every advertisement they appear as a different BLE device. As per my original comment, Gimbal beacons broadcast a rolling encrypted code, so can't be discovered or connected to using standard means.
Gimbal have their own SDK both for iOS and Android, I suggest you give it a go if it makes sense in your app.