Fan-tastic Misuse Of Raspberry Pi GPIO
[River] is a big fan of home automation. After moving to a new house, he wanted to use two wirelessly controlled fan lights in his home automation system. The problem was this: although the fans were wireless, their frequency and protocol were incompatible with the home automation system.
The first step was to determine the frequency that the fan remote used. Although FCC public records will reveal the frequency of work, [River] thought it would be faster to use a cheap USB RTL-SDR with the Spektrum program to cover the range of probable frequencies and quickly find that fans were talking 304.2 MHz.
Reverse engineering of the protocol was to be performed. Universal radio hacker is a tool designed to make decrypting unknown wireless protocols relatively painless using RTL-SDR. [River] digitizes pressing a button with it and immediately recognizes it as a simple on / off (OOK). With this knowledge, he digitized the radio commands from all seven buttons and was able to quickly re-design the entire protocol.
[River] wanted to use the Raspberry Pi to get fans into its home automation system, but the Raspberry Pi doesn’t have a 304.2 MHz radio. What it has is user programmable GPIO and rpitx packagewhich converts the GPIO pin into a main radio transmitter. Of course, Pi’s GPIO pins are not long enough to transmit effectively at 304.2 MHz, so [River] add a suitable antenna as well as a low-pass filter to clean the transmitted signal. The rpitx package supports OOK outside the box, so [River] quickly managed to get Pi to control his fan in no time!
If you want to make home automation cheaper, consider this approach use the Raspberry Pi to control some smart plugs at great prices.