433MHz for Arduino
This package contains several small libraries for Arduino 1.0 which add communication capability with some radio controlled (433MHz / 434MHz) domestic appliances. The libraries can be used for easy home automation using cheap, off-the-shelf components.
- Support for sending and receiving a wide range of common remote switches.
- Support for sending and receiving of certain types of weather station data.
- Interrupt based, which allows for multi-tasking sketches.
- Very light-weight and fast, leaving plenty of room (CPU-time, RAM and Flash) for other tasks.
- Well documented, easy to use, many ready-to-try examples.
There are four libraries:
- RemoteSwitch, for generic remote switches
- NewRemoteSwitch, for KlikAanKlikUit / ClickOnClickOff remotes.
- RemoteSensor, for the weather stations
- InterruptChain, allows for receiving both kind of signals simultaneously.
All libraries come with a readme and examples. The code is well documented. Details of the libraries can be found in the header-files (.h).
Supports sending and receiving signals from and to remote switches, based on PT2262 or M3E ICs.
These radio controlled switches are very common. In the Netherlands they are available under the brand names "KlikAanKlikUit" and "Elro" which are generally available. The stores Blokker and Action sell OEM sets, based on the same protocol.
However, these type of devices seem to be available world-wide. Most are based on the PT2262 or M3E ICs.
433MHzForArduino's RemotSwitch library directly supports:
- KlikAanKlikUit (old system, the middle remote in the left picture)
- "Blokker" devices (the big gray remote in the left picture)
- "Action" devices (the small remote in the left picture)
- "Sacom" devices (right picture, using the "Action" implementation picture at the bottom, look for "Sacom Remote" at amazon).
But many other types are supported as well, as many of them use the same protocol.
Supports sending and receiving signals from and to new A-series KlikAanKlikUit remote switches.
There might be other brands using the same protocol.
Supports Sending and receiving signals from and to weather stations, made by Hideki Electronics.
These weather stations are sold under the brand names Cresta, Mebus, Irox, Honeywell and RST. They have a remote outdoor 3 or 5 channel sensor for temperature and humidity. More expensive variants also support a rain-sensor, anemometer and UV-sensor.
433MHzForArduino's RemoteSensor library directly supports:
- Sending and receiving signals from thermo/hygro sensors
Other data can be transmitted and received; encrypting and decrypting routines are provided.
This library allows to have more than one callback for an interrupt signal. Its purpose here is to allow listening for signals of both type remote switches and weather stations using only one receiver at the same time. You can combine all the functionality of all libraries in one sketch!
However, its use is optional; the libraries can be used stand-alone as well.
To use these libraries, a 433MHz (433.92MHz to be exact) transmitter and/or receiver must be connected to the Arduino:
These modules are very cheap (just a few euro's) and generally available. The 2400bps variants should provide good results, but others will probably work too.
Tips and tricks
There are some tips and tricks you might want to know about!
Instead of using Mercurial's clone feature, you can also download stable code as a Zip file.
Note: as there is a tremendous amount of these kind of devices available, there is no guarantee that these libraries are compatible with your devices. They might use different protocols, timings or operate at different frequencies.
Support this project
If you like this project and/or want to persuade me to buy even more 433MHz stuff I don't actually need but want to investigate, donations are welcome at Bitcoin address: 1Ar433MfHWV7a4yGj3avg3dpTRzHGvT4PP.