FIBARO Switch 2 not recognized correctly

Hello,
I am new to OH4 , I am trying to migrate from VeraPlus to OH4.1.1
I am using Aeotec stick (gen 5) which includes all of my Z-Wave devices copied from my Vera using Simplicity Studio PC controller.
I have 3 x FGS223 and all seems to have the same issue, after creating the thing , I am linking the two switches , and it seems to be ok.
However, it is not doing anything when I toggle on/off.
In the log I can see:
2024-02-11 15:39:12.464 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: Command received zwave:device:933e072f2d:node10:switch_binary1 → ON [OnOffType]
2024-02-11 15:39:12.465 [DEBUG] [converter.ZWaveBinarySwitchConverter] - NODE 10: Command class class COMMAND_CLASS_SWITCH_BINARY for endpoint 1 not found
2024-02-11 15:39:12.465 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: No messages returned from converter

When I am checking the folder:
/srv/openhab-userdata/zwave
I can see the node_10.xml file . and from other posts ( Command class class COMMAND_CLASS_SWITCH_BINARY for endpoint 1 not found - Setup, Configuration and Use / Beginners - openHAB Community) I see it is missing the binary switch , I tried to edit / copy the XML file which contain the needed info, but it keep being re-write by the system ?

I can’t exclude/include, as my Vera still working and these FGS223 devices inside the walls in a complicated place to reach.

How can I fix the XML file ?
Thanks,
Nir

Welcome to the OH forum

The bad news is that you can’t. It will be overwritten. However, from the ZW DB entry there shouldn’t be a problem, so I’m not sure what is going on here. On the channels tab are the binary switch channels shown for both EP 1 and EP 2?

  1. Do the type:ID of your device match one set in the entry I linked?
  2. What is the value of parameter 20?
  3. Have to tried the reinitialize device option?
  4. Also could try deleting the device (not excluding) and then scan to pick up again.

Could you post the XML for Node 10?

Hi,
I see the EP1 / EP2 on the channel page .

  1. the type:ID are the ones appear in the ZW DB
  2. Parameter 20 , is “2” meaning “toggle switch (device changes status when switch changes status)”
  3. I didn’t , can you explain what does it do ? as I am still using VeraPlus and I don’t want to crash it.
  4. Do you mean remove the “Thing” or “Remove device from controller” ?

I also attached the XML , since I can’t upload file.

