Welcome to mirror list, hosted at ThFree Co, Russian Federation.

README.md - github.com/ClusterM/skykettle-ha.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 7a683be0a15732cfe787db4adc8a2d135cb7a227 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
# Redmond SkyKettle integration for Home Assistant
This integration allows to control smart kettles from **Redmond SkyKettle** series.

![image](https://user-images.githubusercontent.com/4236181/153447814-b2b3846d-e925-477f-ad7b-1f5639f7609a.png)

![image](https://user-images.githubusercontent.com/4236181/151023077-ca0055b4-1b1d-41a6-879c-6aabe3a30164.png)

![image](https://user-images.githubusercontent.com/4236181/151022885-1a93c4d5-b5fe-40f2-8d1f-ddb458ea2c09.png)

## Supported models

* RK-G200
* RK-G200S
* RK-G201S
* RK-G202S
* RK-G203S
* RK-G204S
* RK-G210S
* RK-G211S
* RK-G212S
* RK-G213S
* RK-G214S
* RK-G215S
* RK-G233S
* RK-G240S
* RK-M139S
* RK-M171S
* RK-M215S
* RK-M216S
* RK-M216S-E
* RK-M223S
* RK-M136S
* RFS-KKL002
* RFS-KKL003
* RFS-KKL004
* ???

If your kettle model is not listed, please write an [issue](https://github.com/ClusterM/skykettle-ha/issues) and I'll try to add support for it with your help.

## Features
* Allows to set target temperature.
* Allows to set any boil mode: heating (keep desired temperature), standard boiling, boiling+heating.
* Allows to change many settings of the kettle directly from Home Assistant, even more settings than the official application allows.
* Allows to read all statistics, even more than the official application allows.
* Allows to use kettle as RGB lamp.
* Automatic mode change if target temperature changed, allows easy control from Google Assistant, Yandex Alice, etc.
* Persistent connection and fast reconnect.

## Requirements

* Bluetooth adapter with BLE support.
* Home Assistant [Bluetooth integration](https://www.home-assistant.io/integrations/bluetooth/) (comes with Home Assistant v2022.8.1+)

## How to use

* Install it via [HACS](https://hacs.xyz/) - search for **SkyKettle** or just copy [skykettle](https://github.com/ClusterM/skykettle_ha/tree/master/custom_components/skykettle) directory to your `custom_components` directory.
* Add **SkyKettle** integration just like any other integration (restart Home Assistant and press Shift+F5 if it's not listed).
* Make sure that the Kettle is on the stand and it's plugged into the outlet.
* Select MAC address of your kettle from the list.
* Tune rest of the settings if you want.
* Enjoy.

## Scripts
### To boil and turn off after boiling
```YAML
sequence:
  - service: water_heater.set_operation_mode
    data:
      operation_mode: Boil
    target:
      entity_id: water_heater.skykettle_rk_g211
```

Also you can use `water_heater.turn_on` service **when the kettle is off/idle**:
```YAML
sequence:
  - service: water_heater.turn_on
    data: {}
    target:
      entity_id: water_heater.skykettle_rk_g211
```

### To boil and keep desired temperature
```YAML
sequence:
  - service: water_heater.set_operation_mode
    data:
      operation_mode: Boil+Heat
    target:
      entity_id: water_heater.skykettle_rk_g211
  - service: water_heater.set_temperature
    data:
      temperature: 90
    target:
      entity_id: water_heater.skykettle_rk_g211
```

### To warm up and keep desired temperature without boiling
```YAML
sequence:
  - service: water_heater.set_operation_mode
    data:
      operation_mode: Heat
    target:
      entity_id: water_heater.skykettle_rk_g211
  - service: water_heater.set_temperature
    data:
      temperature: 90
    target:
      entity_id: water_heater.skykettle_rk_g211
```

### Turn the kettle off
```YAML
sequence:
  - service: water_heater.set_operation_mode
    data:
      operation_mode: off
    target:
      entity_id: water_heater.skykettle_rk_g211
```
Also you can use `water_heater.turn_off` service:
```YAML
sequence:
  - service: water_heater.turn_off
    data: {}
    target:
      entity_id: water_heater.skykettle_rk_g211
```

### Turn the kettle into a lamp
```YAML
sequence:
  - service: light.turn_on
    data:
      rgb_color:
        - 255
        - 100
        - 255
      brightness: 255
    target:
      entity_id: light.skykettle_rk_g211_light
```

## Hints

You can use the [card_mod](https://github.com/thomasloven/lovelace-card-mod) integration to make the color of the card icon depend on the temperature of the kettle.

Example:

```
type: vertical-stack
cards:
  - type: button
    tap_action:
      action: more-info
    entity: water_heater.skykettle_rk_g211
    show_state: true
    name: Чайник
    hold_action:
      action: toggle
    card_mod:
      style: >
        {% set temp = state_attr("water_heater.skykettle_rk_g211",
        "current_temperature") %}

        :host {
          --card-mod-icon:
          {% if temp != None and temp > 95 %}
          mdi:kettle-steam;
          {% else %}
          mdi:kettle;
          {% endif %}
          --card-mod-icon-color:
          {% if temp != None -%}
          hsl(
            {{ 235 + (0 - 235) / (95 - 25) * (temp - 25) }},
            {{ 60 + (100 - 60) / (100 - 25) * (temp - 25) }}%,
            50%
          )
          {%- else -%}
          black
          {%- endif %};
        }
  - type: entities
    entities:
      - entity: water_heater.skykettle_rk_g211
        card_mod:
          style: >
            {% set temp = state_attr("water_heater.skykettle_rk_g211",
            "current_temperature") %}

            :host {
              --card-mod-icon:
              {% if temp != None and temp > 95 %}
              mdi:kettle-steam;
              {% else %}
              mdi:kettle;
              {% endif %}
              --card-mod-icon-color:
              {% if temp != None -%}
              hsl(
                {{ 235 + (0 - 235) / (95 - 25) * (temp - 25) }},
                {{ 60 + (100 - 60) / (100 - 25) * (temp - 25) }}%,
                50%
              )
              {%- else -%}
              black
              {%- endif %};
            }
```

![image](https://user-images.githubusercontent.com/4236181/153446401-45c2f09e-2637-4fd1-8dec-0c365a3babb5.png)

## Donations

* YooMoney: [41001843680639](https://yoomoney.ru/transfer/quickpay?requestId=343838343938323238305f64633138343335353537313930333165656235636336346136363334373439303432636264356532)
* Bitcoin: [1GS4XXx1FjQaFjgHnoPPVAzw9xqfv5Spx5](https://btc.clusterrr.com/)
* DonationAlerts: [https://www.donationalerts.com/r/clustermeerkat](https://www.donationalerts.com/r/clustermeerkat)