help with 433mhz transmitter and reciever concept

Hey guys, please bare with me, this might be a stupid question. I just want to see if I am understanding this correctly.

So I have a transmitter and receiver connected to two different arduino's. One sends a "hello world" and the other displays it on the serial display BUT in Hex form. Is it correct if I say that the transmitter sends bits of data, and the receiver samples the sound waves at specific clock intervals to build a 8bit byte. Which is then displayed as a Hexidecimal?

What would I have to do to display this as human readable text? Would I need to write the software to convert hex into human readable text?

You are using the VirtualWire library? 433 MHz is Rf, not sound. Transmitter transmits a varying waveform, with two slightly varying frequencies, one representing 0, one representing 1, that the receiver receives and outputs a 1 and 0 level; the software looks at the 1s & 0s coming out and decides if the data represents a valid message or not per the Manchester encoding of the signal. If it does, it makes it available as an output from the library. If two different frequencies are not used, then something similar is used that the receiver can differentiate as 1s and 0s.

Yes I am using the virtualwire library. If radio frequency is not sound then what is it? Pressure waves? Is pressure waves not sound?

http://en.wikipedia.org/wiki/Radio_frequency

oscillating electromagnetic waves, vs sound, which is air particles moving back & forth.

Also see here http://en.wikipedia.org/wiki/On-off_keying http://en.wikipedia.org/wiki/Amplitude-shift_keying

"The simplest and most common form of ASK operates as a switch, using the presence of a carrier wave to indicate a binary one and its absence to indicate a binary zero. This type of modulation is called on-off keying, and is used at radio frequencies to transmit Morse code (referred to as continuous wave operation)."

Oh ok kewl thanx, I get that now. Now how do I convert the bytes of data that is sent in hex form to readable text?

Send data type char to start with?
Tx Code:

#include <VirtualWire.h>
void setup()
{
vw_setup(2000); // Bits per sec
}
void loop()
{
const char *msg = "hello";
vw_send((uint8_t *)msg, strlen(msg));
delay(400);
}

Rx code:

#include <VirtualWire.h>
void setup()
{
Serial.begin(9600);
Serial.println("setup");
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;
// Message with a good checksum received, dump HEX
Serial.print("Got: ");
for (i = 0; i < buflen; i++)
{
Serial.print(buf[i], HEX); // leave off ",HEX" here to get char's out?
Serial.print(" ");
}
Serial.println("");
}
}

If I leave out the HEX I get numbers like 102 108 104 109 etc