Sending Data over FM

Breaking the Data Link
Posted on January 28 2015 by Fernando Zamora
Arduino with breadboard

So my next hobby project is to transmit data via FM channel from one computer to another. It’s an experiment of sorts. I have the project down on paper. Now let’s see if I can make it work. It goes something like this: Type a message from the computer. Send it out to the Arduino which in turn sends it to an off the shelf FM Transmitter. Setup a FM Radio walkman to receive the message (on a predetermined radio station such as 107.1FM) and hook up the headphones from that radio to another Arduino. The headphones would have to be spliced so that instead of headphones you only have the wires. The wires are then hooked up into another Arduino. That other Arduino will decode the message coming from the headphone jack. If my experiment works I will be sending data over FM channels. Basically instead of receiving sound via the headphone jack we will receive electrical pulses that get decoded to the data that was sent from the transmitter end.

It sounds weird that I would conduct such an experiment when data transmission is perfected science already. In reality I don’t need to do any of this to send data from Arduino to Arduino. Arduino has different shields for data transmission such as WI-FI and Blue Tooth. The problem with those shields is that they operate at a much higher level. In other words they hide many fundamental concepts of data communications. I want to have the control of encoding the data into individual electronic pulses on the transmitting end. And then decode those pulses into bits, bytes and eventually alphanumeric characters. This, I think, will give me a better understanding of data transmission at the lower layers, namely the physical layer and the data link layers. There are many concepts that have to take place at these layers like encoding, decoding, error detection and error correction and establishing a mini protocol to determine the beginning of the message and the end of the message.

My experiment consists of the following devices:

  • A typical off the shelve FM Transmitter such as the ones used in lieu of an aux cable to listen to your iPod in your car.
  • An off the shelf FM Radio to receive the signal.
  • Two Arduinos to establish the communication between the two.
  • Possibly two computers to display the data on each of the transmittal and reception ends.

Let’s see if I can make this work. I will be posting a video when I do make it work.

Leave a Reply

Post Comment

Connect With Us

Recent Posts

A Guide for Learning Design Patterns

July 28th 2016 by Fernando Zamora If you’ve been writing code for more than a year, you might have h...

Read More

Using UML to Analyze Legacy Code

June 30th 2016 by Fernando Zamora For every programmer out there creating brand new code and working...

Read More

Python vs. Other Languages

April 29th 2016 by Fernando Zamora For the last two months or so my fellow McLane Advanced Technolog...

Read More

Naming Your Adapter When Implementing the Adapter Pattern

October 19th 2015 by Fernando Zamora At some point in your project you may need to use a third party...

Read More

10 Methods to Help You Debug Legacy Code

September 24th 2015 by Fernando Zamora A large majority of the work we do in our project is to fix r...

Read More