@vizras, you are using wrong “pipe” symbol https://en.wikipedia.org/wiki/Broken_pipe
“|” - is correct one.
@vizras, you are using wrong “pipe” symbol https://en.wikipedia.org/wiki/Broken_pipe
“|” - is correct one.
Will do, thanks for the quick responses, you are a star.
I installed the version 1.1.1, still the same errors…
2018-03-01 23:02:25.160 [ERROR] [.eclipse.smarthome.binding.bluetooth] - [binding.bluetooth(274)] The activate method has thrown an exception
java.lang.IllegalStateException: GATT spec registry file is missing
at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.readRegistryFromClassPath(BluetoothGattSpecificationReader.java:426) ~[?:?]
at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.readServicesRegistryFromClassPath(BluetoothGattSpecificationReader.java:257) ~[?:?]
at org.sputnikdev.bluetooth.gattparser.spec.BluetoothGattSpecificationReader.<init>(BluetoothGattSpecificationReader.java:96) ~[?:?]
at org.sputnikdev.bluetooth.gattparser.BluetoothGattParserFactory.getSpecificationReader(BluetoothGattParserFactory.java:59) ~[?:?]
at org.sputnikdev.bluetooth.gattparser.BluetoothGattParserFactory.getDefault(BluetoothGattParserFactory.java:74) ~[?:?]
at org.sputnikdev.esh.binding.bluetooth.internal.BluetoothHandlerFactory.getGattParser(BluetoothHandlerFactory.java:131) ~[?:?]
at org.sputnikdev.esh.binding.bluetooth.internal.BluetoothHandlerFactory.activate(BluetoothHandlerFactory.java:58) ~[?:?]
at sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:229) ~[?:?]
at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39) ~[?:?]
at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:650) ~[?:?]
at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:506) ~[?:?]
at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:307) ~[?:?]
at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:299) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:298) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:823) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:212) ~[?:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) ~[?:?]
at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:72) ~[?:?]
at org.apache.felix.scr.impl.inject.BindMethod.getServiceObject(BindMethod.java:651) ~[?:?]
at org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2201) ~[?:?]
at org.apache.felix.scr.impl.manager.DependencyManager.invokeUnbindMethod(DependencyManager.java:1829) ~[?:?]
at org.apache.felix.scr.impl.manager.SingleComponentManager.invokeUnbindMethod(SingleComponentManager.java:395) ~[?:?]
at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.removedService(DependencyManager.java:375) ~[?:?]
at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.removedService(DependencyManager.java:291) ~[?:?]
at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1241) ~[?:?]
at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1136) ~[?:?]
at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.untrack(ServiceTracker.java:996) ~[?:?]
at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1175) ~[?:?]
at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:127) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[?:?]
at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) ~[?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) ~[?:?]
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:222) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.unregister(AbstractComponentManager.java:909) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.unregister(AbstractComponentManager.java:874) ~[?:?]
at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:139) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.unregisterService(AbstractComponentManager.java:951) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.doDeactivate(AbstractComponentManager.java:806) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.deactivateInternal(AbstractComponentManager.java:788) ~[?:?]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:580) ~[?:?]
at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.disposeComponents(ConfigurableComponentHolder.java:706) ~[?:?]
at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:523) ~[?:?]
at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:439) ~[?:?]
at org.apache.felix.scr.impl.Activator.access$300(Activator.java:54) ~[?:?]
at org.apache.felix.scr.impl.Activator$ScrExtension.destroy(Activator.java:293) ~[?:?]
at org.apache.felix.utils.extender.AbstractExtender$2.run(AbstractExtender.java:285) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
at org.apache.felix.utils.extender.AbstractExtender.destroyExtension(AbstractExtender.java:307) ~[?:?]
at org.apache.felix.utils.extender.AbstractExtender.bundleChanged(AbstractExtender.java:181) ~[?:?]
at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) ~[?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) ~[?:?]
at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) ~[?:?]
at org.eclipse.osgi.container.Module.doStop(Module.java:634) ~[?:?]
at org.eclipse.osgi.container.Module.stop(Module.java:498) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.stop(EquinoxBundle.java:410) ~[?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.stop(EquinoxBundle.java:422) ~[?:?]
at org.eclipse.smarthome.extensionservice.marketplace.internal.BindingExtensionHandler.uninstall(BindingExtensionHandler.java:100) ~[?:?]
at org.eclipse.smarthome.extensionservice.marketplace.internal.MarketplaceExtensionService.uninstall(MarketplaceExtensionService.java:246) ~[?:?]
I filled in COM3
What about the error: GATT spec registry file is missing ??
Hi @Celaeno1, I’m sorry to keep asking you to double check what version you are running. But the MarketPlace plugin in OH might have not updated versions. Can you please post here the result of:
openhab> bundle:list | grep bluetooth
Or even just without “grep” part:
openhab> bundle:list
261 │ Active │ 80 │ 1.1.0 │ org.sputnikdev:org.eclipse.smarthome.binding.bluetooth.transport.bluegiga
262 │ Waiting │ 80 │ 1.1.1 │ org.sputnikdev:org.eclipse.smarthome.binding.bluetooth
The binding.bluetooth is Waiting
Hi Vlad,
Sorry, how do I turn discover unknown attributes on?
cheers,
Pim
@Pim_Verschueren, That’s because your device is offline, the screenshot clearly shows that
I’m not sure why this happens, does your scales turn off automatically?
was the wrong pic, sorry
The scale turns it self off I guess as you’re not using it. On my other test openhab instance I kept the scale online and it (obviously) immediately receives updates.
Great, pls keep watching, it might reveal some more channels…
@Pim_Verschueren, good news, that characteristic is what we need (0000181d)!
https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.service.weight_scale.xml
glad I could help, but this all Chinese to me mate But let me know what I can do to help and I will try to get you as much info as I can.
@Pim_Verschueren, what I need is… Try to make some samples, e.g. by measuring some weight and then taking notes of that channel shows. I’ll have to decode it and make it working.
ok, so that code vs the weight?
Yep, that hex code (array) and weight as well as rough time when a weigh measured.
01:30
[a2, 4c, 63, e2, 07, 02, 01, 0f, 2f, 1c]
127.100
-
01:45
[a2, fc, 62, e2, 07, 02, 01, 0f, 31, 00]
126.700
-
01:55
a2, 80, 02, e2, 07, 02, 01, 0f, 35, 04
3.200