homebridge-kasa-python 2.7.0-beta.3 → 2.7.0-beta.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +311 -560
  2. package/config.schema.json +49 -57
  3. package/dist/accessoryInformation.d.ts +2 -2
  4. package/dist/accessoryInformation.js +30 -15
  5. package/dist/accessoryInformation.js.map +1 -1
  6. package/dist/config.d.ts +15 -4
  7. package/dist/config.js +54 -51
  8. package/dist/config.js.map +1 -1
  9. package/dist/devices/create.d.ts +2 -2
  10. package/dist/devices/create.js +28 -14
  11. package/dist/devices/create.js.map +1 -1
  12. package/dist/devices/deviceManager.d.ts +6 -5
  13. package/dist/devices/deviceManager.js +86 -99
  14. package/dist/devices/deviceManager.js.map +1 -1
  15. package/dist/devices/homekitLightBulb.d.ts +16 -10
  16. package/dist/devices/homekitLightBulb.js +242 -149
  17. package/dist/devices/homekitLightBulb.js.map +1 -1
  18. package/dist/devices/homekitPlug.d.ts +15 -9
  19. package/dist/devices/homekitPlug.js +195 -105
  20. package/dist/devices/homekitPlug.js.map +1 -1
  21. package/dist/devices/homekitPowerStrip.d.ts +15 -9
  22. package/dist/devices/homekitPowerStrip.js +205 -116
  23. package/dist/devices/homekitPowerStrip.js.map +1 -1
  24. package/dist/devices/homekitSwitch.d.ts +16 -10
  25. package/dist/devices/homekitSwitch.js +199 -113
  26. package/dist/devices/homekitSwitch.js.map +1 -1
  27. package/dist/devices/homekitSwitchWithChildren.d.ts +26 -0
  28. package/dist/devices/homekitSwitchWithChildren.js +351 -0
  29. package/dist/devices/homekitSwitchWithChildren.js.map +1 -0
  30. package/dist/devices/index.d.ts +9 -8
  31. package/dist/devices/index.js +38 -31
  32. package/dist/devices/index.js.map +1 -1
  33. package/dist/devices/kasaDevices.d.ts +13 -14
  34. package/dist/devices/kasaDevices.js +83 -93
  35. package/dist/devices/kasaDevices.js.map +1 -1
  36. package/dist/platform.d.ts +20 -5
  37. package/dist/platform.js +370 -114
  38. package/dist/platform.js.map +1 -1
  39. package/dist/python/kasaApi.py +268 -191
  40. package/dist/python/pythonChecker.d.ts +7 -5
  41. package/dist/python/pythonChecker.js +118 -36
  42. package/dist/python/pythonChecker.js.map +1 -1
  43. package/dist/python/startKasaApi.py +25 -0
  44. package/dist/taskQueue.d.ts +11 -0
  45. package/dist/taskQueue.js +44 -0
  46. package/dist/taskQueue.js.map +1 -0
  47. package/dist/utils.d.ts +2 -8
  48. package/dist/utils.js +18 -23
  49. package/dist/utils.js.map +1 -1
  50. package/package.json +13 -21
  51. package/requirements.txt +3 -4
package/README.md CHANGED
@@ -11,21 +11,21 @@
11
11
  </span>
12
12
 
13
13
  <p align="center">
14
- <a href="https://github.com/ZeliardM/homebridge-kasa-python/blob/latest/LICENSE"><img src="https://badgen.net/badge/license/MIT" alt="mit license"></a>
15
- <a href="https://www.npmjs.com/package/homebridge-kasa-python"><img src="https://badgen.net/npm/v/homebridge-kasa-python/latest?label=latest" alt="npm version"></a>
16
- <a href="https://pypi.org/project/python-kasa/"><img src="https://badgen.net/badge/Python/3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13/blue?label=latest-Python" alt="PyPI pyversions"></a>
17
- <a href="https://www.npmjs.com/package/homebridge-kasa-python"><img src="https://badgen.net/npm/v/homebridge-kasa-python/beta?label=beta" alt="npm version"></a>
18
- <a href="https://pypi.org/project/python-kasa/"><img src="https://badgen.net/badge/Python/3.11%20%7C%203.12%20%7C%203.13/cyan?label=beta-Python" alt="PyPI pyversions"></a>
19
- <a href="https://www.npmjs.com/package/homebridge-kasa-python"><img src="https://badgen.net/npm/dt/homebridge-kasa-python" alt="npm downloads total"></a>
20
- <a href="https://www.paypal.me/ZeliardM/USD/"><img src="https://badgen.net/badge/donate/paypal/E69138" alt="donate"></a>
21
- <a href="https://github.com/sponsors/ZeliardM"><img src="https://badgen.net/badge/donate/github/E69138" alt="donate"></a>
22
- <a href="https://github.com/homebridge/homebridge/wiki/Verified-Plugins"><img src="https://badgen.net/badge/homebridge/verified/purple" alt="homebridge verified"></a>
14
+ <a href="https://github.com/ZeliardM/homebridge-kasa-python/blob/latest/LICENSE"><img src="https://badgen.net/npm/license/homebridge-kasa-python" alt="mit license"></a>
15
+ <a href="https://www.npmjs.com/package/homebridge-kasa-python/v/latest"><img src="https://badgen.net/npm/v/homebridge-kasa-python/latest?label=npm@latest" alt="latest npm version"></a>
16
+ <a href="https://pypi.org/project/python-kasa/"><img src="https://badgen.net/badge/Python@latest/3.9,%203.10,%203.11,%203.12,%203.13" alt="latest PyPI pyversions"></a>
17
+ <a href="https://www.npmjs.com/package/homebridge-kasa-python/v/beta"><img src="https://badgen.net/npm/v/homebridge-kasa-python/beta?label=npm@beta&color=cyan" alt="beta npm version"></a>
18
+ <a href="https://pypi.org/project/python-kasa/"><img src="https://badgen.net/badge/Python@beta/3.11,%203.12,%203.13?color=cyan" alt="beta PyPI pyversions"></a>
19
+ <a href="https://www.npmjs.com/package/homebridge-kasa-python/v/latest"><img src="https://badgen.net/npm/dt/homebridge-kasa-python" alt="npm downloads total"></a>
20
+ <a href="https://www.paypal.me/ZeliardM/USD/"><img src="https://badgen.net/badge/donate/paypal?color=orange" alt="donate"></a>
21
+ <a href="https://github.com/sponsors/ZeliardM"><img src="https://badgen.net/badge/donate/github?color=orange" alt="donate"></a>
22
+ <a href="https://github.com/homebridge/homebridge/wiki/Verified-Plugins"><img src="https://badgen.net/badge/homebridge/verified?color=purple" alt="homebridge verified"></a>
23
23
  </p>