<node>
  <homeId>0xd4072546</homeId>
  <nodeId>10</nodeId>
  <version>4</version>
  <manufacturer>0x10f</manufacturer>
  <deviceId>0x1000</deviceId>
  <deviceType>0x203</deviceType>
  <listening>true</listening>
  <frequentlyListening>false</frequentlyListening>
  <routing>true</routing>
  <security>false</security>
  <beaming>true</beaming>
  <maxBaudRate>40000</maxBaudRate>
  <sleepDelay>500</sleepDelay>
  <nodeInformationFrame>
    <commandClass>COMMAND_CLASS_ZWAVEPLUS_INFO</commandClass>
    <commandClass>COMMAND_CLASS_VERSION</commandClass>
    <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
    <commandClass>COMMAND_CLASS_ASSOCIATION_GRP_INFO</commandClass>
    <commandClass>COMMAND_CLASS_POWERLEVEL</commandClass>
    <commandClass>COMMAND_CLASS_APPLICATION_STATUS</commandClass>
    <commandClass>COMMAND_CLASS_CRC_16_ENCAP</commandClass>
    <commandClass>COMMAND_CLASS_METER</commandClass>
    <commandClass>COMMAND_CLASS_ALARM</commandClass>
    <commandClass>COMMAND_CLASS_SECURITY</commandClass>
    <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
  </nodeInformationFrame>
  <associationGroups class="concurrent-hash-map"/>
  <endpoints class="concurrent-hash-map">
    <entry>
      <int>0</int>
      <endPoint>
        <deviceClass>
          <basicDeviceClass>BASIC_TYPE_ROUTING_SLAVE</basicDeviceClass>
          <genericDeviceClass>GENERIC_TYPE_SWITCH_BINARY</genericDeviceClass>
          <specificDeviceClass>SPECIFIC_TYPE_POWER_SWITCH_BINARY</specificDeviceClass>
        </deviceClass>
        <endpointId>0</endpointId>
        <secureCommandClasses/>
        <supportedCommandClasses class="concurrent-hash-map">
          <entry>
            <commandClass>COMMAND_CLASS_NO_OPERATION</commandClass>
            <COMMAND__CLASS__NO__OPERATION>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__NO__OPERATION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_BASIC</commandClass>
            <COMMAND__CLASS__BASIC>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__BASIC>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_APPLICATION_STATUS</commandClass>
            <COMMAND__CLASS__APPLICATION__STATUS>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__APPLICATION__STATUS>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_METER</commandClass>
            <COMMAND__CLASS__METER>
              <version>3</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>3</versionSupported>
              <meterType>ELECTRIC</meterType>
              <meterScales>
                <meterScale>E_KWh</meterScale>
                <meterScale>E_W</meterScale>
              </meterScales>
              <canReset>true</canReset>
              <isGetSupported>true</isGetSupported>
              <isSupportRequestSupported>true</isSupportRequestSupported>
            </COMMAND__CLASS__METER>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_CRC_16_ENCAP</commandClass>
            <COMMAND__CLASS__CRC__16__ENCAP>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__CRC__16__ENCAP>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ASSOCIATION_GRP_INFO</commandClass>
            <COMMAND__CLASS__ASSOCIATION__GRP__INFO>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <autoSubscribeGroups/>
            </COMMAND__CLASS__ASSOCIATION__GRP__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ZWAVEPLUS_INFO</commandClass>
            <COMMAND__CLASS__ZWAVEPLUS__INFO>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <zwPlusVersion>1</zwPlusVersion>
              <zwPlusRole>ROLE_TYPE_SLAVE_ALWAYS_ON</zwPlusRole>
              <zwPlusNodeType>NODE_TYPE_ZWAVEPLUS_NODE</zwPlusNodeType>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ZWAVEPLUS__INFO>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_ALARM</commandClass>
            <COMMAND__CLASS__ALARM>
              <version>5</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>5</versionSupported>
              <alarms>
                <entry>
                  <alarmType>HEAT</alarmType>
                  <alarmState>
                    <alarmType>HEAT</alarmType>
                    <reportedEvents/>
                    <outer-class reference="../../../.."/>
                  </alarmState>
                </entry>
                <entry>
                  <alarmType>POWER_MANAGEMENT</alarmType>
                  <alarmState>
                    <alarmType>POWER_MANAGEMENT</alarmType>
                    <reportedEvents/>
                    <outer-class reference="../../../.."/>
                  </alarmState>
                </entry>
              </alarms>
              <v1Supported>true</v1Supported>
              <isGetSupported>true</isGetSupported>
            </COMMAND__CLASS__ALARM>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_MANUFACTURER_SPECIFIC</commandClass>
            <COMMAND__CLASS__MANUFACTURER__SPECIFIC>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <initSerialNumber>false</initSerialNumber>
              <deviceManufacturer>271</deviceManufacturer>
              <deviceType>515</deviceType>
              <deviceId>4096</deviceId>
            </COMMAND__CLASS__MANUFACTURER__SPECIFIC>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_POWERLEVEL</commandClass>
            <COMMAND__CLASS__POWERLEVEL>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
              <powerLevel>0</powerLevel>
              <powerTimeout>0</powerTimeout>
            </COMMAND__CLASS__POWERLEVEL>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_FIRMWARE_UPDATE_MD</commandClass>
            <COMMAND__CLASS__FIRMWARE__UPDATE__MD>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>3</versionSupported>
            </COMMAND__CLASS__FIRMWARE__UPDATE__MD>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_VERSION</commandClass>
            <COMMAND__CLASS__VERSION>
              <version>2</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>2</versionSupported>
              <libraryType>LIB_SLAVE_ENHANCED</libraryType>
              <protocolVersion>4.5</protocolVersion>
              <applicationVersion>3.2</applicationVersion>
              <hardwareVersion>3</hardwareVersion>
            </COMMAND__CLASS__VERSION>
          </entry>
          <entry>
            <commandClass>COMMAND_CLASS_SECURITY</commandClass>
            <COMMAND__CLASS__SECURITY>
              <version>1</version>
              <instances>1</instances>
              <control>false</control>
              <versionSupported>1</versionSupported>
            </COMMAND__CLASS__SECURITY>
          </entry>
        </supportedCommandClasses>
      </endPoint>
    </entry>
  </endpoints>
  <nodeNeighbors/>
  <lastReceived>2024-02-11 07:36:37.30 UTC</lastReceived>
