- Fork tapo crate to add missing schedule/timer APIs - Add get_countdown_rules, get_schedule_rules, get_next_event methods - New readings: countdown_active, countdown_remain, schedule_count, schedule_active_count, next_event_time - Add local compilation to build script alongside cross-compilation - Implement offline polling - device collection continues when server disconnects - Add more device readings: on_time, signal_level, rssi, runtime_today/month, energy_month Vendored tapo fork in tapo-fork/ with minimal changes to add schedule APIs.
11 KiB
11 KiB
Supported devices
✓ - Rust only
✅ - Rust and Python
| Feature |
GenericDevice |
L510 L520 L610 |
L530 L535 L630 |
L900 |
L920 L930 |
P100 P105 |
P110 P110M P115 |
P300 P306 |
P304M P316M |
H100 |
|---|---|---|---|---|---|---|---|---|---|---|
| device_reboot | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
| device_reset | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
| get_child_device_component_list_json | ✅ | ✅ | ✅ | |||||||
| get_child_device_list | ✅ | ✅ | ✅ | |||||||
| get_child_device_list_json | ✅ | ✅ | ✅ | |||||||
| get_current_power | ✅ | |||||||||
| get_device_info | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| get_device_info_json | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| get_device_usage | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ||||
| get_energy_data | ✅ | |||||||||
| get_energy_usage | ✅ | |||||||||
| get_power_data | ✅ | |||||||||
| get_supported_ringtone_list | ✅ | |||||||||
| off | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |||
| on | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |||
| play_alarm | ✅ | |||||||||
| refresh_session | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| set_brightness | ✅ | ✅ | ✅ | ✅ | ||||||
| set_color | ✅ | ✅ | ✅ | |||||||
| set_color_temperature | ✅ | ✅ | ✅ | |||||||
| set_hue_saturation | ✅ | ✅ | ✅ | |||||||
| set_lighting_effect | ✅ | |||||||||
| set() API * | ✅ | ✅ | ✅ | |||||||
| stop_alarm | ✅ |
* The set() API allows multiple properties to be set in a single request.
Hub (H100) Child Devices
✓ - Rust only
✅ - Rust and Python
| Feature |
KE100 |
S200B |
T100 |
T110 |
T300 |
T310 T315 |
|---|---|---|---|---|---|---|
| get_device_info * | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| get_device_info_json | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| get_temperature_humidity_records | ✅ | |||||
| get_trigger_logs | ✅ | ✅ | ✅ | ✅ | ||
| set_child_protection | ✅ | |||||
| set_frost_protection | ✅ | |||||
| set_max_control_temperature | ✅ | |||||
| set_min_control_temperature | ✅ | |||||
| set_target_temperature | ✅ | |||||
| set_temperature_offset | ✅ |
* Obtained by calling get_child_device_list on the hub device or get_device_info on a child device handler.
Power Strips Child Devices
✓ - Rust only
✅ - Rust and Python
| Feature |
P300 P306 |
P304M P316M |
|---|---|---|
| get_current_power | ✅ | |
| get_device_info * | ✅ | ✅ |
| get_device_info_json | ✅ | ✅ |
| get_device_usage | ✅ | |
| get_energy_data | ✅ | |
| get_energy_usage | ✅ | |
| get_power_data | ✅ | |
| off | ✅ | ✅ |
| on | ✅ | ✅ |
* Obtained by calling get_child_device_list on the hub device or get_device_info on a child device handler.