24
24
 
25
25
  <div align="center">
26
26
 
27
27
  > ## IMPORTANT!!!
28
- >With Beta v2.7.0, Support for anything less than Python v3.11 will be dropped. As of right now, the Homebridge Docker Image comes with Python 3.10. It is in the process of being updated to come with Python 3.12, but there is no ETA on that release yet.
28
+ >With Beta v2.7.0, Support for anything less than Python v3.11 will be dropped.
29
29
 
30
30
  </div>
31
31
 
@@ -43,556 +43,307 @@ Automatic Discovery may be possible only for some devices. If your device is not
43
43
  - Automatically discover TP-Link Kasa/Tapo Devices locally only on your network.
44
44
  - Change Device States for Plugs, Change Device States for Power Strips, Change Device State and Supports Dimming for Switches, Change Device State and Supports Hue, Saturation, and Value (HSV), Color, Color Temperature Adjustments, and Dimming for Bulbs and Light Strips that support those options.</p>*NOTE - Not All Functions Are Currently Supported, All Devices and Functions Could Be Supported By The Plug-In In The Furture.*</p>
45
45
  - Supported Devices from the API are listed below, Devices with an asterisks ('*') next to the specific firmware will require the Username and Password for your TP-Link Kasa/Tapo Cloud Account to connect and function correctly.</p>*NOTE - Not All Devices Listed Below Are Supported By This Plug-In. These Devices Are Supported By The Python-Kasa API Library And Could Be Supported By The Plug-In In The Future.*</p>
