Thread Tools
Apr 21, 2013, 10:14 AM
Registered User
Thread OP

Help! Need Encoder & Decoder for 433Mhz RF

Hi all,
I need an 6 or 7 channel encoder and decoeder for 433MHz Wireless RF transmitter Urgently. Please can any one share the schamtics.
here some info :

TX Technical Specifications:

A. Working voltage: 3V~12V

B. Working current: max≤40mA (12V), min≤9mA(3V)

C. Resonance mode: sound wave resonance (SAW)

D. Modulation mode: ASK /OOK

E. Working frequency: 315MHz-433.92MHz, customized frequency is available.

F. Transmission power: 25mW (315MHz at 12V)

G. Frequency error: +150kHz (max)

H. Velocity: ≤10Kbps

I. Self-owned codes: negative

RX Technical Specifications:

A. Working voltage: 5.0VDC +0.5V

B. Working current:≤5.5mA (5.0VDC)

C. Working principle: single chip superregeneration receiving

D. Working method: OOK/ASK

E. Working frequency: 315MHz-433.92MHz, customized frequency is available.

F. Bandwidth: 2MHz (315MHz, having result from testing at lowing the sensitivity 3dBm)

G. Sensitivity: excel 100dBm (50Ω)

H. Transmitting velocity: <9.6Kbps (at 315MHz and -95dBm)
Sign up now
to remove ads between posts
Apr 21, 2013, 11:58 AM
Phil_G's Avatar
There was a similar thread some time ago [here]
Although strictly they should use manchester coding to ensure DC balance, I've used Radiometrix 433 modules on a simple indoor set and found that in practice they work fine on straight analogue PPM. Someone used the same idea on a head-tracker for FPV [LINK], my contribution (which is what he finally went with) starts on page 4. One day I'll get around to doing a proper balanced encoder for these. For 4 or 5 channels I used the excellent Bruce Abbott decoder, for 6 or 7 channels you'd have to come up with something else. Bruce outputs the channel pulses during the input sync so theres not enough time for 6 or 7.
An alternative is to save these modules for another project, and go with Deltang DSM2 modules [LINK] which work out of the box and would give a far superior result IMHO.

Last edited by Phil_G; Apr 21, 2013 at 12:19 PM.
Apr 22, 2013, 06:33 PM
RC beginner
deltang is an excellent solution, for megabucks lottery winners. we are talking over a hundred dollars here for minimum setup. ill also mention from experience that particular uhf pair will get little more than a foot or two of range with standard ppm. as mentioned a balanced input like manchester will increase that by couple orders of magnitude. data rate and error detection/correction are critical too so we are talking a pic or avr micro on each end.
Apr 22, 2013, 08:10 PM
Registered User
Not sure what you mean by 6 channels, six relays or six servos?

The way I used these links was to use a standard RS232 UART. I sent a normal data byte followed by the same byte inverted. This made the data stream mostly balanced. Also by sending the data twice there was a bit of error checking.

I used an Atmel micro with a built in UART so the interface was very simple. I also used 8 relays so the input was 8 buttons and the output was 8 relay drivers. Each bit in the byte controlled one relay so I was only sending one byte of data.

If you were to encode each '1' as '10' and each '0' as '01' you can use a UART to send the data and have nearly Manchester encoding. For example a byte of '11000011' would be encoded as '10100101' and '01011010'

There is a difference between sending continuous data and packets. With continuous data the receiver has to be synced at the start of transmission and re-synced if sync is lost. With packets the receiver has to be synced every packet.

I used continuous data and when no button was pressed the data was '00000000' so the receiver UART had no trouble syncing. The code was very simple, read an 8 bit port and send the data to the UART. At the other end it was read the UART and put the data byte in an output port which controlled 8 power transistors to drive the 8 relays.

With a superhet receiver and 12 volts on the transmitter, the range on ground was several blocks, way more then you could see the robot.

Your picture shows a super regen receiver. They also can get good range. However these cheap transmitters and receivers have to have well designed antennas and a ground plane. The transmitter may not even oscillate without a ground plane.
Last edited by mjsas; Apr 22, 2013 at 08:23 PM.
Apr 27, 2019, 01:49 PM
Phil_G's Avatar
Old thread resurrection!
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 whatsoever.

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 free-runs 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:

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.
I know this is an old thread but maybe these things are still of interest to someone (other than me!)
Last edited by Phil_G; Apr 27, 2019 at 02:52 PM.
Apr 27, 2019, 09:33 PM
Registered User
Thanks for posting this. I've played with these units as well, mostly for sending 8 bit commands to remote devices.

I like the simplicity of your plan.

BTW, what did you create your diagram with? It's well done. I use OmniGraffle to map out this type of work, makes it much easier for me to get my head around.
Apr 28, 2019, 04:57 AM
Phil_G's Avatar
Its Microsoft Visio, which we used at work for network diagrams so its what I'm familiar with - I'd like to learn a proper cad package but as I get older it gets harder to change
I do all my PCBs in Visio too, and its also good for stripboard layouts and schematics:
Last edited by Phil_G; Apr 28, 2019 at 05:12 AM.
Apr 29, 2019, 04:07 PM
Registered User
Here's the graphic I did in OmniGraffle ( I'm mostly on a Mac ). I was figuring out a simple serial pre-amble for the 433 MHz unit & atTiny
for a push-button remote control.

Works well for my limited needs.

Quick Reply

Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Question PPM decode + PWM encode in one PIC AnthonyRC DIY Electronics 16 Nov 20, 2017 06:29 AM
Discussion 6ch diy rc encoder-decoder circuit sahilkit DIY Electronics 80 Apr 12, 2011 08:18 AM
Question PPM decode + PWM encode in one PIC AnthonyRC UAV - Unmanned Aerial Vehicles 31 Mar 04, 2008 05:10 PM
encoders and decoders. gus_452000 Scratchbuilt Indoor and Micro Models 11 Mar 17, 2004 03:26 AM
PPM Encoding/Decoding Keith Watson Power Systems 34 Jun 21, 2001 04:59 AM