3rd Party Bluetooth Binding. Beta testers needed

what tv are you using im trying with samsung

I have a Sony

my tv hasen’t updated its signal for over 11 mins how often does yours report changes ?

Most Bluetooth devices flood the environment with messages, so every couple of seconds would be normal. The update interval of the binding seems to be 5 to 10 seconds as I can see from my persistence data:
grafik

so off that it would seem that somethings not quite working properly as im only getting the 1 update and then nothing

Yes, looks like it is not working. But do you really use the 3rd party binding (only installable by Eclipse marketplace) or the official one? I had the same problems like you with the so called official one (but which indeed is just scrap).

I installed from PaperUI

Bluetooth Binding

binding-bluetooth - 2.4.0

Ok, then you have installed the official binding which is - in my opinion - a piece of Sh… or just a bad joke. I had exactly the same problems like you and anybody else on this forum. I don’t know why this binding is still presented as a featured binding on the Webpage as it does not work at all.
You need to install Eclipse Smart Home Marketplace (Addons - Misc) and then choose level ‘Alpha’ for displayed bindings in Configuration.
The correct binding should show up in paperUi like this:

or in Karaf Console like this:

1 Like

@vossivossi

OK i will try but before I install, end up wasting ages (I always do with anything openhab related) do you know if it will work with the built in Bluetooth on the RPI

Sorry, I have no RPI experience as I am running OH on Windows and Bluetooth with a BlueGiga USB stick.

Yes, it will.

Thanks For that

I have installed the binding and setup with openhabs rpi bluetooth

tested with my mobile (found that usless like people said)

I cant find the bluetooth from my smartwatch too test how that behaves do you or does anyone else know what too do or know about blutooth on smartwatches?

Hi
I installed the binding yesterday evening and successfully saw some devices.
Today I am trying more seriously to connect, but when I try to set ConnectionControl to ON I get the following it just changes back to OFF after half a minute or so:

2019-02-05 19:59:01.310 [ome.event.ItemCommandEvent] - Item 'ScaleCH100_ConnectionControl' received command ON
2019-02-05 19:59:01.318 [nt.ItemStatePredictedEvent] - ScaleCH100_ConnectionControl predicted to become ON
2019-02-05 19:59:01.336 [vent.ItemStateChangedEvent] - ScaleCH100_ConnectionControl changed from OFF to ON
2019-02-05 19:59:05.800 [vent.ItemStateChangedEvent] - ScaleCH100_ConnectionControl changed from ON to OFF
2019-02-05 19:59:48.665 [ome.event.ItemCommandEvent] - Item 'ScaleCH100_ConnectionControl' received command ON
2019-02-05 19:59:48.676 [nt.ItemStatePredictedEvent] - ScaleCH100_ConnectionControl predicted to become ON
2019-02-05 19:59:48.689 [vent.ItemStateChangedEvent] - ScaleCH100_ConnectionControl changed from OFF to ON
2019-02-05 20:00:05.794 [vent.ItemStateChangedEvent] - ScaleCH100_ConnectionControl changed from ON to OFF

The same happens with another device I tries. Must be some noob mistake; I would appreciate any help.

I use the Bluetooth adapter build into my Raspberry and I’m on Bluez 5.43 (got that with Openhabian).

–Jesper

Ok, did a reboot, and now it can stay with ConnectionControl ON.

However, trying to connect to my Huwei AN100/CN100 I get the following:

2019-02-05 20:39:48.036 [vent.ItemStateChangedEvent] - ScaleCH100_Connected changed from OFF to ON
==> /var/log/openhab2/openhab.log <==
2019-02-05 20:39:48.749 [ERROR] [.manager.transport.tinyb.TinyBDevice] - Services resolved notification execution error
java.lang.NullPointerException: null
	at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.validate(BluetoothGattSpecificationReader.java:304) ~[?:?]
	at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.addCharacteristic(BluetoothGattSpecificationReader.java:294) ~[?:?]
	at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.getCharacteristicByUUID(BluetoothGattSpecificationReader.java:131) ~[?:?]
	at org.sputnikdev.bluetooth.gattparser.BluetoothGattParser.isKnownCharacteristic(BluetoothGattParser.java:86) ~[?:?]
	at org.sputnikdev.esh.binding.bluetooth.handler.AutomaticPinCodeAuthProvider.lambda$discoverPinCodeCharacteristic$1(AutomaticPinCodeAuthProvider.java:64) ~[?:?]
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) ~[?:?]
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[?:?]
	at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) ~[?:?]
	at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270) ~[?:?]
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[?:?]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:?]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:?]
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[?:?]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[?:?]
	at org.sputnikdev.esh.binding.bluetooth.handler.AutomaticPinCodeAuthProvider.discoverPinCodeCharacteristic(AutomaticPinCodeAuthProvider.java:65) ~[?:?]
	at org.sputnikdev.esh.binding.bluetooth.handler.AutomaticPinCodeAuthProvider.authenticate(AutomaticPinCodeAuthProvider.java:41) ~[?:?]
	at org.sputnikdev.bluetooth.manager.impl.DeviceGovernorImpl.authenticate(DeviceGovernorImpl.java:833) ~[?:?]
	at org.sputnikdev.bluetooth.manager.impl.DeviceGovernorImpl.access$800(DeviceGovernorImpl.java:63) ~[?:?]
	at org.sputnikdev.bluetooth.manager.impl.DeviceGovernorImpl$ServicesResolvedNotification.notify(DeviceGovernorImpl.java:817) ~[?:?]
	at org.sputnikdev.bluetooth.manager.impl.DeviceGovernorImpl$ServicesResolvedNotification.notify(DeviceGovernorImpl.java:807) ~[?:?]
	at org.sputnikdev.bluetooth.manager.transport.tinyb.TinyBDevice.lambda$null$6(TinyBDevice.java:203) ~[?:?]
	at org.sputnikdev.bluetooth.manager.transport.tinyb.TinyBFactory.lambda$notifySafely$0(TinyBFactory.java:237) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

If I connect to the CH100 with the BLE Scanner app I actually see some apparently nice GATT fields, so I was hoping to get it to work i OpenHAB. I am still on Bluez 5.43. Again, any help would be appreciated.

–Jesper

Hi @jesperdk, good to see it is kind of working.

The error you see is a bug apparently. This happens when it tries to “parse” gatt characteristics, obviously your scales is not supported as nobody added GATT specs for your scales yet (you are welcome do so it and update this repo: https://github.com/sputnikdev/bluetooth-gatt-parser)

Having said that, you should be able to get binary data from your device. Set this setting to do so:

I’ve created a new ticket for you:

Please enable binary only discovery and report what channels you get in that ticket on github. We will try to come up with some gatt specs for your scales so you should be able to get some meaningful data.

Hi @Sharpy,

I’ve added a workaround for the privacy “feature”, could you please help me with testing it?
Please follow this instructions:

Wow, that is better support than for any software I have ever used before :grinning:
I have commented on the github issue and will move the communication over there - just wanted to say “wow” here in this tread…

It would be a pleasure too help you test it although I’m not sure how much help I can be

Using android phones is that still of help

@Sharpy, Yep, same thing on android phones. Just get that app (nrf connect) from the play market, set it up according to the post above.

@vkolotov
I think have got it working now still having some disconnects