46
- <div align="center">
47
- <table style="border-collapse: collapse; border: 1px solid black;">
48
- <thead>
49
- <tr>
50
- <th align="center" style="border: 1px solid black; padding: 8px;">Category</th>
51
- <th align="center" style="border: 1px solid black; padding: 8px;">Model</th>
52
- <th align="center" style="border: 1px solid black; padding: 8px;">Hardware Version</th>
53
- <th align="center" style="border: 1px solid black; padding: 8px;">Firmware Version</th>
54
- </tr>
55
- </thead>
56
- <tbody>
57
- <tr>
58
- <td align="center" rowspan="36" style="border: 1px solid black; padding: 8px;">Plugs</td>
59
- <td align="center" style="border: 1px solid black; padding: 8px;">EP10</td>
60
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
61
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
62
- </tr>
63
- <tr>
64
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">EP25</td>
65
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">2.6 (US)</td>
66
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.1*</td>
67
- </tr>
68
- <tr>
69
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2*</td>
70
- </tr>
71
- <tr>
72
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">HS100</td>
73
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (UK)</td>
74
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.6</td>
75
- </tr>
76
- <tr>
77
- <td align="center" style="border: 1px solid black; padding: 8px;">4.1 (UK)</td>
78
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0*</td>
79
- </tr>
80
- <tr>
81
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
82
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.5</td>
83
- </tr>
84
- <tr>
85
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
86
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.6</td>
87
- </tr>
88
- <tr>
89
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">HS103</td>
90
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
91
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.7</td>
92
- </tr>
93
- <tr>
94
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">2.1 (US)</td>
95
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.2</td>
96
- </tr>
97
- <tr>
98
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.4</td>
99
- </tr>
100
- <tr>
101
- <td align="center" style="border: 1px solid black; padding: 8px;">HS105</td>
102
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
103
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.6</td>
104
- </tr>
105
- <tr>
106
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">HS110</td>
107
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
108
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.5</td>
109
- </tr>
110
- <tr>
111
- <td align="center" style="border: 1px solid black; padding: 8px;">4.0 (EU)</td>
112
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.4</td>
113
- </tr>
114
- <tr>
115
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
116
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.6</td>
117
- </tr>
118
- <tr>
119
- <td align="center" style="border: 1px solid black; padding: 8px;">KP100</td>
120
- <td align="center" style="border: 1px solid black; padding: 8px;">3.0 (US)</td>
121
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.1</td>
122
- </tr>
123
- <tr>
124
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KP105</td>
125
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (UK)</td>
126
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
127
- </tr>
128
- <tr>
129
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7</td>
130
- </tr>
131
- <tr>
132
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">KP115</td>
133
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
134
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.16</td>
135
- </tr>
136
- <tr>
137
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
138
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.17</td>
139
- </tr>
140
- <tr>
141
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.21</td>
142
- </tr>
143
- <tr>
144
- <td align="center" style="border: 1px solid black; padding: 8px;">KP125</td>
145
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
146
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.6</td>
147
- </tr>
148
- <tr>
149
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KP125M</td>
150
- <td align="center" rowspan="2"style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
151
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.3*</td>
152
- </tr>
153
- <tr>
154
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.3*</td>
155
- </tr>
156
- <tr>
157
- <td align="center" style="border: 1px solid black; padding: 8px;">KP401</td>
158
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
159
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.0</td>
160
- </tr>
161
- <tr>
162
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">P100</td>
163
- <td align="center" rowspan="3"style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
164
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.3</td>
165
- </tr>
166
- <tr>
167
- <td align="center" style="border: 1px solid black; padding: 8px;">1.3.7</td>
168
- </tr>
169
- <tr>
170
- <td align="center" style="border: 1px solid black; padding: 8px;">1.4.0</td>
171
- </tr>
172
- <tr>
173
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">P110</td>
174
- <td align="center" rowspan="2"style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
175
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7</td>
176
- </tr>
177
- <tr>
178
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.3</td>
179
- </tr>
180
- <tr>
181
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (UK)</td>
182
- <td align="center" style="border: 1px solid black; padding: 8px;">1.3.0</td>
183
- </tr>
184
- <tr>
185
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">P110M</td>
186
- <td align="center" rowspan="1"style="border: 1px solid black; padding: 8px;">1.0 (AU)</td>
187
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.3</td>
188
- </tr>
189
- <tr>
190
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
191
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.3</td>
192
- </tr>
193
- <tr>
194
- <td align="center" style="border: 1px solid black; padding: 8px;">P115</td>
195
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
196
- <td align="center" style="border: 1px solid black; padding: 8px;">1.2.3</td>
197
- </tr>
198
- <tr>
199
- <td align="center" style="border: 1px solid black; padding: 8px;">P125M</td>
200
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
201
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
202
- </tr>
203
- <tr>
204
- <td align="center" style="border: 1px solid black; padding: 8px;">P135</td>
205
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
206
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
207
- </tr>
208
- <tr>
209
- <td align="center" style="border: 1px solid black; padding: 8px;">TP15</td>
210
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
211
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
212
- </tr>
213
- <tr>
214
- <td align="center" rowspan="20" style="border: 1px solid black; padding: 8px;">Power Strips</td>
215
- <td align="center" rowspan="1" style="border: 1px solid black; padding: 8px;">EP40</td>
216
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
217
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
218
- </tr>
219
- <tr>
220
- <td align="center" rowspan="1" style="border: 1px solid black; padding: 8px;">EP40M</td>
221
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
222
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0*</td>
223
- </tr>
224
- <tr>
225
- <td align="center" style="border: 1px solid black; padding: 8px;">HS107</td>
226
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
227
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
228
- </tr>
229
- <tr>
230
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">HS300</td>
231
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
232
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.10</td>
233
- </tr>
234
- <tr>
235
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.21</td>
236
- </tr>
237
- <tr>
238
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
239
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
240
- </tr>
241
- <tr>
242
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.12</td>
243
- </tr>
244
- <tr>
245
- <td align="center" style="border: 1px solid black; padding: 8px;">KP200</td>
246
- <td align="center" style="border: 1px solid black; padding: 8px;">3.0 (US)</td>
247
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
248
- </tr>
249
- <tr>
250
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">KP303</td>
251
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (UK)</td>
252
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
253
- </tr>
254
- <tr>
255
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
256
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
257
- </tr>
258
- <tr>
259
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.9</td>
260
- </tr>
261
- <tr>
262
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">KP400</td>
263
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
264
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.10</td>
265
- </tr>
266
- <tr>
267
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
268
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.6</td>
269
- </tr>
270
- <tr>
271
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">3.0 (US)</td>
272
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
273
- </tr>
274
- <tr>
275
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.4</td>
276
- </tr>
277
- <tr>
278
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">P300</td>
279
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
280
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7</td>
281
- </tr>
282
- <tr>
283
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.13</td>
284
- </tr>
285
- <tr>
286
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.15</td>
287
- </tr>
288
- <tr>
289
- <td align="center" style="border: 1px solid black; padding: 8px;">P304M</td>
290
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (UK)</td>
291
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
292
- </tr>
293
- <tr>
294
- <td align="center" style="border: 1px solid black; padding: 8px;">TP25</td>
295
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
296
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
297
- </tr>
298
- <tr>
299
- <td align="center" rowspan="31" style="border: 1px solid black; padding: 8px;">Switches</td>
300
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">ES20M</td>
301
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
302
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
303
- </tr>
304
- <tr>
305
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.11</td>
306
- </tr>
307
- <tr>
308
- <td align="center" rowspan="5" style="border: 1px solid black; padding: 8px;">HS200</td>
309
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
310
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.7</td>
311
- </tr>
312
- <tr>
313
- <td align="center" style="border: 1px solid black; padding: 8px;">3.0 (US)</td>
314
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.5</td>
315
- </tr>
316
- <tr>
317
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">5.0 (US)</td>
318
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
319
- </tr>
320
- <tr>
321
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.11</td>
322
- </tr>
323
- <tr>
324
- <td align="center" style="border: 1px solid black; padding: 8px;">5.26 (US)</td>
325
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3*</td>
326
- </tr>
327
- <tr>
328
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">HS210</td>
329
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
330
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.8</td>
331
- </tr>
332
- <tr>
333
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
334
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.5</td>
335
- </tr>
336
- <tr>
337
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">HS220</td>
338
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
339
- <td align="center" style="border: 1px solid black; padding: 8px;">1.5.7</td>
340
- </tr>
341
- <tr>
342
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
343
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.3</td>
344
- </tr>
345
- <tr>
346
- <td align="center" style="border: 1px solid black; padding: 8px;">3.26 (US)</td>
347
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.1*</td>
348
- </tr>
349
- <tr>
350
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KP405</td>
351
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
352
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
353
- </tr>
354
- <tr>
355
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.6</td>
356
- </tr>
357
- <tr>
358
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">KS200M</td>
359
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
360
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
361
- </tr>
362
- <tr>
363
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.10</td>
364
- </tr>
365
- <tr>
366
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.11</td>
367
- </tr>
368
- <tr>
369
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.12</td>
370
- </tr>
371
- <tr>
372
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KS205</td>
373
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
374
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2*</td>
375
- </tr>
376
- <tr>
377
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0*</td>
378
- </tr>
379
- <tr>
380
- <td align="center" style="border: 1px solid black; padding: 8px;">KS220</td>
381
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
382
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.13</td>
383
- </tr>
384
- <tr>
385
- <td align="center" style="border: 1px solid black; padding: 8px;">KS220M</td>
386
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
387
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.4</td>
388
- </tr>
389
- <tr>
390
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KS225</td>
391
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
392
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2*</td>
393
- </tr>
394
- <tr>
395
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0*</td>
396
- </tr>
397
- <tr>
398
- <td align="center" style="border: 1px solid black; padding: 8px;">KS230</td>
399
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
400
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.14</td>
401
- </tr>
402
- <tr>
403
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">KS240</td>
404
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
405
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.4*</td>
406
- </tr>
407
- <tr>
408
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5*</td>
409
- </tr>
410
- <tr>
411
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7*</td>
412
- </tr>
413
- <tr>
414
- <td align="center" style="border: 1px solid black; padding: 8px;">S500D</td>
415
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
416
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
417
- </tr>
418
- <tr>
419
- <td align="center" style="border: 1px solid black; padding: 8px;">S505</td>
420
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
421
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
422
- </tr>
423
- <tr>
424
- <td align="center" style="border: 1px solid black; padding: 8px;">S505D</td>
425
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
426
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
427
- </tr>
428
- <tr>
429
- <td align="center" rowspan="39" style="border: 1px solid black; padding: 8px;">Light Bulbs</td>
430
- <td align="center" style="border: 1px solid black; padding: 8px;">KL110</td>
431
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
432
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.11</td>
433
- </tr>
434
- <tr>
435
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KL120</td>
436
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
437
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.6</td>
438
- </tr>
439
- <tr>
440
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.11</td>
441
- </tr>
442
- <tr>
443
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">KL125</td>
444
- <td align="center" style="border: 1px solid black; padding: 8px;">1.20 (US)</td>
445
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
446
- </tr>
447
- <tr>
448
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
449
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7</td>
450
- </tr>
451
- <tr>
452
- <td align="center" style="border: 1px solid black; padding: 8px;">4.0 (US)</td>
453
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
454
- </tr>
455
- <tr>
456
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KL130</td>
457
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
458
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.8</td>
459
- </tr>
460
- <tr>
461
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
462
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.11</td>
463
- </tr>
464
- <tr>
465
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KL135</td>
466
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
467
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.6</td>
468
- </tr>
469
- <tr>
470
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.15</td>
471
- </tr>
472
- <tr>
473
- <td align="center" style="border: 1px solid black; padding: 8px;">KL50</td>
474
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
475
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.13</td>
476
- </tr>
477
- <tr>
478
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KL60</td>
479
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (UN)</td>
480
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.4</td>
481
- </tr>
482
- <tr>
483
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
484
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.13</td>
485
- </tr>
486
- <tr>
487
- <td align="center" style="border: 1px solid black; padding: 8px;">LB110</td>
488
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
489
- <td align="center" style="border: 1px solid black; padding: 8px;">1.8.11</td>
490
- </tr>
491
- <tr>
492
- <td align="center" style="border: 1px solid black; padding: 8px;">L501B</td>
493
- <td align="center" style="border: 1px solid black; padding: 8px;">3.0 (EU)</td>
494
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
495
- </tr>
496
- <tr>
497
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">L510E</td>
498
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">3.0 (US)</td>
499
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
500
- </tr>
501
- <tr>
502
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.2</td>
503
- </tr>
504
- <tr>
505
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">L530E</td>
506
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">3.0 (EU)</td>
507
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.6</td>
508
- </tr>
509
- <tr>
510
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
511
- </tr>
512
- <tr>
513
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.6</td>
514
- </tr>
515
- <tr>
516
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
517
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
518
- </tr>
519
- <tr>
520
- <td align="center" style="border: 1px solid black; padding: 8px;">L630</td>
521
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
522
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.2</td>
523
- </tr>
524
- <tr>
525
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">KL400L5</td>
526
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
527
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.5</td>
528
- </tr>
529
- <tr>
530
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
531
- </tr>
532
- <tr>
533
- <td align="center" style="border: 1px solid black; padding: 8px;">KL420L5</td>
534
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
535
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.2</td>
536
- </tr>
537
- <tr>
538
- <td align="center" rowspan="5" style="border: 1px solid black; padding: 8px;">KL430</td>
539
- <td align="center" style="border: 1px solid black; padding: 8px;">2.0 (UN)</td>
540
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
541
- </tr>
542
- <tr>
543
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
544
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.10</td>
545
- </tr>
546
- <tr>
547
- <td align="center" rowspan="3" style="border: 1px solid black; padding: 8px;">2.0 (US)</td>
548
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.8</td>
549
- </tr>
550
- <tr>
551
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.9</td>
552
- </tr>
553
- <tr>
554
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.11</td>
555
- </tr>
556
- <tr>
557
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">L900-10</td>
558
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
559
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.17</td>
560
- </tr>
561
- <tr>
562
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
563
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.11</td>
564
- </tr>
565
- <tr>
566
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">L900-5</td>
567
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
568
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.17</td>
569
- </tr>
570
- <tr>
571
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
572
- </tr>
573
- <tr>
574
- <td align="center" rowspan="4" style="border: 1px solid black; padding: 8px;">L920-5</td>
575
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (EU)</td>
576
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0.7</td>
577
- </tr>
578
- <tr>
579
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.3</td>
580
- </tr>
581
- <tr>
582
- <td align="center" rowspan="2" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
583
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.0</td>
584
- </tr>
585
- <tr>
586
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.3</td>
587
- </tr>
588
- <tr>
589
- <td align="center" style="border: 1px solid black; padding: 8px;">L930-5</td>
590
- <td align="center" style="border: 1px solid black; padding: 8px;">1.0 (US)</td>
591
- <td align="center" style="border: 1px solid black; padding: 8px;">1.1.2</td>
592
- </tr>
593
- </tbody>
594
- </table>
595
- </div>
46
+
47
+ ## Kasa devices
48
+
49
+ Some newer Kasa devices require authentication. These are marked with [*] in the list below.<br>Hub-Connected Devices may work across TAPO/KASA branded hubs even if they don't work across the native apps.
50
+
51
+ ### Plugs
52
+
53
+ - **EP10**
54
+ - Hardware: 1.0 (US) / Firmware: 1.0.2
55
+ - **EP25**
56
+ - Hardware: 2.6 (US) / Firmware: 1.0.1[*]
57
+ - Hardware: 2.6 (US) / Firmware: 1.0.2[*]
58
+ - **HS100**
59
+ - Hardware: 1.0 (UK) / Firmware: 1.2.6
60
+ - Hardware: 4.1 (UK) / Firmware: 1.1.0[*]
61
+ - Hardware: 1.0 (US) / Firmware: 1.2.5
62
+ - Hardware: 2.0 (US) / Firmware: 1.5.6
63
+ - **HS103**
64
+ - Hardware: 1.0 (US) / Firmware: 1.5.7
65
+ - Hardware: 2.1 (US) / Firmware: 1.1.2
66
+ - Hardware: 2.1 (US) / Firmware: 1.1.4
67
+ - **HS105**
68
+ - Hardware: 1.0 (US) / Firmware: 1.5.6
69
+ - **HS110**
70
+ - Hardware: 1.0 (EU) / Firmware: 1.2.5
71
+ - Hardware: 4.0 (EU) / Firmware: 1.0.4
72
+ - Hardware: 1.0 (US) / Firmware: 1.2.6
73
+ - **KP100**
74
+ - Hardware: 3.0 (US) / Firmware: 1.0.1
75
+ - **KP105**
76
+ - Hardware: 1.0 (UK) / Firmware: 1.0.5
77
+ - Hardware: 1.0 (UK) / Firmware: 1.0.7
78
+ - **KP115**
79
+ - Hardware: 1.0 (EU) / Firmware: 1.0.16
80
+ - Hardware: 1.0 (US) / Firmware: 1.0.17
81
+ - Hardware: 1.0 (US) / Firmware: 1.0.21
82
+ - **KP125**
83
+ - Hardware: 1.0 (US) / Firmware: 1.0.6
84
+ - **KP125M**
85
+ - Hardware: 1.0 (US) / Firmware: 1.1.3[*]
86
+ - Hardware: 1.0 (US) / Firmware: 1.2.3[*]
87
+ - **KP401**
88
+ - Hardware: 1.0 (US) / Firmware: 1.0.0
89
+
90
+ ### Power Strips
91
+
92
+ - **EP40**
93
+ - Hardware: 1.0 (US) / Firmware: 1.0.2
94
+ - **EP40M**
95
+ - Hardware: 1.0 (US) / Firmware: 1.1.0[*]
96
+ - **HS107**
97
+ - Hardware: 1.0 (US) / Firmware: 1.0.8
98
+ - **HS300**
99
+ - Hardware: 1.0 (US) / Firmware: 1.0.10
100
+ - Hardware: 1.0 (US) / Firmware: 1.0.21
101
+ - Hardware: 2.0 (US) / Firmware: 1.0.12
102
+ - Hardware: 2.0 (US) / Firmware: 1.0.3
103
+ - **KP200**
104
+ - Hardware: 3.0 (US) / Firmware: 1.0.3
105
+ - **KP303**
106
+ - Hardware: 1.0 (UK) / Firmware: 1.0.3
107
+ - Hardware: 2.0 (US) / Firmware: 1.0.3
108
+ - Hardware: 2.0 (US) / Firmware: 1.0.9
109
+ - **KP400**
110
+ - Hardware: 1.0 (US) / Firmware: 1.0.10
111
+ - Hardware: 2.0 (US) / Firmware: 1.0.6
112
+ - Hardware: 3.0 (US) / Firmware: 1.0.3
113
+ - Hardware: 3.0 (US) / Firmware: 1.0.4
114
+
115
+ ### Wall Switches
116
+
117
+ - **ES20M**
118
+ - Hardware: 1.0 (US) / Firmware: 1.0.11
119
+ - Hardware: 1.0 (US) / Firmware: 1.0.8
120
+ - **HS200**
121
+ - Hardware: 2.0 (US) / Firmware: 1.5.7
122
+ - Hardware: 3.0 (US) / Firmware: 1.1.5
123
+ - Hardware: 5.0 (US) / Firmware: 1.0.11
124
+ - Hardware: 5.0 (US) / Firmware: 1.0.2
125
+ - Hardware: 5.26 (US) / Firmware: 1.0.3[*]
126
+ - **HS210**
127
+ - Hardware: 1.0 (US) / Firmware: 1.5.8
128
+ - Hardware: 2.0 (US) / Firmware: 1.1.5
129
+ - **HS220**
130
+ - Hardware: 1.0 (US) / Firmware: 1.5.7
131
+ - Hardware: 2.0 (US) / Firmware: 1.0.3
132
+ - Hardware: 3.26 (US) / Firmware: 1.0.1[*]
133
+ - **KP405**
134
+ - Hardware: 1.0 (US) / Firmware: 1.0.5
135
+ - Hardware: 1.0 (US) / Firmware: 1.0.6
136
+ - **KS200**
137
+ - Hardware: 1.0 (US) / Firmware: 1.0.8
138
+ - **KS200M**
139
+ - Hardware: 1.0 (US) / Firmware: 1.0.10
140
+ - Hardware: 1.0 (US) / Firmware: 1.0.11
141
+ - Hardware: 1.0 (US) / Firmware: 1.0.12
142
+ - Hardware: 1.0 (US) / Firmware: 1.0.8
143
+ - **KS205**
144
+ - Hardware: 1.0 (US) / Firmware: 1.0.2[*]
145
+ - Hardware: 1.0 (US) / Firmware: 1.1.0[*]
146
+ - **KS220**
147
+ - Hardware: 1.0 (US) / Firmware: 1.0.13
148
+ - **KS220M**
149
+ - Hardware: 1.0 (US) / Firmware: 1.0.4
150
+ - **KS225**
151
+ - Hardware: 1.0 (US) / Firmware: 1.0.2[*]
152
+ - Hardware: 1.0 (US) / Firmware: 1.1.0[*]
153
+ - **KS230**
154
+ - Hardware: 1.0 (US) / Firmware: 1.0.14
155
+ - **KS240**
156
+ - Hardware: 1.0 (US) / Firmware: 1.0.4[*]
157
+ - Hardware: 1.0 (US) / Firmware: 1.0.5[*]
158
+ - Hardware: 1.0 (US) / Firmware: 1.0.7[*]
159
+
160
+ ### Bulbs
161
+
162
+ - **KL110**
163
+ - Hardware: 1.0 (US) / Firmware: 1.8.11
164
+ - **KL120**
165
+ - Hardware: 1.0 (US) / Firmware: 1.8.11
166
+ - Hardware: 1.0 (US) / Firmware: 1.8.6
167
+ - **KL125**
168
+ - Hardware: 1.20 (US) / Firmware: 1.0.5
169
+ - Hardware: 2.0 (US) / Firmware: 1.0.7
170
+ - Hardware: 4.0 (US) / Firmware: 1.0.5
171
+ - **KL130**
172
+ - Hardware: 1.0 (EU) / Firmware: 1.8.8
173
+ - Hardware: 1.0 (US) / Firmware: 1.8.11
174
+ - **KL135**
175
+ - Hardware: 1.0 (US) / Firmware: 1.0.15
176
+ - Hardware: 1.0 (US) / Firmware: 1.0.6
177
+ - **KL50**
178
+ - Hardware: 1.0 (US) / Firmware: 1.1.13
179
+ - **KL60**
180
+ - Hardware: 1.0 (UN) / Firmware: 1.1.4
181
+ - Hardware: 1.0 (US) / Firmware: 1.1.13
182
+ - **LB110**
183
+ - Hardware: 1.0 (US) / Firmware: 1.8.11
184
+
185
+ ### Light Strips
186
+
187
+ - **KL400L5**
188
+ - Hardware: 1.0 (US) / Firmware: 1.0.5
189
+ - Hardware: 1.0 (US) / Firmware: 1.0.8
190
+ - **KL420L5**
191
+ - Hardware: 1.0 (US) / Firmware: 1.0.2
192
+ - **KL430**
193
+ - Hardware: 2.0 (UN) / Firmware: 1.0.8
194
+ - Hardware: 1.0 (US) / Firmware: 1.0.10
195
+ - Hardware: 2.0 (US) / Firmware: 1.0.11
196
+ - Hardware: 2.0 (US) / Firmware: 1.0.8
197
+ - Hardware: 2.0 (US) / Firmware: 1.0.9
198
+
199
+ ### Hubs
200
+
201
+ - **KH100**
202
+ - Hardware: 1.0 (EU) / Firmware: 1.2.3[*]
203
+ - Hardware: 1.0 (EU) / Firmware: 1.5.12[*]
204
+ - Hardware: 1.0 (UK) / Firmware: 1.5.6[*]
205
+
206
+ ### Hub-Connected Devices
207
+
208
+ - **KE100**
209
+ - Hardware: 1.0 (EU) / Firmware: 2.4.0[*]
210
+ - Hardware: 1.0 (EU) / Firmware: 2.8.0[*]
211
+ - Hardware: 1.0 (UK) / Firmware: 2.8.0[*]
212
+
213
+
214
+ ## Tapo devices
215
+
216
+ All Tapo devices require authentication.<br>Hub-Connected Devices may work across TAPO/KASA branded hubs even if they don't work across the native apps.
217
+
218
+ ### Plugs
219
+
220
+ - **P100**
221
+ - Hardware: 1.0.0 (US) / Firmware: 1.1.3
222
+ - Hardware: 1.0.0 (US) / Firmware: 1.3.7
223
+ - Hardware: 1.0.0 (US) / Firmware: 1.4.0
224
+ - **P110**
225
+ - Hardware: 1.0 (EU) / Firmware: 1.0.7
226
+ - Hardware: 1.0 (EU) / Firmware: 1.2.3
227
+ - Hardware: 1.0 (UK) / Firmware: 1.3.0
228
+ - **P110M**
229
+ - Hardware: 1.0 (AU) / Firmware: 1.2.3
230
+ - Hardware: 1.0 (EU) / Firmware: 1.2.3
231
+ - **P115**
232
+ - Hardware: 1.0 (EU) / Firmware: 1.2.3
233
+ - Hardware: 1.0 (US) / Firmware: 1.1.3
234
+ - **P125M**
235
+ - Hardware: 1.0 (US) / Firmware: 1.1.0
236
+ - **P135**
237
+ - Hardware: 1.0 (US) / Firmware: 1.0.5
238
+ - Hardware: 1.0 (US) / Firmware: 1.2.0
239
+ - **TP15**
240
+ - Hardware: 1.0 (US) / Firmware: 1.0.3
241
+
242
+ ### Power Strips
243
+
244
+ - **P210M**
245
+ - Hardware: 1.0 (US) / Firmware: 1.0.3
246
+ - **P300**
247
+ - Hardware: 1.0 (EU) / Firmware: 1.0.13
248
+ - Hardware: 1.0 (EU) / Firmware: 1.0.15
249
+ - Hardware: 1.0 (EU) / Firmware: 1.0.7
250
+ - **P304M**
251
+ - Hardware: 1.0 (UK) / Firmware: 1.0.3
252
+ - **P306**
253
+ - Hardware: 1.0 (US) / Firmware: 1.1.2
254
+ - **TP25**
255
+ - Hardware: 1.0 (US) / Firmware: 1.0.2
256
+
257
+ ### Wall Switches
258
+
259
+ - **S500D**
260
+ - Hardware: 1.0 (US) / Firmware: 1.0.5
261
+ - **S505**
262
+ - Hardware: 1.0 (US) / Firmware: 1.0.2
263
+ - **S505D**
264
+ - Hardware: 1.0 (US) / Firmware: 1.1.0
265
+
266
+ ### Bulbs
267
+
268
+ - **L510B**
269
+ - Hardware: 3.0 (EU) / Firmware: 1.0.5
270
+ - **L510E**
271
+ - Hardware: 3.0 (US) / Firmware: 1.0.5
272
+ - Hardware: 3.0 (US) / Firmware: 1.1.2
273
+ - **L530E**
274
+ - Hardware: 3.0 (EU) / Firmware: 1.0.6
275
+ - Hardware: 3.0 (EU) / Firmware: 1.1.0
276
+ - Hardware: 3.0 (EU) / Firmware: 1.1.6
277
+ - Hardware: 2.0 (US) / Firmware: 1.1.0
278
+ - **L630**
279
+ - Hardware: 1.0 (EU) / Firmware: 1.1.2
280
+
281
+ ### Light Strips
282
+
283
+ - **L900-10**
284
+ - Hardware: 1.0 (EU) / Firmware: 1.0.17
285
+ - Hardware: 1.0 (US) / Firmware: 1.0.11
286
+ - **L900-5**
287
+ - Hardware: 1.0 (EU) / Firmware: 1.0.17
288
+ - Hardware: 1.0 (EU) / Firmware: 1.1.0
289
+ - **L920-5**
290
+ - Hardware: 1.0 (EU) / Firmware: 1.0.7
291
+ - Hardware: 1.0 (EU) / Firmware: 1.1.3
292
+ - Hardware: 1.0 (US) / Firmware: 1.1.0
293
+ - Hardware: 1.0 (US) / Firmware: 1.1.3
294
+ - **L930-5**
295
+ - Hardware: 1.0 (US) / Firmware: 1.1.2
296
+
297
+ ### Cameras
298
+
299
+ - **C100**
300
+ - Hardware: 4.0 / Firmware: 1.3.14
301
+ - **C210**
302
+ - Hardware: 2.0 (EU) / Firmware: 1.4.2
303
+ - Hardware: 2.0 (EU) / Firmware: 1.4.3
304
+ - **C225**
305
+ - Hardware: 2.0 (US) / Firmware: 1.0.11
306
+ - **C325WB**
307
+ - Hardware: 1.0 (EU) / Firmware: 1.1.17
308
+ - **C520WS**
309
+ - Hardware: 1.0 (US) / Firmware: 1.2.8
310
+ - **TC65**
311
+ - Hardware: 1.0 / Firmware: 1.3.9
312
+ - **TC70**
313
+ - Hardware: 3.0 / Firmware: 1.3.11
314
+
315
+ ### Hubs
316
+
317
+ - **H100**
318
+ - Hardware: 1.0 (EU) / Firmware: 1.2.3
319
+ - Hardware: 1.0 (EU) / Firmware: 1.5.10
320
+ - Hardware: 1.0 (EU) / Firmware: 1.5.5
321
+ - **H200**
322
+ - Hardware: 1.0 (EU) / Firmware: 1.3.2
323
+ - Hardware: 1.0 (US) / Firmware: 1.3.6
324
+
325
+ ### Hub-Connected Devices
326
+
327
+ - **S200B**
328
+ - Hardware: 1.0 (EU) / Firmware: 1.11.0
329
+ - Hardware: 1.0 (US) / Firmware: 1.12.0
330
+ - **S200D**
331
+ - Hardware: 1.0 (EU) / Firmware: 1.11.0
332
+ - Hardware: 1.0 (EU) / Firmware: 1.12.0
333
+ - **T100**
334
+ - Hardware: 1.0 (EU) / Firmware: 1.12.0
335
+ - **T110**
336
+ - Hardware: 1.0 (EU) / Firmware: 1.8.0
337
+ - Hardware: 1.0 (EU) / Firmware: 1.9.0
338
+ - Hardware: 1.0 (US) / Firmware: 1.9.0
339
+ - **T300**
340
+ - Hardware: 1.0 (EU) / Firmware: 1.7.0
341
+ - **T310**
342
+ - Hardware: 1.0 (EU) / Firmware: 1.5.0
343
+ - Hardware: 1.0 (US) / Firmware: 1.5.0
344
+ - **T315**
345
+ - Hardware: 1.0 (EU) / Firmware: 1.7.0
346
+ - Hardware: 1.0 (US) / Firmware: 1.8.0
596
347
 
597
348
  ### Credits
598
349
  - Huge thanks to rytilahti and all the developers at python-kasa for the [Python-Kasa API](https://github.com/python-kasa/python-kasa), plasticrake for the [Unofficial API documentation](https://github.com/plasticrake/tplink-smarthome-api), and maxileith for [Excellent Python Implementation](https://github.com/maxileith/homebridge-appletv-enhanced).