Merten (507801) Roller Shutter does not work with openHAB 2.2

Dear all,

I just installed the new Version of openHAB 2.2 over my already well working openHAB 2.1 version. Migration worked perfectly. I was also lucky to see that the new version of openHAB recognized my “Merten (507801) Roller Shutter” correctly, which was not the case in the openHAB 2.1 The Roller Shutter device is online (green) and the name of the device appears correctly (this was not in openHAB2.1 the case). But never the less, even now as the device seems correctly be included in the system no channel appears and so no channel can be selected. All my other Merten things are working perfectly.

Can anybody help me with this issue. I would appeciacte very much.

Kind Regards
Jörg

There are no channels defined in the database:

http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list/devicesummary/617

You should look for your xml file and upload it to the db.

Dear Sihui,

thank you for your hint. Do you mean the xml-file which was created in the folder “D:\openHAB2\userdata\zwave”?

here is this file:

<node>
  <deviceClass>
    <basicDeviceClass>ROUTING_SLAVE</basicDeviceClass>
    <genericDeviceClass>WINDOW_COVERING</genericDeviceClass>
    <specificDeviceClass>NOT_USED</specificDeviceClass>
  </deviceClass>
  <homeId>0xc94f830b</homeId>
  <nodeId>72</nodeId>
  <version>2</version>
  <manufacturer>0x7a</manufacturer>
  <deviceId>0x1</deviceId>
  <deviceType>0x8003</deviceType>
  <listening>true</listening>
  <frequentlyListening>false</frequentlyListening>
  <routing>true</routing>
  <security>false</security>
  <beaming>false</beaming>
  <maxBaudRate>9600</maxBaudRate>
  <nodeInformationFrame>
    <commandClass>MANUFACTURER_SPECIFIC</commandClass>
    <commandClass>VERSION</commandClass>
    <commandClass>CONFIGURATION</commandClass>
    <commandClass>MULTI_INSTANCE</commandClass>
    <commandClass>ASSOCIATION</commandClass>
    <commandClass>SWITCH_MULTILEVEL</commandClass>
    <commandClass>BASIC_WINDOW_COVERING</commandClass>
    <commandClass>PROTECTION</commandClass>
  </nodeInformationFrame>
  <supportedCommandClasses>
    <entry>
      <commandClass>BASIC</commandClass>
      <basicCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <isGetSupported>true</isGetSupported>
      </basicCommandClass>
    </entry>
    <entry>
      <commandClass>BASIC_WINDOW_COVERING</commandClass>
      <basicWindowCoveringCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
      </basicWindowCoveringCommandClass>
    </entry>
    <entry>
      <commandClass>VERSION</commandClass>
      <versionCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <libraryType>LIB_SLAVE_ROUTING</libraryType>
        <protocolVersion>2.27</protocolVersion>
        <applicationVersion>2.2</applicationVersion>
      </versionCommandClass>
    </entry>
    <entry>
      <commandClass>CONFIGURATION</commandClass>
      <configurationCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <configParameters/>
      </configurationCommandClass>
    </entry>
    <entry>
      <commandClass>MULTI_INSTANCE</commandClass>
      <multiInstanceCommandClass>
        <version>2</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <endpoints>
          <entry>
            <int>1</int>
            <endPoint>
              <deviceClass>
                <basicDeviceClass>ROUTING_SLAVE</basicDeviceClass>
                <genericDeviceClass>WINDOW_COVERING</genericDeviceClass>
                <specificDeviceClass>NOT_USED</specificDeviceClass>
              </deviceClass>
              <endpointId>1</endpointId>
              <supportedCommandClasses>
                <entry>
                  <commandClass>BASIC</commandClass>
                  <basicCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>0</version>
                    <instances>0</instances>
                    <versionSupported>0</versionSupported>
                    <isGetSupported>true</isGetSupported>
                  </basicCommandClass>
                </entry>
                <entry>
                  <commandClass>BASIC_WINDOW_COVERING</commandClass>
                  <basicWindowCoveringCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                  </basicWindowCoveringCommandClass>
                </entry>
                <entry>
                  <commandClass>VERSION</commandClass>
                  <versionCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <libraryType>LIB_UNKNOWN</libraryType>
                  </versionCommandClass>
                </entry>
                <entry>
                  <commandClass>PROTECTION</commandClass>
                  <protectionCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>2</version>
                    <instances>1</instances>
                    <versionSupported>2</versionSupported>
                    <localModes>
                      <localProtection>UNPROTECTED</localProtection>
                      <localProtection>PROTECTED</localProtection>
                    </localModes>
                    <rfModes>
                      <rfProtection>UNPROTECTED</rfProtection>
                      <rfProtection>NORFCONTROL</rfProtection>
                    </rfModes>
                  </protectionCommandClass>
                </entry>
                <entry>
                  <commandClass>MANUFACTURER_SPECIFIC</commandClass>
                  <manufacturerSpecificCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <initSerialNumber>false</initSerialNumber>
                    <deviceManufacturer>2147483647</deviceManufacturer>
                    <deviceType>2147483647</deviceType>
                    <deviceId>2147483647</deviceId>
                  </manufacturerSpecificCommandClass>
                </entry>
                <entry>
                  <commandClass>SWITCH_MULTILEVEL</commandClass>
                  <multiLevelSwitchCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <isGetSupported>true</isGetSupported>
                  </multiLevelSwitchCommandClass>
                </entry>
              </supportedCommandClasses>
            </endPoint>
          </entry>
          <entry>
            <int>2</int>
            <endPoint>
              <deviceClass>
                <basicDeviceClass>ROUTING_SLAVE</basicDeviceClass>
                <genericDeviceClass>WINDOW_COVERING</genericDeviceClass>
                <specificDeviceClass>NOT_USED</specificDeviceClass>
              </deviceClass>
              <endpointId>2</endpointId>
              <supportedCommandClasses>
                <entry>
                  <commandClass>BASIC</commandClass>
                  <basicCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>0</version>
                    <instances>0</instances>
                    <versionSupported>0</versionSupported>
                    <isGetSupported>true</isGetSupported>
                  </basicCommandClass>
                </entry>
                <entry>
                  <commandClass>BASIC_WINDOW_COVERING</commandClass>
                  <basicWindowCoveringCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                  </basicWindowCoveringCommandClass>
                </entry>
                <entry>
                  <commandClass>VERSION</commandClass>
                  <versionCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <libraryType>LIB_UNKNOWN</libraryType>
                  </versionCommandClass>
                </entry>
                <entry>
                  <commandClass>PROTECTION</commandClass>
                  <protectionCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>2</version>
                    <instances>1</instances>
                    <versionSupported>2</versionSupported>
                    <localModes>
                      <localProtection>UNPROTECTED</localProtection>
                      <localProtection>PROTECTED</localProtection>
                    </localModes>
                    <rfModes>
                      <rfProtection>UNPROTECTED</rfProtection>
                      <rfProtection>NORFCONTROL</rfProtection>
                    </rfModes>
                  </protectionCommandClass>
                </entry>
                <entry>
                  <commandClass>MANUFACTURER_SPECIFIC</commandClass>
                  <manufacturerSpecificCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <initSerialNumber>false</initSerialNumber>
                    <deviceManufacturer>2147483647</deviceManufacturer>
                    <deviceType>2147483647</deviceType>
                    <deviceId>2147483647</deviceId>
                  </manufacturerSpecificCommandClass>
                </entry>
                <entry>
                  <commandClass>SWITCH_MULTILEVEL</commandClass>
                  <multiLevelSwitchCommandClass>
                    <endpoint reference="../../../.."/>
                    <version>1</version>
                    <instances>1</instances>
                    <versionSupported>1</versionSupported>
                    <isGetSupported>true</isGetSupported>
                  </multiLevelSwitchCommandClass>
                </entry>
              </supportedCommandClasses>
            </endPoint>
          </entry>
        </endpoints>
        <useDestEndpointAsSource>false</useDestEndpointAsSource>
        <endpointsAreTheSameDeviceClass>true</endpointsAreTheSameDeviceClass>
      </multiInstanceCommandClass>
    </entry>
    <entry>
      <commandClass>PROTECTION</commandClass>
      <protectionCommandClass>
        <version>2</version>
        <instances>1</instances>
        <versionSupported>2</versionSupported>
        <localModes>
          <localProtection>UNPROTECTED</localProtection>
          <localProtection>PROTECTED</localProtection>
        </localModes>
        <rfModes>
          <rfProtection>UNPROTECTED</rfProtection>
          <rfProtection>NORFCONTROL</rfProtection>
        </rfModes>
      </protectionCommandClass>
    </entry>
    <entry>
      <commandClass>NO_OPERATION</commandClass>
      <noOperationCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
      </noOperationCommandClass>
    </entry>
    <entry>
      <commandClass>ASSOCIATION</commandClass>
      <associationCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <maxGroups>1</maxGroups>
      </associationCommandClass>
    </entry>
    <entry>
      <commandClass>MANUFACTURER_SPECIFIC</commandClass>
      <manufacturerSpecificCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <initSerialNumber>false</initSerialNumber>
        <deviceManufacturer>122</deviceManufacturer>
        <deviceType>32771</deviceType>
        <deviceId>1</deviceId>
      </manufacturerSpecificCommandClass>
    </entry>
    <entry>
      <commandClass>SWITCH_MULTILEVEL</commandClass>
      <multiLevelSwitchCommandClass>
        <version>1</version>
        <instances>1</instances>
        <versionSupported>1</versionSupported>
        <isGetSupported>true</isGetSupported>
      </multiLevelSwitchCommandClass>
    </entry>
  </supportedCommandClasses>
  <securedCommandClasses/>
  <associationGroups>
    <entry>
      <int>1</int>
      <associationGroup>
        <index>1</index>
        <associations/>
      </associationGroup>
    </entry>
  </associationGroups>
  <nodeNeighbors>
    <int>3</int>
    <int>11</int>
    <int>17</int>
    <int>29</int>
    <int>32</int>
    <int>35</int>
    <int>38</int>
    <int>42</int>
    <int>53</int>
    <int>58</int>
    <int>67</int>
    <int>77</int>
    <int>81</int>
    <int>87</int>
    <int>128</int>
    <int>129</int>
    <int>130</int>
  </nodeNeighbors>
  <lastSent>2017-12-23 06:06:46.774 UTC</lastSent>
  <lastReceived>2017-12-23 06:06:47.243 UTC</lastReceived>
