Homematic Variables not working

Hi,

I am trying to get the Homeamatic component working with CCU2 variables. My configuration with HA version 0.60.1 is like this:

homematic:
interfaces:
wireless:
host: 192.168.0.13
resolvenames: json
username: Admin
password: !secret ccu2_password
hosts:
ccu2:
host: 192.168.0.13
username: Admin
password: !secret ccu2_password

All Homematic devices are found with HA, but I can not see any variables if I click in the frontend on the ccu2 entity:

As far as I understand all boolean variables should be automatically detected and shown there.

I also created a Git Issue here but maybe its not a bug.

Any hint what I could do to get variables working?

Thanks!

In addition here is the messages log of my CCU2:

Jan 16 08:48:32 homematic-ccu2 user.err rfd: XmlRpc fault calling system.listMethods({“homeassistant-wireless”}) on http://192.168.0.10:53184/RPC2:[faultCode:1,faultString:"<class ‘TypeError’>:system_listMethods() takes 1 positional argument but 2 were given"]
Jan 16 08:48:33 homematic-ccu2 user.err rfd: XmlRpc fault calling system.listMethods({“homeassistant-ccu2”}) on http://192.168.0.10:53184/RPC2:[faultCode:1,faultString:"<class ‘TypeError’>:system_listMethods() takes 1 positional argument but 2 were given"]
Jan 16 08:48:34 homematic-ccu2 user.err rfd: HSSParameter::GetValue() id=GAS_POWER failed getting physical value.
Jan 16 08:48:34 homematic-ccu2 user.err rfd: HSSParameter::GetValue() id=POWER failed getting physical value.
Jan 16 08:48:34 homematic-ccu2 user.err rfd: HSSParameter::GetValue() id=ENERGY_COUNTER failed getting physical value.
Jan 16 08:48:34 homematic-ccu2 user.err rfd: HSSParameter::GetValue() id=GAS_ENERGY_COUNTER failed getting physical value.
Jan 16 08:48:35 homematic-ccu2 user.err rfd: XmlRpcClient error calling newDevices({“homeassistant-ccu2”,{[ADDRESS:“BidCoS-RF”,CHILDREN:{“BidCoS-RF:0”,“BidCoS-RF:1”,“BidCoS-RF:2”,“BidCoS-RF:3”,“BidCoS-RF:4”,“BidCoS-RF:5”,“BidCoS-RF:6”,“BidCoS-RF:7”,“BidCoS-RF:8”,“BidCoS-RF:9
Jan 16 08:48:35 homematic-ccu2 user.err rfd: XmlRpc fault: [faultCode:1,faultString:”<class ‘KeyError’>:‘resolvenames’"]

I never had a look at the logs of the CCU before. But mine look pretty much the same as yours. And if I recall correctly they can be safely ignored. The reason why your variables are not working might be something different.

How does the firewall configuration in the CCU look like? Mine is like this:

Mine looks the same, expect the IP range: I use 192.168.0.0/16. The friewall should not be the problem…

@danielperna84 which ccu2 version are you using? I am on 2.31.25 with Logikschicht “Standard”

I’m at work at the moment, but I think I have skipped the last two available firmwares. One has been releases quite recently, the other one around November when the was the change from summer- to wintertime. So I’m running what was available before that.

Please set the logging in Home Assistant like this:

logger:
  default: warning
  logs:
    homeassistant.components.homematic: debug
    pyhomematic: debug

Post the full output of the startup of Home Assistant so I can see what is happening during the initialization phase. And also wait for 1-2 minutes, since variables are being polled, which may not be done directly when HA has started.

My homematic environment works with 0.60.1 and 0.61.1.

raspberrymatic - Aktuelle Firmwareversion: 2.29.23.20171118
ccu2 (per site to site VPN) - Aktuelle Firmwareversion: 2.29.23

HA config:

homematic:
  interfaces:
    rf_hhs_rpc:
      host: 192.168.0.6
      resolvenames: json
      username: Admin
      password: !secret homematic_hhs_pw

    rf_hll_rpc:
      host: 192.168.1.6
      resolvenames: json
      username: Admin
      password: !secret homematic_hll_pw

  hosts:
    rf_hhs_ccu:
      host: 192.168.0.6
      username: Admin
      password: !secret homematic_hhs_pw

    rf_hll_ccu:
      host: 192.168.1.6
      username: Admin
      password: !secret homematic_hll_pw

Thanks for the logging hint, I think its a bug in the pyhomematic component:

2018-01-18 09:42:56 DEBUG (SyncWorker_3) [pyhomematic._hm] ServerThread.getAllSystemVariables: Getting all System variables via JSON-RPC
2018-01-18 09:42:56 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: Method: Session.login
2018-01-18 09:42:56 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: API-Endpoint: http://192.168.0.13/api/homematic.cgi
2018-01-18 09:42:56 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: Method: SysVar.getAll
2018-01-18 09:42:56 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: API-Endpoint: http://192.168.0.13/api/homematic.cgi
2018-01-18 09:42:57 ERROR (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: Exception: Invalid \escape: line 1 column 58 (char 57)
2018-01-18 09:42:57 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: Method: Session.logout
2018-01-18 09:42:57 DEBUG (SyncWorker_3) [pyhomematic._hm] RPCFunctions.jsonRpcPost: API-Endpoint: http://192.168.0.13/api/homematic.cgi

I get this messages every minute…

That’s not a bug in pyhomematic, it’s a bug in the CCU. Some people get this error, some not. It’s the CCU that for some reason delivers faulty data. For RaspberryMatic this issue has been adressed already: https://github.com/jens-maus/RaspberryMatic/issues/239
For the regular CCU there’s no other way than waiting for eq3 to provide a patched firmware. This bug has been around for a long time now, so don’t expect this to be solved soon.

just for information, its solved: