Interfacing with RF Link Transmitter/Receiver

I am using the RF Link setup from sparkfun ( and along with two Arduino Pro Minis. I first wrote code to have the boards communicate wired and it worked fine (a simple button press on one board and a LED that lights up on the other board). I did this buy using the RX and TX pins and just sending a string. After that I tested the transmitter and receiver by just powering them on, and sending a pulse from the waveform generator and probing both the outputs from the transmitter and receiver. This also worked perfectly with the waves being identical. The problems started when we hooked the receiver into the Arduino. Whenever I hooked the the data pin from the receiver into the RX pin of the Arduino, the signal (which I am are probing) drops to under 1V. Does anyone have any idea why this would be happening. I saw a post on another forum that suggested possibly using two inverters (4049 cmos inverters) or to use the 2400 baud receiver. Someone made a claim that the 4800 baud receiver doesn't have enough "juice" to power an Arduino input. Does anyone have any additional input that they could provide?

I use 2 434 MHz modules to communicate between 2 prominis. Use virtualwire to send the data - it works great It does not use the Rx/Tx pins tho, the document tells you why the USART is not good for driving wireless signals. Wire it up using the standard pins, the examples will run as posted.

I modified it to load an array from keypresses, I can post that here if you need it.

I have tried the VirtualWire code with no success. The problem still remained that probing the receivers data pin with no load on the data pin provided me with great results, but once I connected it to the Arduino, the receiver's data pin dropped from a 5v peak to peak signal to about 500 mV. CrossRoads, do you have the 2400 or 4800 baud receiver. I saw claims that the 4800 baud receivers simply do not work.

Those claims are false! I have this simple transmitter running off LiPo battery, and not much else on the receive side either running off 5V.

Any chance you have the receive data pin set up as an output and are overdriving the receiver? Post your code so we can review it.

I have some problem too…
I fuse transmitter and reciver programs in one - to test them

#include <VirtualWire.h>
#undef int
#undef abs
#undef double
#undef float
#undef round

void setup()
    Serial.begin(9600);	  // Debugging only

/* TX na 12 */
    // Initialise the IO and ISR
    vw_setup(2000);	 // Bits per sec

/* RX na 11 */
    vw_rx_start();	 // Start the receiver PLL running
    Serial.println("RX Start");

void loop()
/** TX DATA **/
    const char *msg = "hello";
    digitalWrite(13, true); // Flash a light to show transmitting
    vw_send((uint8_t *)msg, strlen(msg));
    vw_wait_tx(); // Wait until the whole message is gone
    digitalWrite(13, false);

/** RX DATA **/
    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;

    if (vw_get_message(buf, &buflen)) // Non-blocking
	int i;

	  digitalWrite(10, true); // Flash a light to show received good message
	// Message with a good checksum received, dump it.
	Serial.print("RX: ");

	for (i = 0; i < buflen; i++)
	    Serial.print(buf[i], HEX);
	    Serial.print(" ");
	  digitalWrite(10, false);


TX work fine but RX don’t read any messages. I’m using RF link from seedstudio
Any suggestions ?

Yes - put the Tx on one arduino and the Rx on a different arduino. I have not seen anyone get the Tx & Rx going at the same time on the same arduino.

I tried but nothing ;) I used sketches from library(1.5 Version) examples. Tomorrow I check all digital outputs on hand-made arduino. Maybe 11 or 12 is damaged... who knows.