Hello,
anyone use KM200 Bindingi to read values from Buderus central heating ?
I do not know how to configure in file km200.cfg, i have GatewayPassword loginName and PrivatePassword but i do not know what is MD5Salt and PrivKey can anyone tell me where i find this, please ?
In GitHub a found only this:
With the finished private key, here is this one required:
km200:PrivKey=0000FFFFEEEEDDDDCCCCBBBBAAAA999988887777666655554444333322221111
--OR-- the binding is creating the key from the md5salt, the device and the private password. Here are all three required:
km200:MD5Salt=111122223333444455556666777788889999aaaabbbbccccddddeeeeffff0000
km200:GatewayPassword=AAAABBBBCCCCDDDD
km200:PrivatePassword=MYPASSWORD
but i can understand this.
GatewayPassword = (password from stikers on central heating without “-”)
MD5Salt= i do not know what is format and from where i get this.
2017-02-03 21:52:52.051 [ERROR] [ng.km200.handler.KM200GatewayHandler] - Decoding of the KM200 message is not possible!
2017-02-03 21:53:51.993 [INFO ] [ng.km200.handler.KM200GatewayHandler] - Update KM50/100/200 gateway configuration, it takes a minute....
2017-02-03 21:53:52.095 [INFO ] [ng.km200.handler.KM200GatewayHandler] - Received data..
2017-02-03 21:53:52.101 [ERROR] [hab.binding.km200.internal.KM200Comm] - Exception on encoding: {}
java.security.InvalidKeyException: Illegal key size or default parameters
at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1026)[:1.8.0_60]
at javax.crypto.Cipher.implInit(Cipher.java:801)[:1.8.0_60]
at javax.crypto.Cipher.chooseProvider(Cipher.java:864)[:1.8.0_60]
at javax.crypto.Cipher.init(Cipher.java:1249)[:1.8.0_60]
at javax.crypto.Cipher.init(Cipher.java:1186)[:1.8.0_60]
at org.openhab.binding.km200.internal.KM200Comm.decodeMessage(KM200Comm.java:257)
at org.openhab.binding.km200.handler.KM200GatewayHandler.initialize(KM200GatewayHandler.java:160)
at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.handleConfigurationUpdate(BaseThingHandler.java:157)
at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.updateConfiguration(ThingRegistryImpl.java:99)
at org.eclipse.smarthome.io.rest.core.thing.ThingResource.updateConfiguration(ThingResource.java:476)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_65]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_65]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_65]
at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_65]
at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[157:org.glassfish.jersey.core.jersey-common:2.22.2]
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[158:org.glassfish.jersey.core.jersey-server:2.22.2]
at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[155:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[155:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[155:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[155:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[155:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76)[10:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)[79:org.eclipse.jetty.security:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:287)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)[80:org.eclipse.jetty.server:9.2.19.v20160908]at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.Server.handle(Server.java:499)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)[72:org.eclipse.jetty.io:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_65]
This has something to do with the JCE, you need to install.
Please check this post (which shows the same erros message):
What I did to solve it, was to install JCE by apt-get: sudo apt-get install oracle-java8-unlimited-jce-policy
(check your java version first - I have Java8, running on openhabian)
I get the following error after setting the configuration straight:
2017-07-05 12:27:31.635 [ERROR] [org.apache.felix.configadmin ] - [org.osgi.service.cm.ManagedService, org.osgi.service.event.EventHandler, id=361, bundle=191/mvn:org.openhab.binding/org.openhab.binding.km200/1.9.0]: Unexpected problem updating configuration org.openhab.km200
java.lang.RuntimeException: Decoding of the KM200 message is not possible!
at org.openhab.binding.km200.internal.KM200Binding.updated(KM200Binding.java:163)[191:org.openhab.binding.km200:1.9.0]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)[3:org.apache.felix.configadmin:1.8.12]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)[3:org.apache.felix.configadmin:1.8.12]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)[3:org.apache.felix.configadmin:1.8.12]
at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1772)[3:org.apache.felix.configadmin:1.8.12]
at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:141)[3:org.apache.felix.configadmin:1.8.12]
at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:109)[3:org.apache.felix.configadmin:1.8.12]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_112]
My module is a MM200 from Junkers though, however it should be the same module as the KM200 since it looks exactly the same and both Junkers and Buderus are from Bosch.
Edit: oops, I just saw the exception is preceded by the “Illegal key size or default parameters” error, that should be solvable.
With latest releases from this thread I get this error message when I restart openhab 2.2:
2017-12-29 16:13:13.632 [ERROR] [org.openhab.binding.km200 ] - FrameworkEvent ERROR - org.openhab.binding.km200
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.km200 [207]
Unresolved requirement: Import-Package: org.apache.commons.codec.binary
at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]
I am running a ubuntu server 16.04. Could you please tell me which package I have to install? Thx!
Can someone please help me with the KM200 binding. I get the following Error after configuration of the services/km200.cfg :
I searched for a while but I can’t find a solution for my problem.
2018-01-19 00:28:07.517 [INFO ] [.binding.km200.internal.KM200Binding] - Update KM200 Binding configuration, it takes a minute....
2018-01-19 00:28:07.523 [INFO ] [.binding.km200.internal.KM200Binding] - Starting communication test..
2018-01-19 00:28:07.581 [INFO ] [.binding.km200.internal.KM200Binding] - Received data..
2018-01-19 00:28:07.588 [ERROR] [org.apache.felix.configadmin ] - [org.osgi.service.cm.ManagedService, org.osgi.service.event.EventHandler, id=341, bundle=214/mvn:org.openhab.binding/org.openhab.binding.km200/1.11.0]: Unexpected problem updating configuration org.openhab.km200
java.lang.NullPointerException: charsetName
at java.lang.String.<init>(String.java:424) [?:?]
at java.lang.String.<init>(String.java:491) [?:?]
at org.openhab.binding.km200.internal.KM200Comm.decodeMessage(KM200Comm.java:263) [214:org.openhab.binding.km200:1.11.0]
at org.openhab.binding.km200.internal.KM200Binding.updated(KM200Binding.java:161) [214:org.openhab.binding.km200:1.11.0]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189) [7:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152) [7:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85) [7:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1792) [7:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:141) [7:org.apache.felix.configadmin:1.8.16]
at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:109) [7:org.apache.felix.configadmin:1.8.16]
at java.lang.Thread.run(Thread.java:748) [?:?]
indent preformatted text by 4 spaces
Hi. I also have some issues. Everything was working till friday. Then I had to re-install Openhabian cause my SD Card failed. I used the same settings like before. But seems I miss something
2018-01-25 18:19:06.117 [hingStatusInfoChangedEvent] - ‘km200:kmdevice:05086201’ changed from UNINITIALIZED (HANDLER_INITIALIZING_ERROR) to INITIALIZING
2018-01-25 18:19:06.123 [INFO ] [ng.km200.handler.KM200GatewayHandler] - Update KM50/100/200 gateway configuration, it takes a minute…
2018-01-25 18:19:06.142 [hingStatusInfoChangedEvent] - ‘km200:kmdevice:05086201’ changed from UNINITIALIZED (HANDLER_INITIALIZING_ERROR) to OFFLINE
2018-01-25 18:19:06.256 [INFO ] [ng.km200.handler.KM200GatewayHandler] - Received data…
2018-01-25 18:19:06.259 [INFO ] [ng.km200.handler.KM200GatewayHandler] - Test of the communication to the gateway was successful…
2018-01-25 18:19:11.132 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing ‘km200:kmdevice:05086201’ takes more than 5000ms.
2018-01-25 18:19:11.137 [me.event.ThingUpdatedEvent] - Thing ‘km200:kmdevice:05086201’ has been updated.
2018-01-25 18:19:52.488 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method ‘ThingHandler.initialize()’ on ‘org.openhab.binding.km200.handler.KM200GatewayHandler@1fdb698’: null
at org.openhab.binding.km200.internal.KM200SwitchProgramService.determineSwitchNames(KM200SwitchProgramService.java:324) [229:org.openhab.binding.km200:2.3.0.201801141914]
at org.openhab.binding.km200.internal.KM200Comm.initVirtualObjects(KM200Comm.java:461) [229:org.openhab.binding.km200:2.3.0.201801141914]
at org.openhab.binding.km200.handler.KM200GatewayHandler.initialize(KM200GatewayHandler.java:206) [229:org.openhab.binding.km200:2.3.0.201801141914]
2018-01-25 18:19:52.504 [ERROR] [ome.core.thing.internal.ThingManager] - Exception occurred while initializing handler of thing ‘km200:kmdevice:05086201’: null
at org.openhab.binding.km200.internal.KM200SwitchProgramService.determineSwitchNames(KM200SwitchProgramService.java:324) [229:org.openhab.binding.km200:2.3.0.201801141914]
at org.openhab.binding.km200.internal.KM200Comm.initVirtualObjects(KM200Comm.java:461) [229:org.openhab.binding.km200:2.3.0.201801141914]
at org.openhab.binding.km200.handler.KM200GatewayHandler.initialize(KM200GatewayHandler.java:206) [229:org.openhab.binding.km200:2.3.0.201801141914]
2018-01-25 18:19:52.521 [hingStatusInfoChangedEvent] - ‘km200:kmdevice:05086201’ changed from OFFLINE to UNINITIALIZED (HANDLER_INITIALIZING_ERROR)
Switching the program works in general, but the heating always reverts to the old program after a short period of time. When switching the program via the “offical” vendor app. This does not happen.
Any ideas?
My circulating pump for the dwelling hot water (dhw) is attached to the Junkers/Buderus heat source and can be controlled via the controlling device. I can adjust the timing there (when and how often).
How can I controll the dhw circulation pump via openhab while it is still connected to the heat source?
It would be sufficient for me to start and stop circulation pump via open hab.
@juelicher
Oh boy… yes there was a space at the beginning of the key
Its online now
@NCO
Even if its working now. Thats the Java version which seems to be the current version running on OH3
Even if the Thing is online now it doesnt really help. The only thing I can add via PaperUI is the Gateway. The binding docu says there are 11 things. And the channels of the things will be found automatically.
So now I have the gateway online but no access to other things. And the thing I have doesnt has any channels This binding starts getting annoying…