These wireless transmitters work with our 315MHz receivers. They can easily fit into a breadboard and work well with microcontrollers to create a very simple wireless data link. Since these are only transmitters, they will only work communicating data one-way, you would need two pairs (of different frequencies) to act as a transmitter/receiver pair.
Note: These modules are indiscriminate and will receive a fair amount of noise. Both the transmitter and receiver work at common frequencies and don’t have IDs. Therefore, a method of filtering this noise and pairing transmitter and receiver will be necessary. The example code below shows such an example for basic operation. Please refer to the example code and links below for ways to accomplish a robust wireless data link.
To ensure that the RF links are working, we recommend trying to get the RF links working with our example code first. However, I have tested the RF modules with the VirtualWire librarie and Arduino 1.0.6 IDE software. I was able to get it working with this library => VirtualWire 1.20. This library worked with both Arduino 0023 and Arduino 1.0.6.
The example code used with the an Arduino microcontroller explains the setup for each RF Link. This is the setup which will work with either RF Link frequency band.
Transmitter Code (4 pin module)
Pin 3 of your Arduino should connect to pin 2 of your RF Link Transmitter 315MHz. Button is connected to the transmitting Arduino on pin 8 separate from the RF Link Transmitter. When a button is pressed on the transmitter, the corresponding LED should light up on the receiver and a character will be sent.
Receiver Code (8 pin module)
Pin 2 of your Arduino should connect to pin 2 of your RF Link Receiver 315MHz. When the button is pressed from the transmitter side, the corresponding LED on this side will light up on pin 8. One thing to note is that the associated LED will not light up on the receiver end if you do not have the associated character to check if it is what is received. An example is if you send a string of characters “Pin 4,” the receiver LED will not light up when the characters “Pin ” is sent. It will only light up when it sees the number “4”.
Note 1: It seems like when the receiver code is compiled with Arduino 0023 that the characters sent show a character and a space right after it in the serial monitor. When compiled with Arduino 1.0.6, you get an hex value and a space that is related to the ASCII character that was sent. You can verify it by checking the ASCII table and it will show that the hexadecimal value that was sent is indeed the character that was sent from the receiver. This has something to do with the shift in versions from Arduino’s 0023 to the Arduino 1.0 and above. Something was modified in the compiler or how a function was defined in the Arduino IDE.
Note 2: The RF Links are cheap wireless modules so you might get some intermittent data transmission/ corrupt data after a certain distance. They have a lot of noise. A better and more secure option might be to use the XBee Series 1 Wireless Modules.
Note 3: I am aware that the Virtual Library is EOL and that the RadioHead library supersedes it. I found out in the middle of updating the code. You shouldn’t have a problem with the library though even though it is EOL.
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 2 ratings:
This was purchased as a pair: the RF Link Transmitter - 315MHz and RF Link Receiver - 4800bps (315MHz). When placed on two boards, and gave ground to the GND pins, 5V to the VCC pins, and data on the transmitter pins, I was unable to find out which pin on the receiver to use to read in via my Arduino. I followed several tutorials but none of them had the same transmitter or receiver as this. It was labelled as the same, but the pictures in the video didn’t match. Nor did the pinouts. So who knows. However, I tried both pins on the receiver. When giving 5V to the transmitter data pin, nothing changed from what came out of the data pins of the receiver. I then tried soldering on 13cm wires to the antenna pins, per several sites, coiling the antenna on the receiver and keeping it straight on the transmitter. Still no change. All I read was 1.32V on the receiver whether the transmitter had 5V on it’s data or 0V. The datasheets offered no help. I wanted to try VirtualWire, but if the primary analog voltage functions did nothing, VirtualWire wouldn’t even be worth a test. However, I did try it, just in case. No surprise, it didn’t work either.
So, in short, I understand the transmitter and receiver is only a $7 purchase, plus shipping when put together, but I would at least expect them to work somewhat, rather than not at all. It is a waste of time. Buy more expensive ones elsewhere that has solid documentation.
Sorry to hear that neither this nor the receiver seem to be working for you. I would suggest getting in touch with our tech support team, they should be able to help you resolve these issues.
I"m a 31 year old EE student with clinically diagnosed ADD. This product was purchased to build an RF sniffer (see following link).
I did, like other users, have a difficult time understanding how to hook this device up and determine whether or not it was working. I"m sure for more experienced users it wasn’t too difficult, but for me it was.
I would suggest a systematic approach ( step 1 do this, step 2 do that, open serial monitor and expect to see something like this….) for initial link setup. The documentation on the product’s website helped but it was really the following website that allowed me to get up and running.
The KLP Tutorial mentions signal conditioning and filtering to improve signal TX and RX but doesn’t reference or provide outside tech sheets or examples (LPF, HPF, threshold detector/limiter circuitry) . I would have liked to have been provided with a link or appendix with an example of how to do that.
All said and done, the overall process to get my RF link up and running allowed me to learn a lot about ASK and signal conditioning. I guess that’s the point of giving just enough information- to invoke learning. However, for those like myself who have a deep passion for EE but struggle to learn in a timely manner, the above suggestions would not only invoke learning but keep me coming back knowing that SparkFun is truly a one stop shop for any project.