# Simple radio serial communication

I need a way to transfer small amount of data (4 8bit integers + checksum) over wireless.

I'm struggling to find any information dealing with sending serial transmissions over some sort of radio link. Sending is quite simple, but I have no idea how would the receiving end work, as it needs a clock, which can't be provided over radio.

The second thing is I don't really know which technology to choose for the radio. I'm hoping to build something really really simple and cheap. Range wise i'd be happy with a few meters, say 10, in unobstructed space. Transmission speeds of about 10kbit per second would be sufficient, I think at that speed the bandwidth falls within voice range.

I've built a small FM transmitter before but I have no idea how to make both transmitter and the receiver with a fixed tuning that won't drift when the circuit heats up or the antenna changes shape.

Also I realise that this question is a bit vague, and i'm not looking for finished solution, just some pointers on how to address these problems

Thank you

EDIT: I haven't made up my mind yet. The proposed modules are either more expensive or require more work to set up in the configuration that I want. What I think i'm going to do in meantime is build a small FM transmitter with two signal generators, each frequency associated with 0 or 1. I can generate the frequency directly from the MCU on the transmitter end. On the receiver I will do a simple freq filter, that should give me 0 or 1 output, I still have to figure out how to clock it though. In the end total parts will definitely be under £1. i'll try to find some material on data transmissions, maybe there is a better way of doing it.

Thanks for the answer Anindo, I will accept if my attempt ends up futile.

• There are inexpensive modules which handle most of this off the shelf, including modulation which makes clock recovery reasonable, so in effect they are serial in, serial out (but not necessarily reliable/noise immune - some handle checking and retry internally, others leave that to the application). 10K bps is however rather fast for a narrowband voice channel. Most modern solutions don't push modulated data through a voice radio, but rather have radios designed for the specific application with the needed bandwidth. – Chris Stratton Nov 11 '12 at 17:24
• 10Kbps is more of a hope rather than a solid requirement. At the moment id be happy just to transmit/receive anything. So you are saying clock is extracted from the carrier wave ? – Yarek T Nov 11 '12 at 17:43
• I don't really want to use a prebuilt module, as cost increases quite rapidly, I figure receiver has to be pretty simple. Also its a learning experience too – Yarek T Nov 11 '12 at 17:44
• Actually the opposite is true. For low-cost short-range links, you will not manage to beat the price of existing modules, as the low-volume pricing of the parts and materials (let alone your time) will be more than the low cost of the complete module. Build your own if building it (rather than using it) is the goal, or if you are an amateur radio operator seeking to make a longer range or specialized link not available off the shelf. – Chris Stratton Nov 11 '12 at 17:47
• Do you have any examples in mind ? I see that BT things like Xbee are readily available. Is there any material out there that I can look at about this? – Yarek T Nov 11 '12 at 17:50

For data transmission / reception, one of the less expensive options today is a pre-built module around the nRF24L01+ Transceiver IC. These modules typically offer a built-in PCB-trace antenna, 250 Kbps to 2 MBPS bandwidth before error correction, and are tried and tested.

Most important, they save you time in debugging and antenna tuning. After thousands of people have used these modules, which are built on the manufacturer's reference designs after all, most of the kinks are pretty thoroughly ironed out. Also, being able to tap the experience of many others on the internet who have used such a module, counts for a lot when trying to resolve issues.

For instance, this listing on eBay is for a mere US$2.10 with free international shipping. It uses the 2.4 GHz band, which does not need licensing for low power use in most countries. Another alternative is this 433 MHz band transmit / receive pair of modules (just 9.6 Kbps though), in case you specifically want to stay with transmit-only and receive-only designs. US$1.99 for the pair makes it pretty attractive.

Of course, in each case, you could as well build your own module starting from the IC manufacturer's reference design, and thus learn while implementing your radio functionality.

It is unlikely that the price advantage of massive volume production can be beaten, though.

• How would this setup work if I want to have one transmitter and many receivers on the same channel, (the first 8bit integer of the data is device select which will tell the MCU that it should act on this data. I'd like to process this in the MCU rather than in the radio module) ? Is it practical to build the receiver module myself ? – Yarek T Nov 11 '12 at 18:13
• It is feasible, but practicality would be dependent upon factors like how much time you want to spend figuring out antennas, noise, EMI, jitter et cetera. Also, mesh implementations are possible with one transmitter and multiple receivers, using the transceiver modules described. – Anindo Ghosh Nov 11 '12 at 18:19
• Hmm, sounds pretty complicated. Also, mesh networks would add unneeded complexity, as all of the receivers would be in proximity to the transmitter anyway. I'm happy to shift as much cost to the transmitter as possible, but really want the receivers to be as cheap and simple as possible. I'm happy to play around with simple radios but is there any material on what i'm trying to do? Sending serial over radio so i'm not poking in the dark? – Yarek T Nov 11 '12 at 18:23
• Without receive how to know when transmission has error and needs retransmit? – ExcitingProjects Nov 11 '12 at 19:58
• Reliability of transmission isn't really important. Simplicity and cheapness above all – Yarek T Nov 11 '12 at 20:40