Remote control for various home appliances.
Item | Value | Description |
---|---|---|
Frequency | 433.42 MHz | |
Symbol-rate | 775 Bd | |
Encoding | Manchester | rising edge = 1, falling edge = 0 |
Frame including leading Wake-up pulse:
Sync pattern and start of frame:
Decoding of frame data according to Somfy Smoove Origin RTS Protocol
sniff.py
- a command-line tool to read and decode hand-held transmitter data using my python RFM69-library
$ python sniff.py
Scanning... Press Ctrl-C to abort
Clock Sync: [ 2520. 2625. 2495. 2615.] 640
Frame: 0xA6 0x16 0x11 0x46 0xBD 0x5F 0x36
Control: 0x01
Checksum: ok
Address: BD 5F 36
Rolling Code: 11 46
The RFM69 Data-Pin looks like this:
To set up your own transmitter, follow the pairing-process as follows:
- optional: create and adapt
config.json
to set a custom address for the new transmitter - long-press the PROG-button on a paired remote until the device (e.g. a shade) jogs
- transmit the
prog
command withtransmitter.py
. The device will jog again indicating that a new transmitter is paired - send regular commands
$ sudo python3 transmitter.py down
key: 0xA0, ctrl: 0x04, rolling code: 0x03, address: 0x365240
cksum: 8
Data: 0xA3 0x48 0x00 0x03 0x40 0x52 0x36
Frame: 0xA3 0xEB 0xEB 0xE8 0xA8 0xFA 0xCC
The rolling code is automatically incremented and saved to config.json
.