</node>

That’s exactly what we need.
I have updated the database, now you need to be patient until the maintainer finds the time to merge that into the binding (probably after the holidays).

You should apply for access to the database because the configuration and associations parameters need to be added:

http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-database-guide

Dear Sihui,

o.k. I will do. Thank you very much for your assistent. But I’m not sure if I have enough knowledge to provide all the parameters which are needed. Especially as the manual of the device does not really provide much information.

Kind Regards
Jörg

If you don’t want to change any config parameters, the device should just work fine without them.

Note that you will need to upgrade to the snapshot or development version of the zwave binding to get the database changes. It won’t work with the stable zwave binding.

So if I understand correctly the stable version will get this changes sooner or later, correct?

Thanks
Kind Regards
Jörg

No, the stable version will not get any database updates.

But I don’t know if this


change will have any effect on updates for the 2.2.x stable zwave binding … but I would not want to wait that long :rofl:

sorry for bothering you again, but could you please tell me which files of the zwave binding from “https://github.com/openhab/org.openhab.binding.zwave” I need and where they have to be copied to.

Kind Regards
Jörg

The steps are:

  • the database updates needs to be merged to the binding, this will be done by the maintainer as soon as he finds the time. You can see when this happens at the bottom of the database entry.
  • you need to wait for the generation of a new snapshot zwave binding or use the development zwave binding.
  • then you need to uninstall the zwave binding via PaperU and copy one of those *.jar files (snapshot or development) to your addons folder.

