View previous topic :: View next topic |
Author |
Message |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
Manchester or not ? |
Posted: Thu Aug 03, 2006 6:20 am |
|
|
Hi Everybody,
I need to transmitt just some data wireless using a cheep radio on 433 Mhz. I don't want to spend to mutch time to write code for manchester.
By your experience is better to use manchester encoding system or shall I use rs232 direct on radio module ?
Thanks, |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
RE: |
Posted: Thu Aug 03, 2006 6:25 am |
|
|
What Radio module are you using ???
thanks
arunb |
|
|
Fabri
Joined: 22 Aug 2005 Posts: 275
|
|
Posted: Thu Aug 03, 2006 6:48 am |
|
|
Hi Arunb,
In tx I use TX-SAW/433 S-Z Aurel
In rx I use RX BC BNK Aurel
This are 2400 baud but I'm not interest in speed.
Tanks,
Fabri |
|
|
Humberto
Joined: 08 Sep 2003 Posts: 1215 Location: Buenos Aires, La Reina del Plata
|
|
|
Guest
|
|
Posted: Thu Aug 03, 2006 8:25 am |
|
|
One other option, is to take advantage of the need for balance characters. If you send a couple of initialisation bytes (say 0xAA 0x55), then the string of data, but for each character, send it once, then send the bitwise 'not' of the byte, the transmission will inherently be balanced. Even more usefully, if you are sending only 7 bit data, and add a parity bit to the byte, then send this, followed by the 'not', if you check the parity on receive, you can reject a byte, if it's parity is wrong, and take the other 'copy', giving one bit error recovery (not efficiently, but it does make 'good use' of the padding data :-).
Best Wishes |
|
|
rnielsen
Joined: 23 Sep 2003 Posts: 852 Location: Utah
|
|
Posted: Thu Aug 03, 2006 8:28 am |
|
|
If you're simply sending data via the serial port you might want to try looking at the XBEE and XBEE Pro at www.maxstream.net . The XBEE is only $19USD and is rather simple to use.
Ronald |
|
|
newguy
Joined: 24 Jun 2004 Posts: 1907
|
|
Posted: Thu Aug 03, 2006 10:31 am |
|
|
Try this first:
http://www.ccsinfo.com/forum/viewtopic.php?t=23953
If that doesn't work, then you can start to balance the signal by sending the inverse of each data byte immediately after each byte.
Anyway, try the code/idea in the link first. Then get fancy if it doesn't. |
|
|
Bill Legge
Joined: 07 Sep 2010 Posts: 24 Location: West Australia
|
Manchester Code and radio links |
Posted: Sun Dec 19, 2010 5:18 pm |
|
|
I would welcome comments/arguements on the business of using Manchester code for radio links. I don't think it is generally necessary because:
1. Most (I would guess very nearly all) 433MHz type radio modules use frequency shift keying. A '1' is represented by a 'tone' and a '0' by a different tone.
2. If the Tx data pin is set permanently 'high' a continuos tone will be transmitted - the output of the Tx is not a 'dc' level.
3. So, 'balancing' is unnecessary for the radio link.
4. Where 'balancing' is important is when data is sent by different 'dc' voltage levels - say along a pair of wires - and the capicatance of the wires distortes the waveform; typically rounding the pulses until the Rx can not detect them.
5. If the wire from the MCU to the Tx or Rx modules are long/longish then go for Manchester. Otherwise don't bother.
Regards Bill Legge _________________ Denmark in West Australia
'Where the forest meets the sea' |
|
|
dbotkin
Joined: 08 Sep 2003 Posts: 197 Location: Omaha NE USA
|
|
Posted: Sun Dec 19, 2010 8:33 pm |
|
|
That depends a great deal on the radio module being used. For one project I worked on, the modules specifically required Manchester or something similar. The transmitter could not be keyed more than a few tens of milliseconds - or maybe the receiver was the issue. It's been a few years, so I don't remember all the specifics, but I do remember it being enough of an issue that I had to write Manchester encode/decode routines from scratch.
Sending Manchester is almost trivially easy. Receiving it is much less so. Once it works, it works very well. I'll see if I can find that code. |
|
|
FvM
Joined: 27 Aug 2008 Posts: 2337 Location: Germany
|
|
Posted: Mon Dec 20, 2010 2:13 am |
|
|
Quote: | So, 'balancing' is unnecessary for the radio link |
The post is basically misunderstanding the operation of FSK receivers. In addition, it should be noted, that most cheap
RF modules are using ASK rather than FSK, but the problem is basically the same.
The transmitter is not sending different tones for '0' and '1' but shifting the carrier frequency. Because the frequency
shift is small related to the achievable absolute frequency accuracy, e.g. 50 - 100 kHz, the receiver doesn't get an
unequivocal '0' or '1' information for a constant level. Practically, the FSK receiver is processing an AC coupled output of
a PLL or similar frequency discriminator. So balancing is highly desirable for an FSK receiver.
I guess, the poster assumes, radio FSK would work similar to an old telephone modem, that can actually detect static '0' and '1' levels.
State-of-the-art RF transceiver chips, e.g. from TI, Analog, Hope RF or performing the Manchester encoding internally,
so you don't have to care about, except for providing a reasonable chip setup. |
|
|
|