</node>

Thanks,
Nir Gal

At the bottom of the UI page, it reinterviews the node.
Five Lines of configured node

The question I have is how are these both running? Devices usually can only be discovered and linked to one zstick and I was of the opinion that only one application could be directing traffic (so to speak). It is possible (likely?) your problem is related to the running VeraPlus. The XML you posted is missing the Binary sensor CC and endpoints 1 & 2. This means the device did not report them to the OH binding maybe because they were in use by VeraPlus, but I can’t say for sure.

Thing on the UI page, not the other one

Thanks for your help.
In Z-Wave you can use a secondary controller, there is no issue to send commands from both primary and secondary. Other devices are working including one Fibaro devices ( but a different one FGS213 ).

More than that, when I remove the Aeotec stick which holds the Z-Wave network and plug it to my laptop running PC Controller I can send commands to the same node and all is working.

I will try again the interview process and save the log.

That tends to indicate interview between OH didn’t complete properly the first time. Use debug in the log. Is the Aeotec the secondary controller?

The Aeotec is the secondary controller.
I removed “node 10” channels and thing and rescan.

I saw something really strange (I am not sure if it was also the same before).
After the scan I can see two nodes (10,12) , both appears as FGS223 (see pic).
When I click to add 10, I can see in that the thing type will be fgs223_00_000 , and when I add 12 the thing type is fgs213_00_000 (see pics in the next posts as I can’t upload more than one)

I will re-connect the Aeotec to the PC controller and copy the entire information from both.
add new thing

node 10

node 12

I think the two controller set-up is making this hard to figure out :frowning_face:. Are there now both 10 &12 on the vera? One is likely a zombie and needs to be removed, but I’m not sure. You said you have 3 FGS223’s. I had suggested a reinitialize first before the delete and scan

I think there is some issue with the device detection, first you can see that the two devices have same ID etc’ but the XML are different which I can’t explain.
When I re-scan the Aeotec , it looks like both are identified with similar type:

2024-02-16 15:40:15.006 [DEBUG] [ve.internal.protocol.ZWaveController] - Incoming Message: Message: class=ApplicationUpdate[73], type=Request[0], dest=25, callback=64, payload=40 19 03 04 11 06
2024-02-16 15:40:15.007 [DEBUG] [wave.discovery.ZWaveDiscoveryService] - NODE 10: Device discovery resolved to thingType zwave:fibaro_fgs223_00_000
2024-02-16 15:40:15.007 [WARN ] [essage.ApplicationUpdateMessageClass] - TODO: Implement Application Update Request Handling of New ID Assigned (64).
2024-02-16 15:40:15.007 [DEBUG] [nal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
2024-02-16 15:40:15.008 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 1 out at start. Holdoff false.
2024-02-16 15:40:15.010 [DEBUG] [wave.discovery.ZWaveDiscoveryService] - NODE 12: Device discovery completed
2024-02-16 15:40:15.012 [DEBUG] [wave.discovery.ZWaveDiscoveryService] - NODE 12: Device discovery resolved to thingType zwave:fibaro_fgs223_00_000

But still I see issues.
Node_12 working

Node_10 not working

When I re-lug the same Aeotec to PC controller , both devices are working.
I can see slight difference in the firmware level of them, but there is nothing I can really do as Fibaro do not allow OTA

Well if Node12 is working (problems in post 1 gone) I would use the silabs tool delete Node 10.

I will try to reset the Aeotec and learn / copy the z-wave network from my VeraPlus.