after looking at the datasheet for the atmega328p, i detemrined that my high voltage needed to be > 3 volts and my low needed to be <1.5 volts, while my reciever was really only giving me a 1 volt signal. with a little help from an opamp, i managed to get that signal in the zone. i had spent hours trying to use a pn2222a to boost the signal, said **** it and brought out the big guns. 3 minutes later i had my rx light on the arduino blinking. of course my communication protocol that i came up with really sucks. im gonna use a shorter frame and a longer preamble and maybe throw on come error checking code on top of it. i kinda tried to go with an 8 byte frame with the first byte being ff and the rest being anything other than ff, which kinda sucks really. i might send a 2 byte preamble with an FF00 signal, then a 1 byte address of the thing im controlling (i havent decided that part yet, right now im just running servos), followed by a 2 byte value and maybe a crc. then when a frame is detected, handle everything on that pass. of course that introduces the problem of missing an update so i may just waste time on the transmitter so the reciever has time to generate a pwm pulse to the servo and get back to reading frames.