blob: 3d7598f5d88cb10e17b7da76b02b237c15dcb7d2 (
plain) (
blame)
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
|
Python control for Broadlink RM2 IR controllers
===============================================
A simple Python API for controlling IR controllers from [Broadlink](http://www.ibroadlink.com/rm/). At present, only RM Pro (referred to as RM2 in the codebase) and A1 sensor platform devices are supported. There is currently no support for the cloud API.
Example use
-----------
Discover available devices on the local network:
```
import broadlink
devices = broadlink.discover(timeout=5)
```
Obtain the authentication key required for further communication:
```
devices[0].auth()
```
Enter learning mode:
```
devices[0].enter_learning()
```
Obtain an IR or RF packet while in learning mode:
```
ir_packet = devices[0].check_data()
```
(This will return None if the device does not have a packet to return)
Send an IR or RF packet:
```
devices[0].send_data(ir_packet)
```
Obtain temperature data from an RM2:
```
devices[0].check_temperature()
```
Obtain sensor data from an A1:
```
data = devices[0].check_sensors()
```
Set power state on a SmartPlug SP2/SP3:
```
devices[0].set_power(True)
```
Check power state on a SmartPlug:
```
state = devices[0].check_power()
```
Set power state for S1 on a SmartPowerStrip MP1:
```
devices[0].set_power(1, True)
```
Check power state on a SmartPowerStrip:
```
state = devices[0].check_power()
```
|