Using cheap key-fob 433 transmitter/receiver pairs

Any old or new electronic projects on the go
Post Reply
User avatar
Posts: 383
Joined: 15 Feb 2018, 23:32

Using cheap key-fob 433 transmitter/receiver pairs

Post by Phil_G » 27 Apr 2019, 20:01

Not sure if this has been proposed or tried before, but I've been experimenting with cheap 433
modules again. Just to recap, the problem with these is that the receiver usually employs a simple
slicer which switches the output high or low based on whether its above or below the slice point.
The slice point itself is set from the filtered mark-space ratio of the incoming signal, which of
course on a balanced signal source is exactly midway.
This is the ideal situation for maximum reliability, range and 'cleanliness' of the received signal.
They're intended to be used with symmetrical data, such as Manchester encoding.

That said, a few of us have been using these modules with straight unbalanced PPM with reasonable
results, but I finally got around to trying a 'homebrew' form of balanced-PPM, and here it is - and it
works superby on these modules. This idea may of course have been proposed before, but not that
I'm aware of, certainly I've never seen an actual implementation like this.

Its similar to conventional PPM in that the channel timing is edge to matching-edge, but instead of
having fixed-width PPM pulses (usually of 300uS or so) we share the timing such that for each
channel, the PPM line spends half the channel-time low and half the channel-time high.
Each channel is therefore symmetrical.

The sync period is also shared, half high, half low, and so the entire frame or stream of frames is
always perfectly symmetrical. The performance over cheap 433 modules is astonishing, with good
range, no noise or jitters, instant recovery from loss-of-signal and no syncronisation problems

Creating symmetrical PPM is easy, for each channel value in turn, you set the PPM line, wait half
the channel value, reset the PPM line, wait half the channel value - then move on to the next channel.
Sync is simply an extra-long channel value of 4-6ms or so.

Recovering symmetrical PPM at the receiver is a little more complex, but easy enough.
The timer is configured to free-run at a half-microsecond increment.
We set up an edge-triggered interrupt (ie interrupt-on-change) linked to the PPM input pin.

We discard every alternate edge, so we're working on either just the positive-going edges (or just the
neg, doesnt matter which). We keep track of time between ISR calls. If > 4ms has passed its a sync
pause, and we zero the channel count. Otherwise we populate the current channel with the timer
value and increment onto the next element:

Code: Select all

void read_symmetrical_ppm() {
  static unsigned long counter;
  static byte channel;

  if (PIND & B00001000) { // PPM input on D3. we use only alternate edges, doesnt matter which

    counter = TCNT1;
    TCNT1 = 0;

    if (counter < 8000) {   // if less than 4ms since last edge
      ppm[channel] = (counter / 2); // cos timer has half uS increment

    else channel = 0; // Sync
...and thats it, its really simple!
The diagram shows a typical 4-channel frame but you can get say 7 channels into a 20ms frame.
symmetrical _ppm_idea.jpg

Posts: 202
Joined: 15 Feb 2018, 23:12

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by GarydNB » 28 Apr 2019, 07:57 why didn't I think of that?!

User avatar
Posts: 388
Joined: 17 Feb 2018, 05:26
Location: Temora, NSW. Australia

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by Wayne_H » 28 Apr 2019, 09:53

So, can I fly and make the neighbors garage doors go up & down at the same time :twisted: :shock:

Once a Retrobate, always a Retrobate............ ;)

Posts: 350
Joined: 16 Feb 2018, 06:35

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by Mike_K » 29 Apr 2019, 13:38

Great work Phil, another possible module and frequency to use?

I know next to nothing about 433MHz modules. Do they use spread spectrum or fixed frequencies ie could you fly more than one model at a time without opening every garage door in the neighbourhood? What is the range of these 433MHz modules and receivers, is it enough for "park size" models? If you use a "symmetrical ppm signal", would you use an Arduino as an encoder and decoder? If so, you could use a PCM encoding system that probably would be more secure from interference, albeit it would still need to be a symmetrical signal.

Sorry, a lot of questions :)


Posts: 348
Joined: 16 Feb 2018, 14:11
Location: Warwickshire

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by Martin » 29 Apr 2019, 14:09

Another question. :D What sort of time does the filter that determines the 'half-way decision point' average over? I'm wondering how slow the signal can get before the filter begins to 'average' just the last few pulses rather than the long-term average.

For example, if you used an alternative to your scheme where you flip the entire PPM pulse train inverted X times per second, how low could you make X before you began to experience problems?

User avatar
Posts: 383
Joined: 15 Feb 2018, 23:32

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by Phil_G » 29 Apr 2019, 17:09

I have the datasheet somewhere, I'll have a look Martin. Mine are quite old modules though, I bought them from Radiometrix years ago. I wouldnt use them for even a Park flyer Mike, mine has a superregen receiver and all the transmit modules are on the same specific spot frequency, so they rely on data for separation. So any receiver picks up any transmitter! They're simple AM or FM, nothing fancy. The idea of using symmetrical PPM is just a cheap & cheerful one-off experiment, it all started when a bloke on RCG wanted a very-short-range wireless PPM feed to a head-tracker. I'd been using PPM over 433 keyfob pairs so suggested he try it, which he did and he was quite happy with the results.
For a serious R/C set you'd use a proper packet protocol with a GUID and manchester coded for symmetry.
I wasnt proposing it as a serious alternative to 2.4 but for a toy boat it would be fine (as long as no-one else was on 433!)

Here are the old threads if anyones interested, it was 9 years ago :D ... ?t=1227871 ... ?t=1378157 ... -433Mhz-RF

Reading these reminded me that I'd tried or considered inverting alternate frames, cant remember which :D
Its all just for novelty really, things have moved on in 9 years !!!


User avatar
Posts: 139
Joined: 16 Feb 2018, 11:23
Location: 20 m NE of Amsterdam

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by F2B » 29 Apr 2019, 21:59

Phil, you clever guy.... :D Thumbs up!!!
Wayne_H wrote:
28 Apr 2019, 09:53
So, can I fly and make the neighbors garage doors go up & down at the same time :twisted: :shock:
No, while you come flying round the corner, you'd open the garage's front door, fly in, close the door, open the back door, fly out and close that door behind you......
Now all in one hand.... :lol:
F2B or not to be....

Posts: 133
Joined: 16 Feb 2018, 13:57
Location: South Devon, UK

Re: Using cheap key-fob 433 transmitter/receiver pairs

Post by Pchristy » 30 May 2019, 17:56

One of the reasons that this was never used in the old days was that we were using an AM signal. The problem then is that the carrier is "off" as much as it is "on", leaving the receiver wide open to interference during the "off" period.

It can also play havoc with the AGC on a superhet AM receiver. It was this that led to the demise of the very first digital proportional, the Digicon - designed by Don Mathes and Doug Spreng. It was Frank Hoover at F&M who suggested the "spike-off" system that we use today, and that overcame the problems with the Digicon. Mathes and Speng recalled all the radios for modification, but the damage was done. They sold out to C&S, who produced the Digicon-2, which enjoyed an excellent reputation.

Of course, if you use FM, you overcome all these problems anyway, but back then the regulations didn't permit it and it was seen as being too complex.....

Here endeth the history lesson! :lol:


Post Reply