@@ -639,13 +639,13 @@ def _appliance_measurements(
639639 )
640640
641641 if data .get ("binary_sensors" ):
642- self ._count += len (data ["binary_sensors" ]) - 1
642+ self ._count += len (data ["binary_sensors" ])
643643 if data .get ("sensors" ):
644- self ._count += len (data ["sensors" ]) - 1
644+ self ._count += len (data ["sensors" ])
645645 if data .get ("switches" ):
646- self ._count += len (data ["switches" ]) - 1
646+ self ._count += len (data ["switches" ])
647647 # Don't count the above top-level dicts, only the remaining single items
648- # self._count += len(data) - 3
648+ self ._count += len (data ) - 3
649649
650650 def _get_toggle_state (
651651 self , xml : etree , toggle : str , name : ToggleNameType , data : DeviceData
@@ -684,7 +684,9 @@ def _get_actuator_functionalities(
684684 # Skip max_dhw_temperature, not initially valid,
685685 # skip thermostat for all but zones with thermostats
686686 if item == "max_dhw_temperature" or (
687- item == "thermostat" and device ["dev_class" ] != "climate"
687+ item == "thermostat" and (
688+ device ["dev_class" ] != "climate" if self .smile (ADAM ) else device ["dev_class" ] != "thermostat"
689+ )
688690 ):
689691 continue
690692
@@ -844,6 +846,7 @@ def _scan_thermostats(self) -> None:
844846 }
845847 }
846848 )
849+ self ._count += 3
847850
848851 def _match_locations (self ) -> dict [str , ThermoLoc ]:
849852 """Helper-function for _scan_thermostats().
0 commit comments