3rd Party Bluetooth Binding. Beta testers needed

My S7 was recognized only on the first attempt and in Paper UI my S7 was displayed with the status online. After switching the Bluetooth off and on again on the phone, my phone was no longer recognized as online. No matter what I tried on the phone.

Hi @Steffen_M, could you please let me know if you still can see some other bluetooth devices like you’ve seen before?

If you see the other devices, then it might be something wrong with your phone. Are you able to provide openhab logs so I can try to troubleshoot?

Thanks,
Vlad

I’m glad that it is working for you @Marcello87.

Unfortunately (or fortunately) this binding will never be a part of the standard installation due to some “political” reasons.
This binding is just a wrapper around an open source library (Java Bluetooth Manager): GitHub - sputnikdev/bluetooth-manager: Java Bluetooth Manager. A library/framework for managing bluetooth adapters, bluetooth devices, GATT services and characteristics. I did not want to merge the source code of this library into the Eclipse SmartHome source repository which is a requirement to be included into the official SmartHome distro. If you think about that, it really makes sense and fair enough, the SmartHome supportes/developers need to have a full control of the internal stuff. However, as a supporter of opensource freedom, I decided to keep it available to any project as I believe it can be useful outside of the SmartHome.

Nevertheless, being in the Eclipse MarketPlace gives you more freedom. We can do releases as often as we want, so the improvements will be released more often than the SmartHome itself.

3 Likes

Eclipse SmartHome and openHAB2 are separate so even if you don’t want to contribute all the source code to the ESH project you could still release the binding as an official OH2 binding.

3 Likes

But it’s the eclipse licence what you “sign” even when you publish something under OH.

Or is there something that I missed?

It is not about accepting or not code.
Addon author want to develop some code as independant libraries.
Here you can find my frustration about the situation as well as disscussion.

In the beginning, I was a bit frustrated and disappointed that the Binding is not going to be included in the official distribution, especially after so much effort I’ve put in this. However, I changed my mind and I believe that it is fair enough that @Kai and the rest of the team require the code (especially API) to be a part of SmartHome source repository. Obviously you have to have some control over source code so that you can make the system robust and prevent chaotic and uncontrolled changes. Furthermore, the dev team provided sufficient mechanisms (like Eclipse MarketPlace) to give some options for the binding developers. I think that to be in the MarketPlace is actually not too bad, we’ve got more control over release cycle and (yet!) the core of the binding (Bluetooth Manager) is still available for other people/project to be used outside of the SmartHome.

PS. Let’s focus on the betta testing and avoid political topics :slight_smile:

7 Likes

@vkolotov

Today I received my BlueGiga: BLED112

After creating an accout at Silicon Labs and downloading the Windows Driver, I was able to install it.

image

Then I switched on “BT Discovering Control”:

image

Now I want to detect my smartphone, a Samsung Galaxy S5 (BT 4.0).

I installed a “Beacon Simulator” APP. But I’m not sure if I configured it correct.

image

Could it be, that this "Beacon Simulator creates a random MAC-Address everytime you start to broadcast?

1 Like

Hi @Celaeno1, good news, you are the very first one who reported a bluegiga adapter. And it is a good news that the binding is able to detect your adapter.

Not sure about your beacon emulation app, but you are right, make sure that the app always advertises the same MAC address, otherwise it would be pretty much useless.

Try different apps, there are lots of them in the market. Make also sure that it continues advertising even if the app in the background or your device is in standby mode (screen off).

1 Like

Looks like not everyone reading the readme. Apart from the presence detection, the binding supports many more features. I’ve updated the main post with some descriptions of what it can do.

Thanks for this great binding, which opens many new possibilities :-).

Works well using the Raspberry 3’s internal bluetooth adapter and a G-Tag.

I tried up to 10 different APPs. None of them provide a continuous MAC-Address. Maybe it also depends on my Smartphone or Android OS?
Could you please recommend a special APP with this feature included?
Or someone else can do that?

It’s a security “feature” of recently mobile OS’es. IOS does this, and i think recent Android versions also does this.

@vkolotov Thank you for this binding.
As you said bluez version 5.47 solved my problems but some GATT profiles were still not available for me.
Now for the suggestions:
As most mobile OS’s generate fake mac id’s it would be great to look for service UUID’s instead of mac address. May be as an advanced setting. This way, even iOS presence can work without any apps at all!
Also i would like to point out that in order for the presence detection to work (without pairing), discovery option must be turned on. Which automatically sends all mac adresses to inbox. I’m living on a main street and buses come and go front of my apartment so my inbox showed litterally hundreds of items :slight_smile: It would be great to have an option to have discovery running but the newly discovered items not get sended straight into inbox.

BTW i have a flower care which sends some sensor info about pot plants. How can i create a custom profile for it? If you point me in the right direction that would be great!

Hmm… I did not know about this new superb useful feature (to dynamically allocate MAC addresses)…

I’m afraid it is not going to work simply because all you have to be connected (or a device should advertise UUIDs).

There is a bug that causes this: Discovered bluetooth devices get accumulated in the inbox even if they are not in range anymore · Issue #5 · sputnikdev/eclipse-smarthome-bluetooth-binding · GitHub
It will be fixed in the next release.

Thanks for reporting this. Could you please let me know what GATT profiles are not available for you?

Hi @Celaeno1, sorry to hear that it is not working for you. As @sozkara pointed out earlier it might be a new security feature. What phone do you have @Celaeno1? I may also suggest you to try to use a real bluetooth beacon / keyfob / keytag for $5 on aliexpress to track your presence.

Unfortunately I copy - pasted the log entries but i couldn’t find it :frowning: I will send it to you once i reconfigure openhab.

I think all devices announce their “Device” UUID’s even if they’re not connectable and has no service. I found about this when i installed an app called “BLE Scan Raw” on my iPhone. If you have time take a look at that app. It reports every BLE device’s last 4 digits of Device UUID’s and RSSi. Which is enough for presence. OFC, if this can be implemented on bluez and java is another question :slight_smile:

Yes, it is possible to access advertising data. However, I’m pretty sure that not all (actually only a few) devices advertise something. But… If you can make your iphone advertise something specific via an app… yep it might be a good idea.