HomeKit showing device as light but is a fan

Discussions about Z-Way software and Z-Wave technology in general
Post Reply
ghulands
Posts: 16
Joined: 19 Nov 2016 02:20

HomeKit showing device as light but is a fan

Post by ghulands »

Hi,
I have a Leviton ZW4SF fan controller that is showing as a light in home kit. I added the tag

Code: Select all

type-fan
but doesn't seem to make a difference. Here is the ZDDX for the device.

Code: Select all

<?xml version="1.0"?>
<ZWaveDevice xmlns="http://www.pepper1.net/zwavedb/xml-schemata/z-wave" schemaVersion="2">
  <descriptorVersion>1</descriptorVersion>
  <deviceData>
    <manufacturerId value="001d"/>
    <productType value="0038"/>
    <productId value="0002"/>
    <libType value="03"/>
    <protoVersion value="07"/>
    <protoSubVersion value="0c"/>
    <appVersion value="01"/>
    <appSubVersion value="08"/>
    <basicClass value="04"/>
    <genericClass value="11"/>
    <specificClass value="00"/>
    <optional value="true"/>
    <listening value="true"/>
    <routing value="true"/>
    <beamSensor>0</beamSensor>
  </deviceData>
  <deviceDescription>
    <description>
      <lang xml:lang="en"/>
    </description>
    <wakeupNote>
      <lang xml:lang="en"/>
    </wakeupNote>
    <inclusionNote>
      <lang xml:lang="en"/>
    </inclusionNote>
    <productName/>
    <brandName/>
    <productVersion>1.8</productVersion>
  </deviceDescription>
  <commandClasses>
    <commandClass id="0020" version="2" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0026" version="4" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="002b" version="0" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="002c" version="0" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0055" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
    <commandClass id="0059" version="3" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="005a" version="1" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="005e" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
    <commandClass id="006c" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
    <commandClass id="0070" version="4" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0072" version="2" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0073" version="1" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="007a" version="5" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0085" version="2" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0086" version="3" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0087" version="3" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="008e" version="3" supported="true" controlled="false" secure="true" inNIF="false"/>
    <commandClass id="0098" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
    <commandClass id="009f" version="1" supported="true" controlled="false" secure="true" inNIF="true"/>
  </commandClasses>
  <assocGroups>
    <assocGroup number="1" maxNodes="6">
      <description>
        <lang xml:lang="en">Group 1</lang>
      </description>
    </assocGroup>
  </assocGroups>
</ZWaveDevice>
Is there anything I can do to get it to show up as a fan?

Thanks,
Greg
lanbrown
Posts: 373
Joined: 01 Jun 2021 08:06

Re: HomeKit showing device as light but is a fan

Post by lanbrown »

This is from a GE (Jasco) Z-Wave switch. I wonder if you can't use say the manufacturerId value, productType value and productId value to create a hybrid of the two. The GE does show up as a fan.

Code: Select all

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<ZWaveDevice xmlns="http://www.pepper1.net/zwavedb/xml-schemata/z-wave" schemaVersion="2">
<descriptorVersion>1</descriptorVersion>
<deviceData>
<manufacturerId value="0063"/>
<productType value="4944"/>
<productId value="3131"/>
<libType value="03"/>
<protoVersion value="04"/>
<protoSubVersion value="05"/>
<appVersion value="05"/>
<appSubVersion value="14"/>
<basicClass value="04"/>
<genericClass value="11"/>
<specificClass value="08"/>
<optional value="true"/>
<listening value="true"/>
<routing value="true"/>
<beamSensor>0</beamSensor>
</deviceData>
<deviceDescription>
<description>
<lang xml:lang="en"/>
</description>
<wakeupNote>
<lang xml:lang="en"/>
</wakeupNote>
<inclusionNote>
<lang xml:lang="en"/>
</inclusionNote>
<productName/>
<brandName/>
<productVersion>5.20</productVersion>
</deviceDescription>
<commandClasses>
<commandClass id="0020" version="1" supported="true" controlled="false" secure="false" inNIF="false"/>
<commandClass id="0026" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0027" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="002b" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="002c" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0056" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0059" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="005a" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="005e" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0070" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0072" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0073" version="1" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="007a" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0085" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
<commandClass id="0086" version="2" supported="true" controlled="false" secure="false" inNIF="true"/>
</commandClasses>
<assocGroups>
<assocGroup number="1" maxNodes="5">
<description>
<lang xml:lang="en">Group 1</lang>
</description>
</assocGroup>
<assocGroup number="2" maxNodes="5">
<description>
<lang xml:lang="en">Group 2</lang>
</description>
</assocGroup>
<assocGroup number="3" maxNodes="5">
<description>
<lang xml:lang="en">Group 3</lang>
</description>
</assocGroup>
</assocGroups>
</ZWaveDevice>
ghulands
Posts: 16
Joined: 19 Nov 2016 02:20

Re: HomeKit showing device as light but is a fan

Post by ghulands »

I tried changing the productType to 4944 but that failed on startup when interrogating the device. I tried to set the specificClass to match, but that had no material change as after applying it, i went and downloaded the ZDDX and it was set back to 0 so my guess is that is derived from the device interview.

I finally found the source to the homekit gate module on github and tried many different options to expose the fan properly. I ended up giving up and gave home assistant a try with zwavejs. It all just worked. I think I'm going to have to say goodbye to z-way-server.
Post Reply