Then restart openHAB and you should be able to use the device. You need to delete the thing and add it again if you choose to use the dev version.

If you need more information about the upgrade process use the search button, there are several tutorials how to do it

1 Like

Thanks to you and Chris,
the Merten Roller Shutter is working now. Thank you for your support it was my mistake. The last snapshot was not correctly installed. I thought that is also done via Paper UI by copying the “org.openhab.binding.zwave-2.3.0-SNAPSHOT.jar” file to ‘\OPENHABIANPI\openHAB-share\openhab2-addons’ and install again via Paper UI after the former version had been uninstalled.
But it is sufficient to restart openhab again and then the new snapshot is active. Sorry for my misunderstanding. Never the less I would like to ask is it possible that the shutter appears as shutter and not as dimmer.

1 Like

Just link the channel to a rollershutter item (Type=Rollershutter)

and for your sitemap use a switch:

2

Hello Sihui, thanks for your advice, this is what I allready did, the link is there the shutter appears correctly on the sitemap but nevertheless only the dimmer works but not the shutter

shutter_link_02shutter_link_03

Sorry, no idea and can’t test because I don’t have any Merten devices.
I never tried to link two items to one channel, don’t know it that is the problem: remove the dimmer and see what happens.

I already did, but even then the shutter does not work. Thank you very much for your support.

Finally I want to inform you that the Merten (507801) Roller Shutter is now working correctly, Chris has updated the database , he removed the the links “Dimmer” and “Dimmer2” of the thing and replaced “Dimmer1” by a “Blinds” link. Now the roller shutter Merten (507801) is working correctly. Thanks again to Sihui and Chris.

1 Like