Eight
Member level 2
Hey,
I've ordered a bunch of those cheap 433MHz RF modules from ebay to play around with. They're basically split into transmitters and receivers, and are meant for small DIY projects for arduino and the like. Out of curiosity I'm interested to see, if anyone has done some testing on them and what results you've obtained. The modules look the same as the two on the following website:
**broken link removed**
I've attempted to transmit some data between two endpoints, and I've been unable to get them to work past the 2400bps while using ASK-OOK Differential Manchester encoding. Plugging the oscilloscope probe A into the transmitter input and probe B on the receiver output will show the initial and the resulting signal. While the transmitter is getting an ideal square wave signal on the input pin, the receiver will output quite a deformed waveform. It would seem that the output signal is having some 80 microsecond delay before it finally responds to the rising edge of the original signal. It is also trailing the falling edge by some 20µs, giving the resulting peaks a shorter duration for about 60µs on average (independent of the square waveform frequency). The resulting pauses are consequently 60µs longer.
This can be a problem for Manchester encoding where the circuit is supposed to be differing between short and long pulses/pauses. The signal is being transmitted as a series of digital/logical level changes (transitions). Every even transition represent a "clock pulse" and they are always present in the signal. The odd transitions represent data pulses, and are only present when transmitting a digital zero (0 = transition, 1 = no transition).
https://en.wikipedia.org/wiki/Differential_Manchester_encoding
The base time period (the time between a clock and a data pulse) is T and the period between two clock pulses is 2T. Setting the base time T to about 200µs gives us the frequency of about 5000Hz. While only every second pulse counts as data, it means the data rate will be about 5000 / 2 = 2500bps. The receiver now has a problem. Having the base period T of about 200µs and the window of margin of about +/-80µs makes some periods come dangerously close to one another. Now, if we try to increase the data rate even further, some peaks/pauses will begin to overlap, and the receiver will no longer be able to demodulate the signal properly.
For this reason I've increased the base period T to about 256µs, and the window of margin to +/-100µs (T = 256 +/- 100 µs, 2T = 512 +/- 100 µs) which seems to work quite well. I have yet to see how this progresses as the distance between tx/rx modules is increased, as I've only performed the current tests while the modules were close together.
Cheers!
I've ordered a bunch of those cheap 433MHz RF modules from ebay to play around with. They're basically split into transmitters and receivers, and are meant for small DIY projects for arduino and the like. Out of curiosity I'm interested to see, if anyone has done some testing on them and what results you've obtained. The modules look the same as the two on the following website:
**broken link removed**
I've attempted to transmit some data between two endpoints, and I've been unable to get them to work past the 2400bps while using ASK-OOK Differential Manchester encoding. Plugging the oscilloscope probe A into the transmitter input and probe B on the receiver output will show the initial and the resulting signal. While the transmitter is getting an ideal square wave signal on the input pin, the receiver will output quite a deformed waveform. It would seem that the output signal is having some 80 microsecond delay before it finally responds to the rising edge of the original signal. It is also trailing the falling edge by some 20µs, giving the resulting peaks a shorter duration for about 60µs on average (independent of the square waveform frequency). The resulting pauses are consequently 60µs longer.
This can be a problem for Manchester encoding where the circuit is supposed to be differing between short and long pulses/pauses. The signal is being transmitted as a series of digital/logical level changes (transitions). Every even transition represent a "clock pulse" and they are always present in the signal. The odd transitions represent data pulses, and are only present when transmitting a digital zero (0 = transition, 1 = no transition).
https://en.wikipedia.org/wiki/Differential_Manchester_encoding
The base time period (the time between a clock and a data pulse) is T and the period between two clock pulses is 2T. Setting the base time T to about 200µs gives us the frequency of about 5000Hz. While only every second pulse counts as data, it means the data rate will be about 5000 / 2 = 2500bps. The receiver now has a problem. Having the base period T of about 200µs and the window of margin of about +/-80µs makes some periods come dangerously close to one another. Now, if we try to increase the data rate even further, some peaks/pauses will begin to overlap, and the receiver will no longer be able to demodulate the signal properly.
For this reason I've increased the base period T to about 256µs, and the window of margin to +/-100µs (T = 256 +/- 100 µs, 2T = 512 +/- 100 µs) which seems to work quite well. I have yet to see how this progresses as the distance between tx/rx modules is increased, as I've only performed the current tests while the modules were close together.
Cheers!