| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -26,6 +26,9 @@ jobs: | |||
| 26 | 26 | run: | | |
| 27 | 27 | python -m pip install --upgrade pip poetry | |
| 28 | 28 | poetry install | |
| 29 | + - name: "Check supported device md files are up to date" | ||
| 30 | + run: | | ||
| 31 | + poetry run pre-commit run generate-supported --all-files | ||
| 29 | 32 | - name: "Linting and code formating (ruff)" | |
| 30 | 33 | run: | | |
| 31 | 34 | poetry run pre-commit run ruff --all-files | |
@@ -47,9 +50,6 @@ jobs: | |||
| 47 | 50 | - name: "Run check-ast" | |
| 48 | 51 | run: | | |
| 49 | 52 | poetry run pre-commit run check-ast --all-files | |
| 50 | - - name: "Check README for supported models" | ||
| 51 | - run: | | ||
| 52 | - poetry run python -m devtools.check_readme_vs_fixtures | ||
| 53 | 53 | ||
| 54 | 54 | ||
| 55 | 55 | tests: | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -27,3 +27,14 @@ repos: | |||
| 27 | 27 | hooks: | |
| 28 | 28 | - id: doc8 | |
| 29 | 29 | additional_dependencies: [tomli] | |
| 30 | + | ||
| 31 | + - repo: local | ||
| 32 | + hooks: | ||
| 33 | + - id: generate-supported | ||
| 34 | + name: Generate supported devices | ||
| 35 | + description: This hook generates the supported device sections of README.md and SUPPORTED.md | ||
| 36 | + entry: devtools/generate_supported.py | ||
| 37 | + language: system # Required or pre-commit creates a new venv | ||
| 38 | + verbose: true # Show output on success | ||
| 39 | + types: [json] | ||
| 40 | + pass_filenames: false # passing filenames causes the hook to run in batches against all-files | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -220,120 +220,32 @@ Note, that this works currently only on kasa-branded devices which use port 9999 | |||
| 220 | 220 | ||
| 221 | 221 | ## Supported devices | |
| 222 | 222 | ||
| 223 | - In principle, most kasa-branded devices that are locally controllable using the official Kasa mobile app work with this library. | ||
| 224 | - | ||
| 225 | - The following lists the devices that have been manually verified to work. | ||
| 226 | - **If your device is unlisted but working, please open a pull request to update the list and add a fixture file (use `python -m devtools.dump_devinfo` to generate one).** | ||
| 227 | - | ||
| 228 | - ### Plugs | ||
| 229 | - | ||
| 230 | - * HS100 | ||
| 231 | - * HS103 | ||
| 232 | - * HS105 | ||
| 233 | - * HS107 | ||
| 234 | - * HS110 | ||
| 235 | - * KP100 | ||
| 236 | - * KP105 | ||
| 237 | - * KP115 | ||
| 238 | - * KP125 | ||
| 239 | - * KP125M [See note below](#newer-kasa-branded-devices) | ||
| 240 | - * KP401 | ||
| 241 | - * EP10 | ||
| 242 | - * EP25 [See note below](#newer-kasa-branded-devices) | ||
| 243 | - | ||
| 244 | - ### Power Strips | ||
| 245 | - | ||
| 246 | - * EP40 | ||
| 247 | - * HS300 | ||
| 248 | - * KP303 | ||
| 249 | - * KP200 (in wall) | ||
| 250 | - * KP400 | ||
| 251 | - * KP405 (dimmer) | ||
| 252 | - | ||
| 253 | - ### Wall switches | ||
| 254 | - | ||
| 255 | - * ES20M | ||
| 256 | - * HS200 | ||
| 257 | - * HS210 | ||
| 258 | - * HS220 | ||
| 259 | - * KS200M (partial support, no motion, no daylight detection) | ||
| 260 | - * KS220M (partial support, no motion, no daylight detection) | ||
| 261 | - * KS230 | ||
| 223 | + The following devices have been tested and confirmed as working. If your device is unlisted but working, please open a pull request to update the list and add a fixture file (use `python -m devtools.dump_devinfo` to generate one). | ||
| 262 | 224 | ||
| 263 | - ### Bulbs | ||
| 264 | - | ||
| 265 | - * LB100 | ||
| 266 | - * LB110 | ||
| 267 | - * LB120 | ||
| 268 | - * LB130 | ||
| 269 | - * LB230 | ||
| 270 | - * KL50 | ||
| 271 | - * KL60 | ||
| 272 | - * KL110 | ||
| 273 | - * KL120 | ||
| 274 | - * KL125 | ||
| 275 | - * KL130 | ||
| 276 | - * KL135 | ||
| 277 | - | ||
| 278 | - ### Light strips | ||
| 279 | - | ||
| 280 | - * KL400L5 | ||
| 281 | - * KL420L5 | ||
| 282 | - * KL430 | ||
| 283 | - | ||
| 284 | - ### Tapo branded devices | ||
| 285 | - | ||
| 286 | - The library has recently added a limited supported for devices that carry Tapo branding. | ||
| 287 | - | ||
| 288 | - At the moment, the following devices have been confirmed to work: | ||
| 289 | - | ||
| 290 | - #### Plugs | ||
| 291 | - | ||
| 292 | - * Tapo P110 | ||
| 293 | - * Tapo P125M | ||
| 294 | - * Tapo P135 (dimming not yet supported) | ||
| 295 | - * Tapo TP15 | ||
| 296 | - | ||
| 297 | - #### Bulbs | ||
| 298 | - | ||
| 299 | - * Tapo L510B | ||
| 300 | - * Tapo L510E | ||
| 301 | - * Tapo L530E | ||
| 302 | - | ||
| 303 | - #### Light strips | ||
| 304 | - | ||
| 305 | - * Tapo L900-5 | ||
| 306 | - * Tapo L900-10 | ||
| 307 | - * Tapo L920-5 | ||
| 308 | - * Tapo L930-5 | ||
| 309 | - | ||
| 310 | - #### Wall switches | ||
| 311 | - | ||
| 312 | - * Tapo S500D | ||
| 313 | - * Tapo S505 | ||
| 314 | - | ||
| 315 | - #### Power strips | ||
| 316 | - | ||
| 317 | - * Tapo P300 | ||
| 318 | - * Tapo TP25 | ||
| 319 | - | ||
| 320 | - #### Hubs | ||
| 321 | - | ||
| 322 | - * Tapo H100 | ||
| 225 | + <!--Do not edit text inside the SUPPORTED section below --> | ||
| 226 | + <!--SUPPORTED_START--> | ||
| 227 | + ### Supported Kasa devices | ||
| 323 | 228 | ||
| 324 | - ### Newer Kasa branded devices | ||
| 229 | + - **Plugs**: EP10, EP25<sup>\*</sup>, HS100<sup>\*\*</sup>, HS103, HS105, HS110, KP100, KP105, KP115, KP125, KP125M<sup>\*</sup>, KP401 | ||
| 230 | + - **Power Strips**: EP40, HS107, HS300, KP200, KP303, KP400 | ||
| 231 | + - **Wall Switches**: ES20M, HS200, HS210, HS220, KP405, KS200M, KS205<sup>\*</sup>, KS220M, KS225<sup>\*</sup>, KS230 | ||
| 232 | + - **Bulbs**: KL110, KL120, KL125, KL130, KL135, KL50, KL60, LB100, LB110, LB120, LB130 | ||
| 233 | + - **Light Strips**: KL400L5, KL420L5, KL430 | ||
| 325 | 234 | ||
| 326 | - Some newer hardware versions of Kasa branded devices are now using the same protocol as | ||
| 327 | - Tapo branded devices. Support for these devices is currently limited as per TAPO branded | ||
| 328 | - devices: | ||
| 235 | + ### Supported Tapo<sup>\*</sup> devices | ||
| 329 | 236 | ||
| 330 | - * Kasa EP25 (plug) hw_version 2.6 | ||
| 331 | - * Kasa KP125M (plug) | ||
| 332 | - * Kasa KS205 (Wifi/Matter Wall Switch) | ||
| 333 | - * Kasa KS225 (Wifi/Matter Wall Dimmer Switch) | ||
| 237 | + - **Plugs**: P100, P110, P125M, P135, TP15 | ||
| 238 | + - **Power Strips**: P300, TP25 | ||
| 239 | + - **Wall Switches**: S500D, S505 | ||
| 240 | + - **Bulbs**: L510B, L510E, L530E | ||
| 241 | + - **Light Strips**: L900-10, L900-5, L920-5, L930-5 | ||
| 242 | + - **Hubs**: H100 | ||
| 334 | 243 | ||
| 244 | + <!--SUPPORTED_END--> | ||
| 245 | + <sup>*</sup> Model requires authentication<br> | ||
| 246 | + <sup>**</sup> Newer versions require authentication | ||
| 335 | 247 | ||
| 336 | - **If your device is unlisted but working, please open a pull request to update the list and add a fixture file (use `python -m devtools.dump_devinfo` to generate one).** | ||
| 248 | + See [supported devices in our documentation](SUPPORTED.md) for more detailed information about tested hardware and software versions. | ||
| 337 | 249 | ||
| 338 | 250 | ## Resources | |
| 339 | 251 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,210 @@ | |||
| 1 | + # Supported devices | ||
| 2 | + | ||
| 3 | + The following devices have been tested and confirmed as working. If your device is unlisted but working, please open a pull request to update the list and add a fixture file (use `python -m devtools.dump_devinfo` to generate one). | ||
| 4 | + | ||
| 5 | + <!--Do not edit text inside the SUPPORTED section below --> | ||
| 6 | + <!--SUPPORTED_START--> | ||
| 7 | + ## Kasa devices | ||
| 8 | + | ||
| 9 | + Some newer Kasa devices require authentication. These are marked with <sup>*</sup> in the list below. | ||
| 10 | + | ||
| 11 | + ### Plugs | ||
| 12 | + | ||
| 13 | + - **EP10** | ||
| 14 | + - Hardware: 1.0 (US) / Firmware: 1.0.2 | ||
| 15 | + - **EP25** | ||
| 16 | + - Hardware: 2.6 (US) / Firmware: 1.0.1<sup>\*</sup> | ||
| 17 | + - Hardware: 2.6 (US) / Firmware: 1.0.2<sup>\*</sup> | ||
| 18 | + - **HS100** | ||
| 19 | + - Hardware: 1.0 (UK) / Firmware: 1.2.6 | ||
| 20 | + - Hardware: 4.1 (UK) / Firmware: 1.1.0<sup>\*</sup> | ||
| 21 | + - Hardware: 1.0 (US) / Firmware: 1.2.5 | ||
| 22 | + - Hardware: 2.0 (US) / Firmware: 1.5.6 | ||
| 23 | + - **HS103** | ||
| 24 | + - Hardware: 1.0 (US) / Firmware: 1.5.7 | ||
| 25 | + - Hardware: 2.1 (US) / Firmware: 1.1.2 | ||
| 26 | + - Hardware: 2.1 (US) / Firmware: 1.1.4 | ||
| 27 | + - **HS105** | ||
| 28 | + - Hardware: 1.0 (US) / Firmware: 1.2.9 | ||
| 29 | + - Hardware: 1.0 (US) / Firmware: 1.5.6 | ||
| 30 | + - **HS110** | ||
| 31 | + - Hardware: 1.0 (EU) / Firmware: 1.2.5 | ||
| 32 | + - Hardware: 2.0 (EU) / Firmware: 1.5.2 | ||
| 33 | + - Hardware: 4.0 (EU) / Firmware: 1.0.4 | ||
| 34 | + - Hardware: 1.0 (US) / Firmware: 1.0.8 | ||
| 35 | + - **KP100** | ||
| 36 | + - Hardware: 3.0 (US) / Firmware: 1.0.1 | ||
| 37 | + - **KP105** | ||
| 38 | + - Hardware: 1.0 (UK) / Firmware: 1.0.5 | ||
| 39 | + - Hardware: 1.0 (UK) / Firmware: 1.0.7 | ||
| 40 | + - **KP115** | ||
| 41 | + - Hardware: 1.0 (EU) / Firmware: 1.0.16 | ||
| 42 | + - Hardware: 1.0 (US) / Firmware: 1.0.17 | ||
| 43 | + - Hardware: 1.0 (US) / Firmware: 1.0.21 | ||
| 44 | + - **KP125** | ||
| 45 | + - Hardware: 1.0 (US) / Firmware: 1.0.6 | ||
| 46 | + - **KP125M** | ||
| 47 | + - Hardware: 1.0 (US) / Firmware: 1.1.3<sup>\*</sup> | ||
| 48 | + - **KP401** | ||
| 49 | + - Hardware: 1.0 (US) / Firmware: 1.0.0 | ||
| 50 | + | ||
| 51 | + ### Power Strips | ||
| 52 | + | ||
| 53 | + - **EP40** | ||
| 54 | + - Hardware: 1.0 (US) / Firmware: 1.0.2 | ||
| 55 | + - **HS107** | ||
| 56 | + - Hardware: 1.0 (US) / Firmware: 1.0.8 | ||
| 57 | + - **HS300** | ||
| 58 | + - Hardware: 1.0 (US) / Firmware: 1.0.10 | ||
| 59 | + - Hardware: 2.0 (US) / Firmware: 1.0.12 | ||
| 60 | + - Hardware: 2.0 (US) / Firmware: 1.0.3 | ||
| 61 | + - **KP200** | ||
| 62 | + - Hardware: 3.0 (US) / Firmware: 1.0.3 | ||
| 63 | + - **KP303** | ||
| 64 | + - Hardware: 1.0 (UK) / Firmware: 1.0.3 | ||
| 65 | + - Hardware: 2.0 (US) / Firmware: 1.0.3 | ||
| 66 | + - **KP400** | ||
| 67 | + - Hardware: 1.0 (US) / Firmware: 1.0.10 | ||
| 68 | + - Hardware: 2.0 (US) / Firmware: 1.0.6 | ||
| 69 | + | ||
| 70 | + ### Wall Switches | ||
| 71 | + | ||
| 72 | + - **ES20M** | ||
| 73 | + - Hardware: 1.0 (US) / Firmware: 1.0.8 | ||
| 74 | + - **HS200** | ||
| 75 | + - Hardware: 1.0 (US) / Firmware: 1.1.0 | ||
| 76 | + - Hardware: 2.0 (US) / Firmware: 1.5.7 | ||
| 77 | + - Hardware: 5.0 (US) / Firmware: 1.0.2 | ||
| 78 | + - **HS210** | ||
| 79 | + - Hardware: 1.0 (US) / Firmware: 1.5.8 | ||
| 80 | + - **HS220** | ||
| 81 | + - Hardware: 1.0 (US) / Firmware: 1.5.7 | ||
| 82 | + - Hardware: 1.0 (US) / Firmware: 1.5.7 | ||
| 83 | + - Hardware: 2.0 (US) / Firmware: 1.0.3 | ||
| 84 | + - **KP405** | ||
| 85 | + - Hardware: 1.0 (US) / Firmware: 1.0.5 | ||
| 86 | + - **KS200M** | ||
| 87 | + - Hardware: 1.0 (US) / Firmware: 1.0.8 | ||
| 88 | + - **KS205** | ||
| 89 | + - Hardware: 1.0 (US) / Firmware: 1.0.2<sup>\*</sup> | ||
| 90 | + - **KS220M** | ||
| 91 | + - Hardware: 1.0 (US) / Firmware: 1.0.4 | ||
| 92 | + - **KS225** | ||
| 93 | + - Hardware: 1.0 (US) / Firmware: 1.0.2<sup>\*</sup> | ||
| 94 | + - **KS230** | ||
| 95 | + - Hardware: 1.0 (US) / Firmware: 1.0.14 | ||
| 96 | + | ||
| 97 | + ### Bulbs | ||
| 98 | + | ||
| 99 | + - **KL110** | ||
| 100 | + - Hardware: 1.0 (US) / Firmware: 1.8.11 | ||
| 101 | + - **KL120** | ||
| 102 | + - Hardware: 1.0 (US) / Firmware: 1.8.6 | ||
| 103 | + - **KL125** | ||
| 104 | + - Hardware: 1.20 (US) / Firmware: 1.0.5 | ||
| 105 | + - Hardware: 2.0 (US) / Firmware: 1.0.7 | ||
| 106 | + - Hardware: 4.0 (US) / Firmware: 1.0.5 | ||
| 107 | + - **KL130** | ||
| 108 | + - Hardware: 1.0 (EU) / Firmware: 1.8.8 | ||
| 109 | + - Hardware: 1.0 (US) / Firmware: 1.8.11 | ||
| 110 | + - **KL135** | ||
| 111 | + - Hardware: 1.0 (US) / Firmware: 1.0.6 | ||
| 112 | + - **KL50** | ||
| 113 | + - Hardware: 1.0 (US) / Firmware: 1.1.13 | ||
| 114 | + - **KL60** | ||
| 115 | + - Hardware: 1.0 (UN) / Firmware: 1.1.4 | ||
| 116 | + - Hardware: 1.0 (US) / Firmware: 1.1.13 | ||
| 117 | + - **LB100** | ||
| 118 | + - Hardware: 1.0 (US) / Firmware: 1.4.3 | ||
| 119 | + - **LB110** | ||
| 120 | + - Hardware: 1.0 (US) / Firmware: 1.8.11 | ||
| 121 | + - **LB120** | ||
| 122 | + - Hardware: 1.0 (US) / Firmware: 1.1.0 | ||
| 123 | + - **LB130** | ||
| 124 | + - Hardware: 1.0 (US) / Firmware: 1.6.0 | ||
| 125 | + | ||
| 126 | + ### Light Strips | ||
| 127 | + | ||
| 128 | + - **KL400L5** | ||
| 129 | + - Hardware: 1.0 (US) / Firmware: 1.0.5 | ||
| 130 | + - Hardware: 1.0 (US) / Firmware: 1.0.8 | ||
| 131 | + - **KL420L5** | ||
| 132 | + - Hardware: 1.0 (US) / Firmware: 1.0.2 | ||
| 133 | + - **KL430** | ||
| 134 | + - Hardware: 2.0 (UN) / Firmware: 1.0.8 | ||
| 135 | + - Hardware: 1.0 (US) / Firmware: 1.0.10 | ||
| 136 | + - Hardware: 2.0 (US) / Firmware: 1.0.11 | ||
| 137 | + - Hardware: 2.0 (US) / Firmware: 1.0.8 | ||
| 138 | + - Hardware: 2.0 (US) / Firmware: 1.0.9 | ||
| 139 | + | ||
| 140 | + | ||
| 141 | + ## Tapo devices | ||
| 142 | + | ||
| 143 | + All Tapo devices require authentication. | ||
| 144 | + | ||
| 145 | + ### Plugs | ||
| 146 | + | ||
| 147 | + - **P100** | ||
| 148 | + - Hardware: 1.0.0 / Firmware: 1.1.3 | ||
| 149 | + - Hardware: 1.0.0 / Firmware: 1.3.7 | ||
| 150 | + - **P110** | ||
| 151 | + - Hardware: 1.0 (EU) / Firmware: 1.0.7 | ||
| 152 | + - Hardware: 1.0 (EU) / Firmware: 1.2.3 | ||
| 153 | + - Hardware: 1.0 (UK) / Firmware: 1.3.0 | ||
| 154 | + - **P125M** | ||
| 155 | + - Hardware: 1.0 (US) / Firmware: 1.1.0 | ||
| 156 | + - **P135** | ||
| 157 | + - Hardware: 1.0 (US) / Firmware: 1.0.5 | ||
| 158 | + - **TP15** | ||
| 159 | + - Hardware: 1.0 (US) / Firmware: 1.0.3 | ||
| 160 | + | ||
| 161 | + ### Power Strips | ||
| 162 | + | ||
| 163 | + - **P300** | ||
| 164 | + - Hardware: 1.0 (EU) / Firmware: 1.0.13 | ||
| 165 | + - Hardware: 1.0 (EU) / Firmware: 1.0.7 | ||
| 166 | + - **TP25** | ||
| 167 | + - Hardware: 1.0 (US) / Firmware: 1.0.2 | ||
| 168 | + | ||
| 169 | + ### Wall Switches | ||
| 170 | + | ||
| 171 | + - **S500D** | ||
| 172 | + - Hardware: 1.0 (US) / Firmware: 1.0.5 | ||
| 173 | + - **S505** | ||
| 174 | + - Hardware: 1.0 (US) / Firmware: 1.0.2 | ||
| 175 | + | ||
| 176 | + ### Bulbs | ||
| 177 | + | ||
| 178 | + - **L510B** | ||
| 179 | + - Hardware: 3.0 (EU) / Firmware: 1.0.5 | ||
| 180 | + - **L510E** | ||
| 181 | + - Hardware: 3.0 (US) / Firmware: 1.0.5 | ||
| 182 | + - Hardware: 3.0 (US) / Firmware: 1.1.2 | ||
| 183 | + - **L530E** | ||
| 184 | + - Hardware: 3.0 (EU) / Firmware: 1.0.6 | ||
| 185 | + - Hardware: 3.0 (EU) / Firmware: 1.1.0 | ||
| 186 | + - Hardware: 3.0 (EU) / Firmware: 1.1.6 | ||
| 187 | + - Hardware: 2.0 (US) / Firmware: 1.1.0 | ||
| 188 | + | ||
| 189 | + ### Light Strips | ||
| 190 | + | ||
| 191 | + - **L900-10** | ||
| 192 | + - Hardware: 1.0 (EU) / Firmware: 1.0.17 | ||
| 193 | + - Hardware: 1.0 (US) / Firmware: 1.0.11 | ||
| 194 | + - **L900-5** | ||
| 195 | + - Hardware: 1.0 (EU) / Firmware: 1.0.17 | ||
| 196 | + - Hardware: 1.0 (EU) / Firmware: 1.1.0 | ||
| 197 | + - **L920-5** | ||
| 198 | + - Hardware: 1.0 (US) / Firmware: 1.1.0 | ||
| 199 | + - Hardware: 1.0 (US) / Firmware: 1.1.3 | ||
| 200 | + - **L930-5** | ||
| 201 | + - Hardware: 1.0 (US) / Firmware: 1.1.2 | ||
| 202 | + | ||
| 203 | + ### Hubs | ||
| 204 | + | ||
| 205 | + - **H100** | ||
| 206 | + - Hardware: 1.0 (EU) / Firmware: 1.2.3 | ||
| 207 | + - Hardware: 1.0 (EU) / Firmware: 1.5.5 | ||
| 208 | + | ||
| 209 | + | ||
| 210 | + <!--SUPPORTED_END--> | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments