Picture of Infrared-RF 433-Bluetooth Arduino Remote
Having seen several tutorials on home automation, I thought it would be cool to take on an all in one remote control box that contained infrared protocols to turn on the tv, rf 433 protocols to control lighting and other household electronics and transmit and receive Bluetooth commands. Most importantly do it on the cheap. I use a web interface to send BT signals from a RPI (this is out of the scope of this tutorial but pretty cool stuff).   I hope you enjoy and maybe spark more ideas. Before we start I have to give several others credit as none of this is original, many thanks folks.
IR Tutorial/Library
Ken Shirriff
Bluetooth and Arduino
Mohannad Rawashdeh
RF Tutorials/Library
Suat Özgür
Ray Wang
Remove these adsRemove these ads by Signing Up

Step 1:

Picture of

Materials used in this project and source

Arduino UNO R3 board with DIP ATmega328P,

Arduino Wireless Bluetooth Transceiver Module Slave 4Pin Serial + DuPont Cable,

Infrared Receiver,

Infrared LED, Old remote

433M receiver module 433MHZ Superregeneration Wireless Transmitter Module,

Jumper Wires, Amazon

Etekcity® 5 Pack Wireless Control Electrical Outlet Switch Socket with 1 Remote,

Sanyo TV with IR Remote, Already

Step 2:

Picture of
I am not going to devote to much time to this I found that Ken Shirriff’s
Has done an excellent job of demonstrating the codes receive process, after you follow his physical and virtual setup loading the IRrecvDump sketch.
Next open Arduinos IDE serial monitor
Point your IR remote to the IR Receiver on the Arduino, press each button from top left to working your way down. It may not need to be said but keep track of your remote button pushes
OUTPUT I GOT LOOKED LIKE THIS “Decoded NEC: 1CE348B7 (32 bits)”
In the serial monitor you will begin to see values appear, once completing with the remote buttons copy these values into a text editor, notepad would be fine,  Using the text editor note each code and save for later, I did this:
diy_bloke10 months ago

Well done, but I am not sure if I fully understand the coding. Maybe you can help me on my way. If I take the data for instance of your first button:

which you split in:

00011101010101 0000000011
You send those seperately to yr pt2262Send routine.
Now do I understand correctly that yr routine goes through these numbers digit by digit (in the loop) and then sends each digit?

#define DELAYSHORT 160
#define DELAYLONG 500

are those the standard times ? or did you also get that from yr analysis?
Why end with a '0'?

Anyway, quite nifty to just make yr own sendroutine. I hadnt even thought of that and was preparing to use the library.
Great work

Raphango1 year ago
Wow Project!
Gonna make it someday! =D