I have just updated to the latest snapshot (version via apt-cache: 2.1.0~20170331113737-1) and experience Channel not found for datapoint errors. Others have already experienced the same problem and I already tried the solutions here and here. Before the update my openHAB version was version 2.0 (the release version).
I tried (everything via Paper UI, no *.thing-files involved):
just deleting every Homematic thing and the bridge (recreation with same thing ids) and
then deleting all things and use new thing ids for recreation
However, errors like in the log below still occur:
21:24:31.608 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#RSSI_DEVICE'
21:24:31.616 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#RSSI'
21:24:31.621 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#SIGNAL_STRENGTH'
21:24:31.629 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Double) value '35.0' for 'MEQ0863007:2#ACTUAL_HUMIDITY' from gateway with id 'xxxx'
21:24:31.633 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:2#ACTUAL_HUMIDITY'
21:24:31.640 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Double) value '23.9' for 'MEQ0863007:2#ACTUAL_TEMPERATURE' from gateway with id 'xxxx'
21:24:31.644 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:2#ACTUAL_TEMPERATURE'
21:24:31.648 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Double) value '4.5' for 'MEQ0863007:2#SET_TEMPERATURE' from gateway with id 'xxxx'
21:24:31.654 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:2#SET_TEMPERATURE'
21:24:51.607 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Integer) value '-52' for 'MEQ0863007:0#RSSI_DEVICE' from gateway with id 'xxxx'
21:24:51.611 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#RSSI_DEVICE'
21:24:51.615 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#RSSI'
21:24:51.620 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:0#SIGNAL_STRENGTH'
21:24:51.629 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Integer) value '35' for 'MEQ0863007:1#HUMIDITY' from gateway with id 'xxxx'
21:24:51.633 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:1#HUMIDITY'
21:24:51.636 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Double) value '23.9' for 'MEQ0863007:1#TEMPERATURE' from gateway with id 'xxxx'
21:24:51.641 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0863007:1#TEMPERATURE'
The device in question is a wireless wall thermostat, so it definitely has the humidity and temperature datapoints. I am not sure if a log with TRACE-level output would help, but I could post one if necessary.
The Homematic Binding dynamically adds all the Homematic channels and datapoints at startup to OH2. In the 2.1 version, i’ve implemented some more virtual datapoints. It seems, that the Thing and Channel config is saved by PaperUI and does not match anymore with the new (2.1) Thing/Channels.
It’s better to use things files, i never had this problem with them.
Using thing-files is not a problem for me as almost everything I have except homematic is configured in such files… but actually, the point of openHAB2 and Paper UI was to ease configuration without touching config files in the first place as far as I know.
Okay, I have removed the things from Paper UI and re-added them via one *.things-file. The problem persists, so I would assume that this is definitely not a Paper UI-Problem.
Interestingly, the binding complains about the devices not being present at the gateway first and then finds it after some time. This does not happen for all devices, but it looks like that if this happens, this device is then subject to these datapoint errors.
Log file:
18:22:29.771 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'homematic:HG-HM-Sec-SCo:default:MEQ0907189' changed from ONLINE to OFFLINE (CONFIGURATION_ERROR): Device with address 'MEQ0907189' not found on gateway 'default'
...
18:22:33.290 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'homematic:HG-HM-Sec-SCo:default:MEQ0907189' changed from OFFLINE (CONFIGURATION_ERROR): Device with address 'MEQ0907189' not found on gateway 'default' to ONLINE
18:22:33.292 [DEBUG] [ternal.communicator.HomematicGateway] - Loading values for channel HmChannel[number=7,type=SWITCH_TRANSMIT,initialized=false] of device 'MEQ0864289'
18:22:33.299 [DEBUG] [ternal.communicator.HomematicGateway] - Loading values for channel HmChannel[number=1,type=SHUTTER_CONTACT,initialized=false] of device 'MEQ0907189'
18:22:33.361 [DEBUG] [ematic.handler.HomematicThingHandler] - Initializing thing 'homematic:HG-HM-Sec-SCo:default:MEQ0907189' from gateway 'default'
18:22:33.373 [INFO ] [smarthome.event.ThingUpdatedEvent ] - Thing 'homematic:HG-HM-Sec-SCo:default:MEQ0907189' has been updated.
18:22:33.380 [INFO ] [smarthome.event.ThingUpdatedEvent ] - Thing 'homematic:HG-HM-Sec-SCo:default:MEQ0907189' has been updated.
Edit: to clarify, this does not just only happen with datapoints like RSSI or LOWBAT, but for my wireless wall thermostats with the temperature and humidity datapoints as well.
In the meantime I also tried restarting openHAB, but that does not resolve the problem. Newer snapshots are not yet available on testing, so it seems like I am on the latest snapshot version at the time of writing.
This looks as if OH does not have all the channel types the homematic binding generates. But in the logfile, the binding generates these channel types.
I have no idea, the only way to find it out is that i can access your homegear instance. Would it be possible? I’m testing only the binding startup, i don’t switch or change something.
I just realized that also wall switches and window switches do not work (see log at the end of the post).
So this means the problem may be homegear? Should not be a problem. However, if it is easier for you I also could send you a dump of the homegear database for example.
17:49:06.747 [TRACE] [nicator.server.BinRpcCallbackHandler] - Event BinRpcMessage: system.multicall()
[
{
methodName=event
params=
[
RF-default
LTK0050475:0
RSSI_DEVICE
-69
]
}
]
17:49:06.757 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Integer) value '-69' for 'LTK0050475:0#RSSI_DEVICE' from gateway with id 'default'
17:49:06.763 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:0#RSSI_DEVICE'
17:49:06.767 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:0#RSSI'
17:49:06.771 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:0#SIGNAL_STRENGTH'
17:49:06.840 [TRACE] [nicator.server.BinRpcCallbackHandler] - Event BinRpcMessage: system.multicall()
[
{
methodName=event
params=
[
RF-default
LTK0050475:1
INSTALL_TEST
true
]
}
{
methodName=event
params=
[
RF-default
LTK0050475:1
PRESS_SHORT
true
]
}
]
17:49:06.846 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'true' for 'LTK0050475:1#INSTALL_TEST' from gateway with id 'default'
17:49:06.849 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:1#INSTALL_TEST'
17:49:06.857 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'true' for 'LTK0050475:1#PRESS_SHORT' from gateway with id 'default'
17:49:06.861 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:1#PRESS_SHORT'
17:49:06.864 [DEBUG] [ematic.internal.misc.DelayedExecuter] - Delaying event for 2.0 seconds: 'LTK0050475:1#PRESS_SHORT'
17:49:08.817 [TRACE] [nicator.server.BinRpcCallbackHandler] - Event BinRpcMessage: system.multicall()
[
{
methodName=event
params=
[
RF-default
MEQ0907189:0
RSSI_DEVICE
-58
]
}
]
17:49:08.819 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Integer) value '-58' for 'MEQ0907189:0#RSSI_DEVICE' from gateway with id 'default'
17:49:08.824 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:0#RSSI_DEVICE'
17:49:08.828 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:0#RSSI'
17:49:08.832 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:0#SIGNAL_STRENGTH'
17:49:08.868 [DEBUG] [ematic.internal.misc.DelayedExecuter] - Executing delayed event for 'LTK0050475:1#PRESS_SHORT'
17:49:08.878 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'LTK0050475:1#PRESS_SHORT'
17:49:08.911 [TRACE] [nicator.server.BinRpcCallbackHandler] - Event BinRpcMessage: system.multicall()
[
{
methodName=event
params=
[
RF-default
MEQ0907189:1
LOWBAT
false
]
}
{
methodName=event
params=
[
RF-default
MEQ0907189:1
STATE
true
]
}
]
17:49:08.913 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'false' for 'MEQ0907189:1#LOWBAT' from gateway with id 'default'
17:49:08.916 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:1#LOWBAT'
17:49:08.919 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'true' for 'MEQ0907189:1#STATE' from gateway with id 'default'
17:49:08.926 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:1#STATE'
17:49:10.431 [TRACE] [nicator.server.BinRpcCallbackHandler] - Event BinRpcMessage: system.multicall()
[
{
methodName=event
params=
[
RF-default
MEQ0907189:1
LOWBAT
false
]
}
{
methodName=event
params=
[
RF-default
MEQ0907189:1
STATE
false
]
}
]
17:49:10.433 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'false' for 'MEQ0907189:1#LOWBAT' from gateway with id 'default'
17:49:10.437 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:1#LOWBAT'
17:49:10.443 [DEBUG] [ternal.communicator.HomematicGateway] - Received new (Boolean) value 'false' for 'MEQ0907189:1#STATE' from gateway with id 'default'
17:49:10.449 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'MEQ0907189:1#STATE'
Topic update for anybody having the same problem: after some investigation with gerrieg, current state is that it is not Homegear’s fault and even reinstalling Homegear and OpenHAB did not yet resolve the problem.
it seems, that the error is device independend. I have this problem with thremostats:
> 18:06:05.365 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:0#RSSI_DEVICE'
> 18:06:05.368 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:0#RSSI'
> 18:06:05.370 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:0#SIGNAL_STRENGTH'
> 18:06:05.399 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#ACTUAL_TEMPERATURE'
> 18:06:05.402 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#BATTERY_STATE'
> 18:06:05.405 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#BOOST_STATE'
> 18:06:05.408 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#CONTROL_MODE'
> 18:06:05.411 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#FAULT_REPORTING'
> 18:06:05.413 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#PARTY_START_TIME'
> 18:06:05.416 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#SET_TEMPERATURE'
> 18:06:05.418 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...4:4#VALVE_STATE'
> 18:06:22.105 [INFO ] [marthome.event.ItemStateChangedEvent] - Today changed from 2017-04-23T18:05:22.056+0200 to 2017-04-23T18:06:22.056+0200
> 18:07:06.787 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:0#RSSI_DEVICE'
> 18:07:06.791 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:0#RSSI'
> 18:07:06.793 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:0#SIGNAL_STRENGTH'
> 18:07:06.810 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#ACTUAL_TEMPERATURE'
> 18:07:06.813 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#BATTERY_STATE'
> 18:07:06.816 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#BOOST_STATE'
> 18:07:06.818 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#CONTROL_MODE'
> 18:07:06.821 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#FAULT_REPORTING'
> 18:07:06.824 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#PARTY_START_TIME'
> 18:07:06.827 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#SET_TEMPERATURE'
> 18:07:06.830 [WARN ] [ematic.handler.HomematicThingHandler] - Channel not found for datapoint 'NEQ...5:4#VALVE_STATE'
Thermostats are configured vie *.things file. And i’m using homegear.
Restarting openHAB results in the same error. Sometimes for one, sometimes for another thermostat.
Last restart produced errors for both. I’ve tried to clear the cache without any success.
I had a conversion with @gerrieg about that… It seems to be a timing issue at startup, and I sometimes have it for one device, at next startup for another or sometimes even for none of my devices. Cleanly setting up homegear or even OpenHAB2 did not work. In some testing with gerrieg we could confirm that if you setup OpenHAB2 on e.g. a PC (something that is faster than a RasperryPi in my case) that indeed the errors vanish.
i’m running OH2 on Raspberry also. I took a look into source code. Thing - initialize method try to update configuration from another thread. May be the problem reside here. And update configuration should be syncronized.
BTW. I got the same problem on my 6 year old laptop, not tried on newer one
Thanks for letting me know!
Gerhard sent me a debug version before he went on holidays fixing this issue (but fortunately not in every case), but I am glad that you found out what may be the issue.
Maybe this helps in fixing this one and for all, but I haven’t tried so far as I am glad that the system keeps running without any other problems for the moment being
i found the reason, why i had RPC server errors: callbackHost was wrong in Homegear bridge.
I’ve copied the configuration from Raspberry to my Laptop for better debugging and forgot to change it.
Seems to run so far. I’ll test it a little bit longer now.
i think i got it. Simply removing a thread in BridgeHandler worked not stable. I’ll test it on my Raspberry today. And, if the test was successful, i will make a PR to your homematic branch today. It should be tested on CCU also: i’ve Homegeear only. If it works @Kai should be happy with a solution