Remote control based on cheap keyfob modules. Use the buttons as bits to encode up to 15 individual channels. Costs: < €5!

I was playing around with some 433MHz wireless modules which are sold all around, the ones you would use for your garage door, window shutters or opening the gate to enter your premises. I wanted to see if I could use them for controlling my Volumio mediaplayer in my bathroom. These modules have 4 channels, while Volumio needs at least 5 to be completely useful, so that had to be fixed…

I wondered if the modules would be willing to send/receive multiple inputs simultaneously, so one can send a 4-bit nibble and make it possible to extend the number of channels to up to 15. To make a long story short, they do and in my case they do it very reliably.

So I came up with this for the transmitter side: (Please see the Transmitter schematic below)
  • Notice that the fourth bit/button is not used here. It can be used when desired. See the receiver section for details.
  • Inputs from the buttons e.d. are active high. For my application I hooked up 5 capacitive switches, so the transmitter can be operated with wet fingers.
  • The TX-module can handle voltages of up to 18V, but due to the touch sensors I am limited to their max of 5V.
  • I replaced the LED on the TX-module with a small 2-pin header, to connect a led in the casing providing feedback to the user his command has been sent.
  • I used a recovered lipo-cell filled to the brim to power the transmitter. I could not measure the idle current reliably, but specs say it’s < 3µA idle and 10mA while transmitting, so I hope my lipo powers it for years to come!

The receiver side worked out like this: (Please see the Receiver schematic below)
  • Notice that carrying over the bits between the modules is not one-on-one. There is some strange twist in the sequence of the bits. Wiring D1,2,3 from the RX-module to the inputs of the 3-to-8 decoder this way worked for me. VT goes high when any output goes high, so I use it to enable the decoder.
  • Be sure to use the Raspberry Pi's 3V3 pin. Do not use the 5V as the GPIO's are not 5V tolerant!
  • The RX-module has 3 modes of operation. Momentary, Toggle or Interlocked. For my Volumio application I programmed it to Momentary mode, but the Toggle mode can be interesting for some other applications too. The Interlocked mode cannot be used in this application as it only permits one output to be active at any time.
  • Also note that the RX-module can be programmed for multiple TX-modules, so you can have one stationed by the bath and one in the shower controlling the same receiver.
  • To use the fourth input on the TX-module, and extend the receiver to decode channels 8…15 a second 74HC238 must be cascaded. I had no need for this up to now, but I trust one could figure this out when the need arises…

Last note:
Also found some simple 433MHz antenna’s, but for my bathroom the range is quite enough without any antenna’s attached. The maximum distance I can get away from my bathroom is about 8 metres, and it still worked reliably.

I have included some pictures showing my perfboard implementation of the transmitter and receiver, working for many a month now very reliably, keeping me rocking in my bathroom!

Kind regards to all,