Ankündigung

Einklappen
Keine Ankündigung bisher.

Homematic binding Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Homematic binding Problem

    Hallo Leute,
    ich versuche bei mir Homematic ins opbenHAB zu integrieren.
    Leider erhalte ich folgende Fehlermeldung
    Code:
    Can't find DatapointConfig[address=JEQ0054923,channel=1,parameter=STATE], value is not published to CCU!
    ich glaube aber das es schon ehr an meiner ccu liegt. Ich habe die CCU1.
    In der Doku von openHAB steht:
    Code:
    Requirements: CCU1 or CCU2
    These ports are used by the binding:
    TclRegaScript (required): 8181
    und da gehts auch schon los.
    der Port 8181 ist auf meiner CCU nicht offen.

    Wo kriege ich das TCLRegaScript her? Offensichtlich sehe ich den Wald vor lauter Bäumen nicht.

    Die CCU läuft mit der Version 1.515 und hat nur diesen einen Aktor.

    Ich bin für jede Erleuchtung dankbar.

    mfg
    stefan

    #2
    Hallo Stefan!

    Ohne Logfile kann ich da nicht viel sagen. Welche Version verwendest Du vom Binding? Wenn Du 1.5 verwendest, kannst Du auch die 1.6'er Version probieren, die ist stabil und funktioniert auch mit 1.5.

    Habe dieses Problem im Wiki dokumentiert inkl. Lösungsvorschläge: https://github.com/openhab/openhab/w...atapointconfig

    Check das bitte alles noch mal durch. Wenn es trotzdem nicht klappt, dann schick mir einfach wie im Wiki beschrieben den Trace.

    LG
    Gerhard

    Kommentar


      #3
      Danke für die schnelle Hilfe.
      Also, ich hab nun noch die 1.6 Version heruntergeladen und das .jar file in das addons Verzeichnis kopiert.

      Ich habe die openhab.cfg angepasst und die führende Leertaste entfernt
      Code:
      # Hostname / IP address of the Homematic CCU
      homematic:host=192.168.1.8
      die item.demo hat folgenden zusätzlichen Eintrag erhalten:
      Code:
      Switch Anyitem (GF_Kitchen) {homematic="address=JEQ0054923, channel=1, parameter=STATE"}
      Die console gibt nach dem start folgendes aus: (hab einmal den Aktor an und ausgeschalten)
      Code:
      Stefans-Mac-mini:distribution-1.5.1-runtime shb$ ./start.sh 
      Launching the openHAB runtime...
      osgi> 16:58:49.428 INFO  o.o.c.internal.CoreActivator[:61] - openHAB runtime has been started (v1.5.1).
      16:58:50.166 INFO  o.o.i.t.mqtt.MqttService[:106] - MQTT Service initialization completed.
      16:58:50.166 INFO  o.o.i.t.m.i.MqttBrokerConnection[:112] - Starting MQTT broker connection 'broker'
      16:58:50.899 INFO  o.o.i.s.i.DiscoveryServiceImpl[:72] - mDNS service has been started
      16:58:51.516 INFO  o.o.io.rest.RESTApplication[:143] - Started REST API at /rest
      16:58:59.920 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'demo.sitemap'
      16:59:00.064 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'db4o.persist'
      16:59:00.081 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'exec.persist'
      16:59:00.084 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'logging.persist'
      16:59:00.090 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'rrd4j.persist'
      16:59:00.130 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'demo.script'
      16:59:00.201 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'demo.items'
      16:59:01.244 INFO  o.o.u.w.i.s.WebAppServlet[:79] - Started Classic UI at /openhab.app
      16:59:04.899 INFO  o.o.c.s.AbstractActiveService[:169] - NTP Refresh Service has been started
      16:59:04.914 INFO  o.o.c.s.AbstractActiveService[:169] - HTTP Refresh Service has been started
      16:59:04.937 DEBUG o.o.b.h.i.b.HomematicActivator[:33] - Homematic binding has been started.
      16:59:04.974 DEBUG o.o.b.h.i.b.HomematicGenericBindingProvider[:63] - Adding item Anyitem with DatapointConfig[address=JEQ0054923,channel=1,parameter=STATE]
      16:59:04.986 INFO  runtime.busevents[:26] - Date state updated to 2014-10-20T16:59:04
      16:59:04.986 WARN  o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 192.168.2.1 with 172.16.65.1
      16:59:04.987 WARN  o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 172.16.65.1 with 192.168.1.5
      16:59:04.987 WARN  o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 192.168.1.5 with 169.254.50.200
      16:59:04.987 INFO  o.o.b.h.i.bus.HomematicBinding[:92] - HomematicConfig[host=192.168.1.8,callbackHost=169.254.50.200,callbackPort=9123,aliveInterval=300]
      16:59:04.987 INFO  o.o.b.h.i.c.HomematicCommunicator[:66] - Starting Homematic communicator
      16:59:04.989 DEBUG o.o.b.h.i.c.ItemDisabler[:54] - Starting ItemDisabler
      16:59:04.994 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=getDeviceDescription,args={BidCoS-RF}]
      16:59:05.042 TRACE o.o.b.h.i.c.c.BinRpcClient[:199] - Client BinRpcResponse: {
      	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
      		BidCoS-RF:10
      		BidCoS-RF:11
      		BidCoS-RF:12
      		BidCoS-RF:13
      		BidCoS-RF:14
      		BidCoS-RF:15
      		BidCoS-RF:16
      		BidCoS-RF:17
      		BidCoS-RF:18
      		BidCoS-RF:19
      		BidCoS-RF:20
      		BidCoS-RF:21
      		BidCoS-RF:22
      		BidCoS-RF:23
      		BidCoS-RF:24
      		BidCoS-RF:25
      		BidCoS-RF:26
      		BidCoS-RF:27
      		BidCoS-RF:28
      		BidCoS-RF:29
      		BidCoS-RF:30
      		BidCoS-RF:31
      		BidCoS-RF:32
      		BidCoS-RF:33
      		BidCoS-RF:34
      		BidCoS-RF:35
      		BidCoS-RF:36
      		BidCoS-RF:37
      		BidCoS-RF:38
      		BidCoS-RF:39
      		BidCoS-RF:40
      		BidCoS-RF:41
      		BidCoS-RF:42
      		BidCoS-RF:43
      		BidCoS-RF:44
      		BidCoS-RF:45
      		BidCoS-RF:46
      		BidCoS-RF:47
      		BidCoS-RF:48
      		BidCoS-RF:49
      		BidCoS-RF:50
      	]
      	FIRMWARE=1.515
      	FLAGS=9
      	INTERFACE=IEQ0093945
      	PARAMSETS=
      	[
      		MASTER
      	]
      	PARENT=
      	RF_ADDRESS=1461353
      	ROAMING=0
      	TYPE=HM-RCV-50
      	VERSION=6
      }
      
      16:59:05.043 INFO  o.o.b.h.i.c.HomematicCommunicator[:76] - Homematic ServerId[name=CCU,version=1.515,address=IEQ0093945]
      16:59:05.046 INFO  o.o.b.h.i.c.client.CcuClient[:78] - Starting CcuClient
      16:59:05.046 DEBUG o.o.b.h.i.c.c.BinRpcClient[:44] - Starting BinRpcClient
      16:59:05.062 INFO  o.o.b.h.i.c.StateHolder[:83] - Loading Homematic datapoints
      16:59:05.063 TRACE o.o.b.h.i.c.client.CcuClient[:275] - TclRegaScript: string dev_id;
      string channel_id;
      string dp_id;
      Write('<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>\n');
      Write("<devices>\n");
      foreach (dev_id, root.Devices().EnumUsedIDs()) {
        object dev_obj = dom.GetObject(dev_id);
        string dev_interface= dev_obj.Interface();
        string interface_name = dom.GetObject(dev_interface).Name();
        boolean is_ready = dev_obj.ReadyConfig();
        if(is_ready && 
           (dev_obj.HssType() != "HMW-RCV-50")) {
      
          Write("  <device");
          Write(" address='"); WriteXML(dev_obj.Address());
          Write("' interface='"); WriteXML(interface_name);
          Write("' type='"); WriteXML(dev_obj.HssType());
      	Write("'>\n");
          foreach(channel_id, dev_obj.Channels()) {
            object channel_obj = dom.GetObject(channel_id);
      
            Write("    <channel");
            Write(" number='"); WriteXML(channel_obj.Address().StrValueByIndex(":",1));
            Write("'>\n");
            
            object boot_dp = channel_obj.DPByHssDP("BOOT");
            if (boot_dp) {
              Write("      <datapoint");
              Write(" name='BOOT'");
              Write(" value='false'");
       	    Write(" valueType='" # boot_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object work_dp = channel_obj.DPByHssDP("WORKING");
            if (work_dp) {
              Write("      <datapoint");
              Write(" name='WORKING'");
              Write(" value='false'");
       	    Write(" valueType='" # work_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object dir_dp = channel_obj.DPByHssDP("DIRECTION");
            if (dir_dp) {
              Write("      <datapoint");
              Write(" name='DIRECTION'")
              Write(" value='0'");
       	    Write(" valueType='" # dir_dp.ValueType());
              Write("' subType='"); WriteXML(dir_dp.ValueSubType());
              Write("' valueList='" # dir_dp.ValueList());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object install_test_dp = channel_obj.DPByHssDP("INSTALL_TEST");
            if (install_test_dp) {
              Write("      <datapoint");
              Write(" name='INSTALL_TEST'")
              Write(" value='false'");
       	    Write(" valueType='" # install_test_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object press_long_release_dp = channel_obj.DPByHssDP("PRESS_LONG_RELEASE");
            if (press_long_release_dp) {
              Write("      <datapoint");
              Write(" name='PRESS_LONG_RELEASE'")
              Write(" value='false'");
       	    Write(" valueType='" # press_long_release_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object press_cont = channel_obj.DPByHssDP("PRESS_CONT");
            if (press_cont) {
              Write("      <datapoint");
              Write(" name='PRESS_CONT'")
              Write(" value='false'");
              Write(" valueType='" # press_cont.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object humidityF = channel_obj.DPByHssDP("HUMIDITYF");
            if (humidityF) {
              Write("      <datapoint");
              Write(" name='HUMIDITYF'")
              Write(" value='"); WriteXML(humidityF.Value());
              Write("' valueType='" # humidityF.ValueType());
              Write("' min='" # humidityF.ValueMin());
              Write("' max='" # humidityF.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object lastTicks = channel_obj.DPByHssDP("LAST_TICKS");
            if (lastTicks) {
              Write("      <datapoint");
              Write(" name='LAST_TICKS'")
              Write(" value='"); WriteXML(lastTicks.Value());
              Write("' valueType='" # lastTicks.ValueType());
              Write("' min='" # lastTicks.ValueMin());
              Write("' max='" # lastTicks.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object unitSpturn = channel_obj.DPByHssDP("UNITSPTURN");
            if (unitSpturn) {
              Write("      <datapoint");
              Write(" name='UNITSPTURN'")
              Write(" value='"); WriteXML(unitSpturn.Value());
              Write("' valueType='" # unitSpturn.ValueType());
              Write("' min='" # unitSpturn.ValueMin());
              Write("' max='" # unitSpturn.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
      
            foreach(dp_id, channel_obj.DPs().EnumUsedIDs()) {
              object dp_obj = dom.GetObject(dp_id);
              if(dp_obj) {
                string name = dp_obj.Name().StrValueByIndex(".",2);
                if (name != "") {
                  Write("      <datapoint");
                  Write(" name='"); WriteXML(name);
                  Write("' value='"); WriteXML(dp_obj.Value());
                  Write("' valueType='" # dp_obj.ValueType());
                  if (dp_obj.ValueType() == 16) {
                    Write("' subType='"); WriteXML(dp_obj.ValueSubType());
                    Write("' valueList='" # dp_obj.ValueList());
                  }
                  if ((dp_obj.ValueType() != 2) && (dp_obj.ValueType() != 20)) {
                    Write("' min='" # dp_obj.ValueMin());
                    Write("' max='" # dp_obj.ValueMax());
                  }
                  Write("' writeable='");
                  integer dp_operations = dp_obj.Operations();
                  boolean writeable = dp_operations & OPERATION_WRITE;
                  if (writeable) {
                    Write("true");
                  }
                  else {
                    Write("false");
                  }
                  Write("' />\n");
                }
              }
            }
            Write("    </channel>\n");
          }
          Write("  </device>\n");
        }
      }
      Write("</devices>");
      16:59:05.279 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      16:59:06.871 TRACE o.o.b.h.i.c.client.CcuClient[:286] - Result TclRegaScript: <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
      <devices>
        <device address='System' interface='System' type='HM-CCU-1'>
          <channel number='1'>
            <datapoint name='U_SOURCE_FAIL' value='false' valueType='2' writeable='false' />
            <datapoint name='LOWBAT' value='true' valueType='2' writeable='false' />
            <datapoint name='U_USBD_OK' value='false' valueType='2' writeable='false' />
            <datapoint name='BAT_LEVEL' value='0.000000' valueType='4' min='0.000000' max='1.000000' writeable='false' />
          </channel>
          <channel number='2'>
            <datapoint name='SHAKING' value='' valueType='2' writeable='false' />
          </channel>
        </device>
        <device address='JEQ0054923' interface='BidCos-RF' type='HM-LC-Sw1-Pl'>
          <channel number='0'>
            <datapoint name='UNREACH' value='false' valueType='2' writeable='false' />
            <datapoint name='STICKY_UNREACH' value='false' valueType='2' writeable='true' />
            <datapoint name='CONFIG_PENDING' value='false' valueType='2' writeable='false' />
            <datapoint name='LOWBAT' value='false' valueType='2' writeable='false' />
            <datapoint name='DUTYCYCLE' value='false' valueType='2' writeable='false' />
            <datapoint name='RSSI_DEVICE' value='1' valueType='8' min='-2147483648' max='2147483647' writeable='false' />
            <datapoint name='RSSI_PEER' value='193' valueType='8' min='-2147483648' max='2147483647' writeable='false' />
          </channel>
          <channel number='1'>
            <datapoint name='WORKING' value='false' valueType='2' writeable='false' />
            <datapoint name='INSTALL_TEST' value='false' valueType='2' writeable='false' />
            <datapoint name='STATE' value='false' valueType='2' writeable='true' />
            <datapoint name='ON_TIME' value='' valueType='4' min='0.000000' max='85825945.500000' writeable='true' />
            <datapoint name='INHIBIT' value='false' valueType='2' writeable='true' />
          </channel>
        </device>
        <device address='BidCoS-RF' interface='BidCos-RF' type='HM-RCV-50'>
          <channel number='0'>
            <datapoint name='INSTALL_MODE' value='false' valueType='2' writeable='true' />
          </channel>
          <channel number='1'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='2'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='3'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='4'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='5'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='6'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='7'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='8'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='9'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='10'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='11'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='12'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='13'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='14'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='15'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='16'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='17'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='18'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='19'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='20'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='21'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='22'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='23'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='24'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='25'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='26'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='27'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='28'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='29'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='30'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='31'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='32'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='33'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='34'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='35'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='36'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='37'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='38'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='39'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='40'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='41'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='42'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='43'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='44'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='45'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='46'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='47'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='48'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='49'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='50'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
        </device>
      </devices>
      16:59:06.915 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=rssiInfo,args={}]
      16:59:06.924 TRACE o.o.b.h.i.c.c.BinRpcClient[:199] - Client BinRpcResponse: {
      	JEQ0054923=
      	{
      		UNKNOWN=
      		[
      			65536
      			-63
      		]
      	}
      	UNKNOWN=
      	{
      		JEQ0054923=
      		[
      			-63
      			65536
      		]
      	}
      }
      
      16:59:06.926 INFO  o.o.b.h.i.c.StateHolder[:91] - Finished loading 168 Homematic datapoints
      16:59:06.927 INFO  o.o.b.h.i.c.StateHolder[:187] - Loading Homematic Server variables
      16:59:06.927 TRACE o.o.b.h.i.c.client.CcuClient[:275] - TclRegaScript: object var_obj;
      string sys_var_id;
      Write('<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>\n');
      Write("<variablelist>\n");
      foreach (sys_var_id, dom.GetObject(ID_SYSTEM_VARIABLES).EnumUsedIDs()) {
        var_obj = dom.GetObject(sys_var_id);
        if (var_obj.Visible() == true) {
          Write("  <variable");
          Write(" name='"); WriteXML(var_obj.Name());
          Write("' value='"); WriteXML(var_obj.Value());
          Write("' valueType='"); WriteXML(var_obj.ValueType());
          if (var_obj.ValueType() == 16) {
            Write("' subType='"); WriteXML(var_obj.ValueSubType());
            Write("' valueList='" # var_obj.ValueList());
          }
          if ((var_obj.ValueType() != 2) && (var_obj.ValueType() != 20)) {
            Write("' min='" # var_obj.ValueMin());
            Write("' max='" # var_obj.ValueMax());
          }
          Write("' writeable='true'");
          Write(" />\n");
        }
      }
      Write("</variablelist>");
      16:59:06.967 TRACE o.o.b.h.i.c.client.CcuClient[:286] - Result TclRegaScript: <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
      <variablelist>
        <variable name='Alarmzone 1' value='' valueType='2' writeable='true' />
        <variable name='Anwesenheit' value='true' valueType='2' writeable='true' />
      </variablelist>
      16:59:06.974 INFO  o.o.b.h.i.c.StateHolder[:196] - Finished loading 2 Homematic server variables
      16:59:06.974 INFO  o.o.b.h.i.c.s.BinRpcCallbackServer[:44] - Starting BinRpcCallbackServer at port 9123
      16:59:06.976 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}]
      16:59:10.302 INFO  o.o.m.c.i.ModelRepositoryImpl[:79] - Loading model 'demo.rules'
      16:59:10.846 ERROR o.o.m.r.i.engine.RuleEngine[:267] - Error during the execution of startup rule 'Initialize light states': Could not invoke method: org.openhab.model.script.actions.BusEvent.postUpdate(org.openhab.core.items.Item,java.lang.Number) on instance: null
      16:59:10.933 ERROR o.o.m.r.i.engine.RuleEngine[:267] - Error during the execution of startup rule 'Initialize heating states': Could not invoke method: org.openhab.model.script.actions.BusEvent.postUpdate(org.openhab.core.items.Item,java.lang.Number) on instance: null
      16:59:11.019 ERROR o.o.m.r.i.engine.RuleEngine[:267] - Error during the execution of startup rule 'Initialize contact states': Could not invoke method: org.openhab.model.script.actions.BusEvent.postUpdate(org.openhab.core.items.Item,java.lang.Number) on instance: null
      16:59:11.102 INFO  runtime.busevents[:26] - Temperature_GF_Corridor state updated to 19.70000000
      16:59:11.110 INFO  runtime.busevents[:26] - Temperature_GF_Toilet state updated to 18.30000000
      16:59:11.114 INFO  runtime.busevents[:26] - Temperature_GF_Living state updated to 18.10000000
      16:59:11.117 INFO  runtime.busevents[:26] - Temperature_GF_Kitchen state updated to 20.90000000
      16:59:11.122 INFO  runtime.busevents[:26] - Temperature_FF_Bath state updated to 18.00000000
      16:59:11.123 INFO  runtime.busevents[:26] - Temperature_FF_Office state updated to 21.60000000
      16:59:11.127 INFO  runtime.busevents[:26] - Temperature_FF_Child state updated to 19.90000000
      16:59:11.131 INFO  runtime.busevents[:26] - Temperature_FF_Bed state updated to 22.40000000
      16:59:11.211 INFO  runtime.busevents[:26] - Weather_Temp_Max state updated to 17
      16:59:11.247 INFO  runtime.busevents[:26] - Weather_Temp_Min state updated to 15
      16:59:11.987 ERROR o.o.b.h.i.c.HomematicCommunicator[:93] - Could not start Homematic communicator: Read timed out (sending BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}])
      org.openhab.binding.homematic.internal.communicator.client.HomematicClientException: Read timed out (sending BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}])
      	at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:224)
      Caused by: java.net.SocketTimeoutException: Read timed out
      	at java.net.SocketInputStream.socketRead0(Native Method)
      16:59:11.987 INFO  o.o.b.h.i.c.HomematicCommunicator[:120] - Shutting down Homematic communicator
      16:59:11.988 DEBUG o.o.b.h.i.c.s.BinRpcCallbackServer[:55] - Shutting down BinRpcCallbackServer
      16:59:11.988 DEBUG o.o.b.h.i.c.s.BinRpcNetworkService[:69] - Shutting down BinRpcNetworkService
      16:59:11.988 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123}]
      16:59:16.998 DEBUG o.o.b.h.i.c.ItemDisabler[:63] - Stopping ItemDisabler
      16:59:16.999 INFO  o.o.c.s.AbstractActiveService[:169] - Homematic server keep alive thread has been started
      16:59:20.002 WARN  o.o.b.h.i.c.HomematicCommunicator[:212] - Can't find DatapointConfig[address=JEQ0054923,channel=1,parameter=STATE], value is not published to openHAB!
      17:00:00.058 INFO  runtime.busevents[:26] - Temperature_GF_Corridor state updated to 20.80000000
      17:00:00.061 INFO  runtime.busevents[:26] - Temperature_GF_Toilet state updated to 21.10000000
      17:00:00.065 INFO  runtime.busevents[:26] - Temperature_GF_Living state updated to 20.60000000
      17:00:00.068 INFO  runtime.busevents[:26] - Temperature_GF_Kitchen state updated to 20.80000000
      17:00:00.071 INFO  runtime.busevents[:26] - Temperature_FF_Bath state updated to 18.90000000
      17:00:00.074 INFO  runtime.busevents[:26] - Temperature_FF_Office state updated to 18.90000000
      17:00:00.077 INFO  runtime.busevents[:26] - Temperature_FF_Child state updated to 21.60000000
      17:00:00.081 INFO  runtime.busevents[:26] - Temperature_FF_Bed state updated to 20.00000000
      17:00:05.596 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:00:05.616 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:00:05
      17:00:14.877 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.882 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.883 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.888 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.893 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.896 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.906 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.909 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.922 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.923 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.924 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.925 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.926 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.927 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.928 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:14.929 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:17.582 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:20.805 INFO  runtime.busevents[:22] - Anyitem received command ON
      17:00:20.811 DEBUG o.o.b.h.i.c.HomematicCommunicator[:229] - Received command ON for item Anyitem
      17:00:20.812 WARN  o.o.b.h.i.c.HomematicCommunicator[:252] - Can't find DatapointConfig[address=JEQ0054923,channel=1,parameter=STATE], value is not published to Homematic server!
      17:00:20.813 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:21.139 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:21.156 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:23.840 INFO  runtime.busevents[:22] - Anyitem received command OFF
      17:00:23.844 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:00:23.851 DEBUG o.o.b.h.i.c.HomematicCommunicator[:229] - Received command OFF for item Anyitem
      17:00:23.851 WARN  o.o.b.h.i.c.HomematicCommunicator[:252] - Can't find DatapointConfig[address=JEQ0054923,channel=1,parameter=STATE], value is not published to Homematic server!
      17:00:23.854 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:01:06.142 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:01:06.144 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:01:06
      17:02:06.530 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:02:06.532 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:02:06
      17:03:06.883 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:03:06.886 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:03:06
      17:04:07.274 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:04:07.276 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:04:07
      17:04:16.999 INFO  o.o.b.h.i.bus.HomematicBinding[:192] - No event since 312 seconds, refreshing Homematic server connections
      17:04:16.999 INFO  o.o.b.h.i.c.HomematicCommunicator[:66] - Starting Homematic communicator
      17:04:16.999 DEBUG o.o.b.h.i.c.ItemDisabler[:54] - Starting ItemDisabler
      17:04:17.000 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=getDeviceDescription,args={BidCoS-RF}]
      17:04:17.048 TRACE o.o.b.h.i.c.c.BinRpcClient[:199] - Client BinRpcResponse: {
      	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
      		BidCoS-RF:10
      		BidCoS-RF:11
      		BidCoS-RF:12
      		BidCoS-RF:13
      		BidCoS-RF:14
      		BidCoS-RF:15
      		BidCoS-RF:16
      		BidCoS-RF:17
      		BidCoS-RF:18
      		BidCoS-RF:19
      		BidCoS-RF:20
      		BidCoS-RF:21
      		BidCoS-RF:22
      		BidCoS-RF:23
      		BidCoS-RF:24
      		BidCoS-RF:25
      		BidCoS-RF:26
      		BidCoS-RF:27
      		BidCoS-RF:28
      		BidCoS-RF:29
      		BidCoS-RF:30
      		BidCoS-RF:31
      		BidCoS-RF:32
      		BidCoS-RF:33
      		BidCoS-RF:34
      		BidCoS-RF:35
      		BidCoS-RF:36
      		BidCoS-RF:37
      		BidCoS-RF:38
      		BidCoS-RF:39
      		BidCoS-RF:40
      		BidCoS-RF:41
      		BidCoS-RF:42
      		BidCoS-RF:43
      		BidCoS-RF:44
      		BidCoS-RF:45
      		BidCoS-RF:46
      		BidCoS-RF:47
      		BidCoS-RF:48
      		BidCoS-RF:49
      		BidCoS-RF:50
      	]
      	FIRMWARE=1.515
      	FLAGS=9
      	INTERFACE=IEQ0093945
      	PARAMSETS=
      	[
      		MASTER
      	]
      	PARENT=
      	RF_ADDRESS=1461353
      	ROAMING=0
      	TYPE=HM-RCV-50
      	VERSION=6
      }
      
      17:04:17.048 INFO  o.o.b.h.i.c.HomematicCommunicator[:76] - Homematic ServerId[name=CCU,version=1.515,address=IEQ0093945]
      17:04:17.048 INFO  o.o.b.h.i.c.client.CcuClient[:78] - Starting CcuClient
      17:04:17.048 DEBUG o.o.b.h.i.c.c.BinRpcClient[:44] - Starting BinRpcClient
      17:04:17.051 INFO  o.o.b.h.i.c.StateHolder[:83] - Loading Homematic datapoints
      17:04:17.052 TRACE o.o.b.h.i.c.client.CcuClient[:275] - TclRegaScript: string dev_id;
      string channel_id;
      string dp_id;
      Write('<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>\n');
      Write("<devices>\n");
      foreach (dev_id, root.Devices().EnumUsedIDs()) {
        object dev_obj = dom.GetObject(dev_id);
        string dev_interface= dev_obj.Interface();
        string interface_name = dom.GetObject(dev_interface).Name();
        boolean is_ready = dev_obj.ReadyConfig();
        if(is_ready && 
           (dev_obj.HssType() != "HMW-RCV-50")) {
      
          Write("  <device");
          Write(" address='"); WriteXML(dev_obj.Address());
          Write("' interface='"); WriteXML(interface_name);
          Write("' type='"); WriteXML(dev_obj.HssType());
      	Write("'>\n");
          foreach(channel_id, dev_obj.Channels()) {
            object channel_obj = dom.GetObject(channel_id);
      
            Write("    <channel");
            Write(" number='"); WriteXML(channel_obj.Address().StrValueByIndex(":",1));
            Write("'>\n");
            
            object boot_dp = channel_obj.DPByHssDP("BOOT");
            if (boot_dp) {
              Write("      <datapoint");
              Write(" name='BOOT'");
              Write(" value='false'");
       	    Write(" valueType='" # boot_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object work_dp = channel_obj.DPByHssDP("WORKING");
            if (work_dp) {
              Write("      <datapoint");
              Write(" name='WORKING'");
              Write(" value='false'");
       	    Write(" valueType='" # work_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object dir_dp = channel_obj.DPByHssDP("DIRECTION");
            if (dir_dp) {
              Write("      <datapoint");
              Write(" name='DIRECTION'")
              Write(" value='0'");
       	    Write(" valueType='" # dir_dp.ValueType());
              Write("' subType='"); WriteXML(dir_dp.ValueSubType());
              Write("' valueList='" # dir_dp.ValueList());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object install_test_dp = channel_obj.DPByHssDP("INSTALL_TEST");
            if (install_test_dp) {
              Write("      <datapoint");
              Write(" name='INSTALL_TEST'")
              Write(" value='false'");
       	    Write(" valueType='" # install_test_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object press_long_release_dp = channel_obj.DPByHssDP("PRESS_LONG_RELEASE");
            if (press_long_release_dp) {
              Write("      <datapoint");
              Write(" name='PRESS_LONG_RELEASE'")
              Write(" value='false'");
       	    Write(" valueType='" # press_long_release_dp.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object press_cont = channel_obj.DPByHssDP("PRESS_CONT");
            if (press_cont) {
              Write("      <datapoint");
              Write(" name='PRESS_CONT'")
              Write(" value='false'");
              Write(" valueType='" # press_cont.ValueType());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object humidityF = channel_obj.DPByHssDP("HUMIDITYF");
            if (humidityF) {
              Write("      <datapoint");
              Write(" name='HUMIDITYF'")
              Write(" value='"); WriteXML(humidityF.Value());
              Write("' valueType='" # humidityF.ValueType());
              Write("' min='" # humidityF.ValueMin());
              Write("' max='" # humidityF.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object lastTicks = channel_obj.DPByHssDP("LAST_TICKS");
            if (lastTicks) {
              Write("      <datapoint");
              Write(" name='LAST_TICKS'")
              Write(" value='"); WriteXML(lastTicks.Value());
              Write("' valueType='" # lastTicks.ValueType());
              Write("' min='" # lastTicks.ValueMin());
              Write("' max='" # lastTicks.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
            object unitSpturn = channel_obj.DPByHssDP("UNITSPTURN");
            if (unitSpturn) {
              Write("      <datapoint");
              Write(" name='UNITSPTURN'")
              Write(" value='"); WriteXML(unitSpturn.Value());
              Write("' valueType='" # unitSpturn.ValueType());
              Write("' min='" # unitSpturn.ValueMin());
              Write("' max='" # unitSpturn.ValueMax());
              Write("' writeable='false'");
              Write(" />\n");
            }
      
            foreach(dp_id, channel_obj.DPs().EnumUsedIDs()) {
              object dp_obj = dom.GetObject(dp_id);
              if(dp_obj) {
                string name = dp_obj.Name().StrValueByIndex(".",2);
                if (name != "") {
                  Write("      <datapoint");
                  Write(" name='"); WriteXML(name);
                  Write("' value='"); WriteXML(dp_obj.Value());
                  Write("' valueType='" # dp_obj.ValueType());
                  if (dp_obj.ValueType() == 16) {
                    Write("' subType='"); WriteXML(dp_obj.ValueSubType());
                    Write("' valueList='" # dp_obj.ValueList());
                  }
                  if ((dp_obj.ValueType() != 2) && (dp_obj.ValueType() != 20)) {
                    Write("' min='" # dp_obj.ValueMin());
                    Write("' max='" # dp_obj.ValueMax());
                  }
                  Write("' writeable='");
                  integer dp_operations = dp_obj.Operations();
                  boolean writeable = dp_operations & OPERATION_WRITE;
                  if (writeable) {
                    Write("true");
                  }
                  else {
                    Write("false");
                  }
                  Write("' />\n");
                }
              }
            }
            Write("    </channel>\n");
          }
          Write("  </device>\n");
        }
      }
      Write("</devices>");
      17:04:18.651 TRACE o.o.b.h.i.c.client.CcuClient[:286] - Result TclRegaScript: <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
      <devices>
        <device address='System' interface='System' type='HM-CCU-1'>
          <channel number='1'>
            <datapoint name='U_SOURCE_FAIL' value='false' valueType='2' writeable='false' />
            <datapoint name='LOWBAT' value='true' valueType='2' writeable='false' />
            <datapoint name='U_USBD_OK' value='false' valueType='2' writeable='false' />
            <datapoint name='BAT_LEVEL' value='0.000000' valueType='4' min='0.000000' max='1.000000' writeable='false' />
          </channel>
          <channel number='2'>
            <datapoint name='SHAKING' value='' valueType='2' writeable='false' />
          </channel>
        </device>
        <device address='JEQ0054923' interface='BidCos-RF' type='HM-LC-Sw1-Pl'>
          <channel number='0'>
            <datapoint name='UNREACH' value='false' valueType='2' writeable='false' />
            <datapoint name='STICKY_UNREACH' value='false' valueType='2' writeable='true' />
            <datapoint name='CONFIG_PENDING' value='false' valueType='2' writeable='false' />
            <datapoint name='LOWBAT' value='false' valueType='2' writeable='false' />
            <datapoint name='DUTYCYCLE' value='false' valueType='2' writeable='false' />
            <datapoint name='RSSI_DEVICE' value='1' valueType='8' min='-2147483648' max='2147483647' writeable='false' />
            <datapoint name='RSSI_PEER' value='193' valueType='8' min='-2147483648' max='2147483647' writeable='false' />
          </channel>
          <channel number='1'>
            <datapoint name='WORKING' value='false' valueType='2' writeable='false' />
            <datapoint name='INSTALL_TEST' value='false' valueType='2' writeable='false' />
            <datapoint name='STATE' value='false' valueType='2' writeable='true' />
            <datapoint name='ON_TIME' value='' valueType='4' min='0.000000' max='85825945.500000' writeable='true' />
            <datapoint name='INHIBIT' value='false' valueType='2' writeable='true' />
          </channel>
        </device>
        <device address='BidCoS-RF' interface='BidCos-RF' type='HM-RCV-50'>
          <channel number='0'>
            <datapoint name='INSTALL_MODE' value='false' valueType='2' writeable='true' />
          </channel>
          <channel number='1'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='2'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='3'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='4'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='5'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='6'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='7'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='8'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='9'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='10'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='11'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='12'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='13'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='14'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='15'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='16'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='17'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='18'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='19'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='20'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='21'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='22'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='23'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='24'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='25'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='26'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='27'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='28'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='29'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='30'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='31'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='32'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='33'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='34'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='35'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='36'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='37'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='38'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='39'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='40'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='41'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='42'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='43'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='44'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='45'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='46'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='47'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='48'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='49'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
          <channel number='50'>
            <datapoint name='PRESS_LONG' value='' valueType='2' writeable='true' />
            <datapoint name='PRESS_SHORT' value='' valueType='2' writeable='true' />
            <datapoint name='LEVEL' value='' valueType='6' min='0.000000' max='1.000000' writeable='true' />
          </channel>
        </device>
      </devices>
      17:04:18.668 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=rssiInfo,args={}]
      17:04:18.677 TRACE o.o.b.h.i.c.c.BinRpcClient[:199] - Client BinRpcResponse: {
      	JEQ0054923=
      	{
      		UNKNOWN=
      		[
      			65536
      			-63
      		]
      	}
      	UNKNOWN=
      	{
      		JEQ0054923=
      		[
      			-63
      			65536
      		]
      	}
      }
      
      17:04:18.678 INFO  o.o.b.h.i.c.StateHolder[:91] - Finished loading 168 Homematic datapoints
      17:04:18.678 INFO  o.o.b.h.i.c.StateHolder[:187] - Loading Homematic Server variables
      17:04:18.678 TRACE o.o.b.h.i.c.client.CcuClient[:275] - TclRegaScript: object var_obj;
      string sys_var_id;
      Write('<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>\n');
      Write("<variablelist>\n");
      foreach (sys_var_id, dom.GetObject(ID_SYSTEM_VARIABLES).EnumUsedIDs()) {
        var_obj = dom.GetObject(sys_var_id);
        if (var_obj.Visible() == true) {
          Write("  <variable");
          Write(" name='"); WriteXML(var_obj.Name());
          Write("' value='"); WriteXML(var_obj.Value());
          Write("' valueType='"); WriteXML(var_obj.ValueType());
          if (var_obj.ValueType() == 16) {
            Write("' subType='"); WriteXML(var_obj.ValueSubType());
            Write("' valueList='" # var_obj.ValueList());
          }
          if ((var_obj.ValueType() != 2) && (var_obj.ValueType() != 20)) {
            Write("' min='" # var_obj.ValueMin());
            Write("' max='" # var_obj.ValueMax());
          }
          Write("' writeable='true'");
          Write(" />\n");
        }
      }
      Write("</variablelist>");
      17:04:18.717 TRACE o.o.b.h.i.c.client.CcuClient[:286] - Result TclRegaScript: <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
      <variablelist>
        <variable name='Alarmzone 1' value='' valueType='2' writeable='true' />
        <variable name='Anwesenheit' value='true' valueType='2' writeable='true' />
      </variablelist>
      17:04:18.724 INFO  o.o.b.h.i.c.StateHolder[:196] - Finished loading 2 Homematic server variables
      17:04:18.724 INFO  o.o.b.h.i.c.s.BinRpcCallbackServer[:44] - Starting BinRpcCallbackServer at port 9123
      17:04:18.725 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}]
      17:04:23.732 ERROR o.o.b.h.i.c.HomematicCommunicator[:93] - Could not start Homematic communicator: Read timed out (sending BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}])
      org.openhab.binding.homematic.internal.communicator.client.HomematicClientException: Read timed out (sending BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}])
      	at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:224)
      Caused by: java.net.SocketTimeoutException: Read timed out
      	at java.net.SocketInputStream.socketRead0(Native Method)
      17:04:23.732 INFO  o.o.b.h.i.c.HomematicCommunicator[:120] - Shutting down Homematic communicator
      17:04:23.732 DEBUG o.o.b.h.i.c.s.BinRpcCallbackServer[:55] - Shutting down BinRpcCallbackServer
      17:04:23.733 DEBUG o.o.b.h.i.c.s.BinRpcNetworkService[:69] - Shutting down BinRpcNetworkService
      17:04:23.733 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123}]
      17:04:28.780 DEBUG o.o.b.h.i.c.ItemDisabler[:63] - Stopping ItemDisabler
      17:05:00.274 INFO  runtime.busevents[:26] - Temperature_GF_Corridor state updated to 20.70000000
      17:05:00.277 INFO  runtime.busevents[:26] - Temperature_GF_Toilet state updated to 18.80000000
      17:05:00.280 INFO  runtime.busevents[:26] - Temperature_GF_Living state updated to 18.00000000
      17:05:00.283 INFO  runtime.busevents[:26] - Temperature_GF_Kitchen state updated to 20.10000000
      17:05:00.287 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:05:00.295 INFO  runtime.busevents[:26] - Temperature_FF_Bath state updated to 20.30000000
      17:05:00.298 WARN  o.o.c.t.i.s.MapTransformationService[:70] - Could not find a mapping for '-' in the file 'en.map'.
      17:05:00.298 INFO  runtime.busevents[:26] - Temperature_FF_Office state updated to 21.20000000
      17:05:00.301 INFO  runtime.busevents[:26] - Temperature_FF_Child state updated to 19.50000000
      17:05:00.302 INFO  runtime.busevents[:26] - Temperature_FF_Bed state updated to 22.10000000
      17:05:07.598 INFO  runtime.busevents[:26] - Weather_Temperature state updated to 16
      17:05:07.601 INFO  runtime.busevents[:26] - Weather_LastUpdate state updated to 2014-10-20T17:05:07
      Ich vermute, dass in der openhab.log das selbe drine steht, ohne jetzt alles gelesen zu haben, falls nicht reiche ich sie noch nach.

      Die CCU ist quasi jungfreulich, hatte mit ihr nen Werksreset gemacht, der Aktor ist eine Zwischensteckdose.

      danke
      mfg
      stefan

      Kommentar


        #4
        Hallo Stefan!

        Also Metadaten auslesen funktioniert, RPC Calls auch. Die CCU sendet allerdings beim Anmelden vom Binding einen timeout.

        Was mich stört ist:
        16:59:04.986 WARN o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 192.168.2.1 with 172.16.65.1
        16:59:04.987 WARN o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 172.16.65.1 with 192.168.1.5
        16:59:04.987 WARN o.o.b.h.i.u.LocalNetworkInterface[:53] - Found multiple local interfaces! Replacing 192.168.1.5 with 169.254.50.200

        Welche IP hat denn Dein Mac Mini wirklich? 169.254.50.200? Kannst Du bitte einmal in openhab.cfg die richtige callback IP eintragen und nochmal probieren? (homematic:callback.host)

        Das Problem ist diese Fehlermeldung:
        7:04:18.725 TRACE o.o.b.h.i.c.c.BinRpcClient[:191] - Client BinRpcRequest BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}]
        17:04:23.732 ERROR o.o.b.h.i.c.HomematicCommunicator[:93] - Could not start Homematic communicator: Read timed out (sending BinRpcRequest[methodName=init,args={binary://169.254.50.200:9123,BidCos-RF}])

        LG
        Gerhard

        Kommentar


          #5
          Gelöst

          Super danke, das war das Problem!

          openHAB hat die erste Netzwerkschnittstelle genommen, die war nicht konfiguriert.

          mfg
          Stefan

          Kommentar

          Lädt...
          X