This page shows the way to control your lights and other devices in your house by using a simple 433 Mhz transmitter connected to the Raspberry Pi.
By using the cheap switches with dip-switches to set the code.
Supported remote switches switches (which will work with this instruction):
- ELRO AB440 S
- Brennenstuhl RCS 1000 N Comfort
(Not tested: BAT RC-3500-A, Intertechno (Silvercrest) PA3-1000, Vivanco FSS 31000W)
NOTE: The ELRO switches are no longer available.. Order (Amazon/Ebay) and use the "Brennenstuhl RCS 1000 N Comfort" which are exactly the same as the ELRO's !
Hardware:
- Raspberry Pi
- RF-DRA887TX or DRA888TX or DRA889TX DORJI 433MHZ 10/17dBm ASK TRANSMITTER , DIP PACKAGE => http://www.dorji.com/products.php?CateId=36
PIN used on Raspberry Pi:
4 => 5V ----> +5V RF-Transmitter
6 => GND ----> 0V/GND RF-Transmitter
8 => GPIO 14 / TX ----> Data out RF-Transmitter
Software to install:
- apt-get install wiringpi
- apt-get install g++
- Package lights.tar.gz https://www.unix4life.com/downloads/lights.tar.gz
tar xvzf lights.tar.gz
cd lights
Test the wiringpi via: gpio readall
vi all the .cpp files
action.cpp: int pin_out = 15; // Pin out using wiringPi pin numbering scheme (15 = TxD / BCM GPIO 14, see https://projects.drogon.net/raspberry-pi/wiringpi/pins/)
blokker.cpp: int pin_out = 15; // Pin out using wiringPi pin numbering scheme (15 = TxD / BCM GPIO 14, see https://projects.drogon.net/raspberry-pi/wiringpi/pins/)
elro.cpp: int pin_out = 15; // Pin out using wiringPi pin numbering scheme (15 = TxD / BCM GPIO 14, see https://projects.drogon.net/raspberry-pi/wiringpi/pins/)
kaku.cpp: int pin_out = 15; // Pin out using wiringPi pin numbering scheme (15 = TxD / BCM GPIO 14, see https://projects.drogon.net/raspberry-pi/wiringpi/pins/)
g++ -o action action.cpp -I/usr/local/include -L/usr/local/lib -lwiringPi
g++ -o blokker blokker.cpp -I/usr/local/include -L/usr/local/lib -lwiringPi
g++ -o elro elro.cpp -I/usr/local/include -L/usr/local/lib -lwiringPi
g++ -o kaku kaku.cpp -I/usr/local/include -L/usr/local/lib -lwiringPi
READY!!:
Now simply execute the elro (will also work for Brennenstuhl) command with the correct code.
Like:
./elro 24 D on
./elro 24 D off
CODE information:
ON=1
OFF=0
Switch names
1 2 3 4 5 A B C D E
Values:
1 2 4 8 16 A B C D E
Examples:
0 0 0 1 1 0 0 0 0 1 => 24 E
0 1 1 1 1 0 1 0 0 0 => 30 B