<br />

## Description

For devices that support setting the speed of a fan.

## Fields

| Key | Type | Description |
|---|---|---|
| `device` | [Device](https://developers.home.google.com/automations/schema/basics.md.txt#entity) | The device reporting the `FanSpeed` state. Required |
| `state` | [FieldPath](https://developers.home.google.com/automations/schema/basics.md.txt#fieldpath) | The specific state data to check. Required |
| `is` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is equal to a value. Optional <br /> To use this field, all the following fields CANNOT be used: *isNot* , *greaterThanOrEqualTo* , *greaterThan* , *lessThanOrEqualTo* , *lessThan* <br /> |
| `isNot` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is not equal to a value. Optional <br /> To use this field, all the following fields CANNOT be used: *is* , *greaterThanOrEqualTo* , *greaterThan* , *lessThanOrEqualTo* , *lessThan* <br /> |
| `greaterThan` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is greater than (\>) a value. Optional <br /> To use this field, all the following fields CANNOT be used: *isNot* , *is* , *greaterThanOrEqualTo* <br /> |
| `greaterThanOrEqualTo` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is greater than or equal to (\>=) a value. Optional <br /> To use this field, all the following fields CANNOT be used: *isNot* , *is* , *greaterThan* <br /> |
| `lessThan` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is less than (\<) a value. Optional <br /> To use this field, all the following fields CANNOT be used: *isNot* , *is* , *lessThanOrEqualTo* <br /> |
| `lessThanOrEqualTo` | [Dynamic](https://developers.home.google.com/automations/schema/basics.md.txt#dynamic) | Checks if the state data is less than or equal to (\<=) a value. Optional <br /> To use this field, all the following fields CANNOT be used: *isNot* , *is* , *lessThan* <br /> |
| `for` | [Duration](https://developers.home.google.com/automations/schema/basics.md.txt#duration) | Checks if the state has already remained for a certain duration. Only applicable for Starters, cannot be used with Conditions. Optional |
| `suppressFor` | [Duration](https://developers.home.google.com/automations/schema/basics.md.txt#duration) | Suppress the triggering of the starter for a specified time period. Optional |

## FanSpeed State Data

| Key | Type | Description |
|---|---|---|
| `currentFanSpeedSetting` | [String](https://developers.home.google.com/automations/schema/basics.md.txt#string) | Optional |
| `currentFanSpeedPercent` | [Number](https://developers.home.google.com/automations/schema/basics.md.txt#number) | Optional |

## Examples

```yaml
starters:
- type: device.state.FanSpeed
  device: My Device - Room Name
  state:  currentFanSpeedSetting
  is: High

condition:
  type: device.state.FanSpeed
  device: My Device - Room Name
  state: currentFanSpeedPercent
  is: 50
```