Hi all
I have bought a simple pair of Transmitter Receiver.However using virtualWire library though my transmitter seems to work...my receiver(XY-MK-5v) does not receive any message and only prints "setup"...I have tried different libraries but yet its not working and when I use the code using no library,I can receive numbers of 0 or 400 roughly.I really dont know whats the reason.
I have to mention our final intention is to send simple characters like "A","B" etc...
Realy appreciate any help...
Follow is the code im using:
Transmitter:
#include <VirtualWire.h>
void setup()
{
Serial.begin(9600); // Debugging only
Serial.println("setup");
// Initialise the IO and ISR
vw_set_ptt_inverted(true); // Required for DR3100
vw_setup(2000); // Bits per sec
vw_set_tx_pin(7);
}
void loop()
{
const char *msg = "hello";
Serial.println("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);
delay(200);
}
Receiver:
#include <VirtualWire.h>
#define rfReceivePin A0
void setup()
{
Serial.begin(9600); // Debugging only
Serial.println("setup");
// Initialise the IO and ISR
vw_set_ptt_inverted(true); // Required for DR3100
vw_setup(2000); // Bits per sec
vw_rx_start(); // Start the receiver PLL running
}
void loop()
{
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(13, false); // Flash a light to show received good message
// Message with a good checksum received, dump it.
Serial.print("Got: ");
for (i = 0; i < buflen; i++)
{
Serial.print(buf*, HEX);*
- Serial.print(" ");*
- }*
- Serial.println("");*
- digitalWrite(13, true);*
- }*
}