I'm relatively new to the Arduino thing, so pardon me if this has been covered before.
I have written a very simple protocol for digital communication between arduinos, basically , a 1 bit is a HIGH pulse of a certain duration, and 0 is a HIGH pulse of another duration, with LOW states in between. Big deal you may say, but I've have been sending messages from one Arduino to another via connection between their digital pins.
I'm now interested in converting this to radio communication, for sending say photographs or sensor data from one to another. The range I need is 1 km max. I live in a sparsely populated area, so interference to other users shouldn't be a factor.
What I need then, is a design for a simple transmitter/receiver circuit, that is either transmitting or not, with the Arduino controlling turning the transmitter on and off for a duration to time the pulses, and the receiver able to detect the duration of the pulses.
It's obviously like a morse code system, but these haven't been used for years, so what's the current state of the art in this area ?
Would this system be like what is used in R/C cars aircraft etc ?
Modulating a transmitter by turning it on or off is not so good if a machine is receiving it. Normally you are better off modulating the RF by frequency modulation, amplitude modulation or a mixture of both. The sort of modulation you describe is a 100% amplitude modulation and this generates lots of harmonics all over the band and is generally frowned upon. In general about 25% is the maximum you use. That is 25% for a zero and 100% for a one. However, when you transmit a zero you are transmitting less power and so the receiver will pick up noise here.
The big crunch is how fast you plan to do this, the faster it is the more bandwidth you will take up. Generally you are not permitted to build transmitters without a license, even on the license free bands. A ham license is probably the easiest to get hold of.
Hi, You may have been doing what I am trying to do.. I'm trying to send via transmitter linked to receiver pulses or blinking led one to six pulses The transmitter seems to be working and the receiver is showing the count 1 to 255 but not in any order. There are a lot of zero's with random numbers randomly. I would like to change the code so that I can send an on/off signal to a led or buzzer one to six times. Is this something you can help me with?
I agree with the other reply that turning the transmitt on and off is not the best way of communicating for your question.
Regards, Harvey
hsteve:
Would it be practicable to modify a Model aircraft radio controller to do what I want ?
It would be practical but possibly not legal. Also the bandwidth in a model aircraft radio controller is very small so that will restrict the speed of messages you can send.
There are any number of ready built type approved radio modules you could use for this. Most suppliers stock them, this is one such list.
or here
They will come with information on how fast you can modulate them.
The Xbee is a much more complex thing. There is no need to do the modulation you just talk to it in serial and it sends packets of data. It checks it has been received and requests a resend if not.
Grumpy_Mike:
The Xbee is a much more complex thing. There is no need to do the modulation you just talk to it in serial and it sends packets of data. It checks it has been received and requests a resend if not.
That sounds like it would save me a lot of hassle. I'll investigate further. I presume there are a lot of tutorials around for it.
There seems a confusing array of xbee modules available, and I've no idea which would be suitable for my application. Any suggestions on best xBee devices (transmit/receive) ? Plug and play preferred (minimum of soldering or alteration), ease of programming.